Inkjet compilers

class pyvcad_compilers.GCVFExporter
__init__(self: pyvcad_compilers.pyvcad_compilers.GCVFExporter, root: pyvcad.pyvcad.Node, voxel_size: pyvcad.pyvcad.Vec3, material_defs: pyvcad.pyvcad.MaterialDefs, filename: str, liquid_keep_out: bool, liquid_keep_out_distance: SupportsFloat) None

Constructor. Creates a GCVFExporter object.

Parameters:
  • root (Node) – The root node of the tree.

  • voxel_size (vec3) – The size of the voxel.

  • material_defs (MaterialDefs) – The materials definitions.

  • filename (str) – The output filename.

  • liquid_keep_out (bool) – If true, applies liquid keep out.

  • liquid_keep_out_distance (double) – The liquid keep out distance.

compile(self: pyvcad_compilers.pyvcad_compilers.GCVFExporter) None

Compiles the export using the GCVF exporter.

setProgressCallback(self: pyvcad_compilers.pyvcad_compilers.GCVFExporter, callback: object) None

Sets the progress callback function.

Parameters:

progress_callback (function) – The progress callback that receives (phase, progress).

class pyvcad_compilers.DirectMaterialCompiler
__init__(self: pyvcad_compilers.pyvcad_compilers.DirectMaterialCompiler, root: pyvcad.pyvcad.Node, voxel_size: pyvcad.pyvcad.Vec3, material_defs: pyvcad.pyvcad.MaterialDefs, output_directory: str, file_prefix: str, liquid_keep_out: bool, liquid_keep_out_distance: SupportsFloat) None

liquid_keep_out (bool): If true, the liquid keep out region will be used. Defaults to false. liquid_keep_out_distance (double): The distance of the liquid keep out region.

compile(self: pyvcad_compilers.pyvcad_compilers.DirectMaterialCompiler) None

Compiles the material.

setProgressCallback(self: pyvcad_compilers.pyvcad_compilers.DirectMaterialCompiler, callback: object) None

Sets the progress callback function.

Parameters:

progress_callback (function) – The progress callback function that takes a single float argument (0.0 to 1.0).

class pyvcad_compilers.MyersonCompiler
__init__(self: pyvcad_compilers.pyvcad_compilers.MyersonCompiler, layer_height: SupportsFloat, x_dpi: SupportsInt, y_dpi: SupportsInt, taper_angle_deg: SupportsFloat, extra_width: SupportsFloat, output_path: str, root: pyvcad.pyvcad.Node, material_defs: pyvcad.pyvcad.MaterialDefs) None

Constructor. Creates a MyersonCompiler object.

Parameters:
  • layer_height (float) – Layer height in mm.

  • x_dpi (int) – X resolution in dots per inch.

  • y_dpi (int) – Y resolution in dots per inch.

  • taper_angle_deg (float) – Taper angle in degrees.

  • extra_width (float) – Extra width in mm.

  • output_path (str) – The output directory path.

  • root (Node) – The root node of the tree.

  • material_defs (MaterialDefs) – The material definitions.

compile(self: pyvcad_compilers.pyvcad_compilers.MyersonCompiler) None

Compiles the Myerson inkjet output.

setProgressCallback(self: pyvcad_compilers.pyvcad_compilers.MyersonCompiler, callback: object) None

Sets the progress callback function.

Parameters:

callback (function) – The progress callback function that takes a single float argument (0.0 to 1.0).