Compilers — B-rep

class MeshCompiler
#include <mesh_compiler.h>

Public Functions

void compile()
MeshCompiler(const std::shared_ptr<Node> &root, vec3 voxel_size, const std::string &output_directory, const std::string &file_prefix, size_t num_iso_slices)
void setProgressCallback(const std::function<void(double)> &progress_callback)

Private Functions

double compute_total_progress(double local_progress)
std::pair<vtkSmartPointer<vtkImageData>, vtkSmartPointer<vtkImageData>> GenerateImageData(const std::shared_ptr<Node> &root, const glm::vec3 &min, const glm::vec3 &max, const glm::vec3 &voxel_size, double lower_material_iso, double upper_material_iso)

Private Members

std::string m_file_prefix
std::vector<std::pair<double, double>> m_iso_ranges
size_t m_iso_ranges_completed = 0
size_t m_num_iso_slices
std::string m_output_directory
std::function<void(double)> m_progress_callback = nullptr
std::shared_ptr<Node> m_root
vec3 m_voxel_size