Skip to content

Disruptive Oak

Compare
Choose a tag to compare
@sshirokov sshirokov released this 10 Dec 23:44
· 140 commits to master since this release

This release adds the mesh_t based C API which decouples the core
concern of the library from the STL-specific parts of the code. The old API exists, but some
signatures have changed.

Under the mesh_t API files are read into a generic mesh_t type capable of participating in BSP operations and interrogation.

Reading is accomplished with the mesh_t* mesh_read_file(char *file_path) function, and
writing with mesh->write(mesh, file_path, "STL") regardless of backing implementation.

As a result this release changes the Ruby API completely.

  • Removes CSG::STLObject
  • Removes CSG::Solid.to_stl
  • Removes a CSG::stl_*
  • Adds CSG::Native::Mesh
  • Changes how a Solid writes
  • Changes how a Solid functions internally

See csgtool.rb for details. And the new tests/mesh.c for details on the mesh_t C API.