diff --git a/latest/.doctrees/environment.pickle b/latest/.doctrees/environment.pickle index b13dcc71..576e1df3 100644 Binary files a/latest/.doctrees/environment.pickle and b/latest/.doctrees/environment.pickle differ diff --git a/latest/.doctrees/index.doctree b/latest/.doctrees/index.doctree index 4c7e1eed..e4e920e2 100644 Binary files a/latest/.doctrees/index.doctree and b/latest/.doctrees/index.doctree differ diff --git a/latest/.doctrees/installation.doctree b/latest/.doctrees/installation.doctree index dde7ca3c..12832d0c 100644 Binary files a/latest/.doctrees/installation.doctree and b/latest/.doctrees/installation.doctree differ diff --git a/latest/_modules/compas_slicer/slicers/base_slicer.html b/latest/_modules/compas_slicer/slicers/base_slicer.html index 2bc77bd0..d17c8782 100644 --- a/latest/_modules/compas_slicer/slicers/base_slicer.html +++ b/latest/_modules/compas_slicer/slicers/base_slicer.html @@ -131,12 +131,10 @@

Source code for compas_slicer.slicers.base_slicer

import numpy as np from compas.datastructures import Mesh from compas_slicer.utilities import utils -from compas.geometry import Polyline from compas_slicer.geometry import Layer, VerticalLayer from compas_slicer.post_processing import seams_align from compas_slicer.post_processing import unify_paths_orientation import logging -import copy from abc import abstractmethod from compas.datastructures import mesh_bounding_box from compas.geometry import distance_point_point_sqrd diff --git a/latest/index.html b/latest/index.html index c11678f0..ed4b783f 100644 --- a/latest/index.html +++ b/latest/index.html @@ -130,11 +130,10 @@

Overview

_images/compas_slicer_main_image_small.jpg
-
COMPAS_SLICER is a slicing package for FDM 3D Printing using COMPAS.

The package builds upon

+
COMPAS_SLICER is a slicing package for FDM 3D Printing using COMPAS.

The package builds upon COMPAS, an open-source Python-based framework for

-

COMPAS, an open-source Python-based framework for -collaboration and research in architecture, engineering and digital fabrication.

+

collaboration and research in architecture, engineering and digital fabrication.

Note

COMPAS_SLICER is a collaborative research project and therefore could diff --git a/latest/installation.html b/latest/installation.html index 07257c9f..09ad18bc 100644 --- a/latest/installation.html +++ b/latest/installation.html @@ -143,12 +143,6 @@

Step 1: Install compas slicer

-
conda install -c conda-forge igl
-
-
-
conda install -c conda-forge compas_cgal
diff --git a/latest/output.json b/latest/output.json
index ae9c5ea0..ee6c4e97 100644
--- a/latest/output.json
+++ b/latest/output.json
@@ -122,15 +122,15 @@
 {"filename": "api/utilities.rst", "lineno": 1, "status": "unchecked", "code": 0, "uri": "#compas_slicer.utilities.point_list_to_dict", "info": ""}
 {"filename": "api/utilities.rst", "lineno": 1, "status": "unchecked", "code": 0, "uri": "#compas_slicer.utilities.save_to_json", "info": ""}
 {"filename": "api/utilities.rst", "lineno": 1, "status": "unchecked", "code": 0, "uri": "#compas_slicer.utilities.smooth_vectors", "info": ""}
-{"filename": "index.rst", "lineno": 12, "status": "working", "code": 0, "uri": "https://compas.dev/", "info": ""}
-{"filename": "api/generated/compas_slicer.geometry.Path.rst", "lineno": 4, "status": "working", "code": 0, "uri": "https://compas.dev/compas/latest/api/generated/compas.geometry.Point.html#compas.geometry.Point", "info": ""}
+{"filename": "index.rst", "lineno": 11, "status": "working", "code": 0, "uri": "https://compas.dev/", "info": ""}
 {"filename": "api/generated/compas_slicer.geometry.PrintPoint.rst", "lineno": 7, "status": "working", "code": 0, "uri": "https://compas.dev/compas/latest/api/generated/compas.geometry.Vector.html#compas.geometry.Vector", "info": ""}
 {"filename": "api/generated/compas_slicer.geometry.PrintPoint.rst", "lineno": 11, "status": "working", "code": 0, "uri": "https://compas.dev/compas/latest/api/generated/compas.geometry.Frame.html#compas.geometry.Frame", "info": ""}
+{"filename": "api/generated/compas_slicer.geometry.Path.rst", "lineno": 4, "status": "working", "code": 0, "uri": "https://compas.dev/compas/latest/api/generated/compas.geometry.Point.html#compas.geometry.Point", "info": ""}
 {"filename": "api/generated/compas_slicer.pre_processing.get_mid_pt_base.rst", "lineno": 3, "status": "working", "code": 0, "uri": "https://compas.dev/compas/latest/api/compas.datastructures.Mesh.html#compas.datastructures.Mesh", "info": ""}
 {"filename": "api/generated/compas_slicer.geometry.Layer.rst", "lineno": 1, "status": "working", "code": 0, "uri": "https://docs.python.org/3/library/functions.html#object", "info": ""}
+{"filename": "installation.rst", "lineno": 110, "status": "working", "code": 0, "uri": "https://stackoverflow.com/questions/66174862/import-error-cant-import-name-gcd-from-fractions", "info": ""}
 {"filename": "api/generated/compas_slicer.post_processing.simplify_paths_rdp.rst", "lineno": 1, "status": "working", "code": 0, "uri": "https://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm", "info": ""}
-{"filename": "installation.rst", "lineno": 117, "status": "working", "code": 0, "uri": "https://stackoverflow.com/questions/66174862/import-error-cant-import-name-gcd-from-fractions", "info": ""}
-{"filename": "installation.rst", "lineno": 92, "status": "working", "code": 0, "uri": "https://www.scivision.dev/python-windows-visual-c-14-required/", "info": ""}
+{"filename": "installation.rst", "lineno": 85, "status": "working", "code": 0, "uri": "https://www.scivision.dev/python-windows-visual-c-14-required/", "info": ""}
+{"filename": "index.rst", "lineno": 16, "status": "working", "code": 0, "uri": "https://github.com/compas-dev/compas_slicer/issues", "info": ""}
 {"filename": "installation.rst", "lineno": 18, "status": "redirected", "code": 302, "uri": "https://conda.io/docs/", "info": "https://conda.io/projects/conda/en/latest/"}
-{"filename": "index.rst", "lineno": 17, "status": "working", "code": 0, "uri": "https://github.com/compas-dev/compas_slicer/issues", "info": ""}
 {"filename": "examples/02_curved_slicing_simple.rst", "lineno": 10, "status": "redirected", "code": 302, "uri": "https://dl.acm.org/doi/fullHtml/10.1145/3424630.3425408", "info": "https://dl.acm.org/doi/abs/10.1145/3424630.3425408"}
diff --git a/latest/searchindex.js b/latest/searchindex.js
index 477dfcf2..256769d4 100644
--- a/latest/searchindex.js
+++ b/latest/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["api", "api/compas_slicer", "api/generated/compas_slicer.geometry.Layer", "api/generated/compas_slicer.geometry.Layer.__init__", "api/generated/compas_slicer.geometry.Layer.calculate_z_bounds", "api/generated/compas_slicer.geometry.Layer.from_data", "api/generated/compas_slicer.geometry.Layer.to_data", "api/generated/compas_slicer.geometry.Path", "api/generated/compas_slicer.geometry.Path.__init__", "api/generated/compas_slicer.geometry.Path.from_data", "api/generated/compas_slicer.geometry.Path.to_data", "api/generated/compas_slicer.geometry.PrintPoint", "api/generated/compas_slicer.geometry.PrintPoint.__init__", "api/generated/compas_slicer.geometry.PrintPoint.from_data", "api/generated/compas_slicer.geometry.PrintPoint.get_frame", "api/generated/compas_slicer.geometry.PrintPoint.to_data", "api/generated/compas_slicer.post_processing.generate_brim", "api/generated/compas_slicer.post_processing.generate_raft", "api/generated/compas_slicer.post_processing.reorder_vertical_layers", "api/generated/compas_slicer.post_processing.seams_align", "api/generated/compas_slicer.post_processing.seams_smooth", "api/generated/compas_slicer.post_processing.simplify_paths_rdp", "api/generated/compas_slicer.post_processing.sort_into_vertical_layers", "api/generated/compas_slicer.post_processing.sort_paths_minimum_travel_time", "api/generated/compas_slicer.post_processing.spiralize_contours", "api/generated/compas_slicer.post_processing.zig_zag_open_paths", "api/generated/compas_slicer.pre_processing.get_mid_pt_base", "api/generated/compas_slicer.pre_processing.move_mesh_to_point", "api/generated/compas_slicer.print_organization.BasePrintOrganizer", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.__init__", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.create_printpoints", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_neighboring_items", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_up_vector", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoints_attribute", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.number_of_paths_on_layer", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_gcode", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_nested_printpoints_dict", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_printpoints_dict", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printout_info", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_indices_iterator", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_iterator", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.remove_duplicate_points_in_path", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.__init__", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_base_boundaries", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_printpoints", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_layer_ppts", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_neighboring_items", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_up_vector", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoints_attribute", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.number_of_paths_on_layer", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_gcode", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_nested_printpoints_dict", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_printpoints_dict", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printout_info", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_indices_iterator", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_iterator", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.remove_duplicate_points_in_path", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.topological_sorting", "api/generated/compas_slicer.print_organization.add_safety_printpoints", "api/generated/compas_slicer.print_organization.override_extruder_toggle", "api/generated/compas_slicer.print_organization.override_wait_time", "api/generated/compas_slicer.print_organization.set_blend_radius", "api/generated/compas_slicer.print_organization.set_extruder_toggle", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_overhang", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_range", "api/generated/compas_slicer.print_organization.set_linear_velocity_constant", "api/generated/compas_slicer.print_organization.set_linear_velocity_per_layer", "api/generated/compas_slicer.print_organization.set_wait_time_based_on_extruder_toggle", "api/generated/compas_slicer.print_organization.set_wait_time_on_sharp_corners", "api/generated/compas_slicer.slicers.BaseSlicer", "api/generated/compas_slicer.slicers.BaseSlicer.__init__", "api/generated/compas_slicer.slicers.BaseSlicer.close_paths", "api/generated/compas_slicer.slicers.BaseSlicer.find_vertical_layers_with_first_path_on_base", "api/generated/compas_slicer.slicers.BaseSlicer.from_data", "api/generated/compas_slicer.slicers.BaseSlicer.generate_paths", "api/generated/compas_slicer.slicers.BaseSlicer.get_layers_dict", "api/generated/compas_slicer.slicers.BaseSlicer.post_processing", "api/generated/compas_slicer.slicers.BaseSlicer.printout_info", "api/generated/compas_slicer.slicers.BaseSlicer.remove_invalid_paths_and_layers", "api/generated/compas_slicer.slicers.BaseSlicer.slice_model", "api/generated/compas_slicer.slicers.BaseSlicer.to_data", "api/generated/compas_slicer.slicers.BaseSlicer.to_json", "api/generated/compas_slicer.slicers.InterpolationSlicer", "api/generated/compas_slicer.slicers.InterpolationSlicer.__init__", "api/generated/compas_slicer.slicers.InterpolationSlicer.close_paths", "api/generated/compas_slicer.slicers.InterpolationSlicer.find_vertical_layers_with_first_path_on_base", "api/generated/compas_slicer.slicers.InterpolationSlicer.from_data", "api/generated/compas_slicer.slicers.InterpolationSlicer.generate_paths", "api/generated/compas_slicer.slicers.InterpolationSlicer.get_layers_dict", "api/generated/compas_slicer.slicers.InterpolationSlicer.post_processing", "api/generated/compas_slicer.slicers.InterpolationSlicer.printout_info", "api/generated/compas_slicer.slicers.InterpolationSlicer.remove_invalid_paths_and_layers", "api/generated/compas_slicer.slicers.InterpolationSlicer.slice_model", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_data", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_json", "api/generated/compas_slicer.slicers.PlanarSlicer", "api/generated/compas_slicer.slicers.PlanarSlicer.__init__", "api/generated/compas_slicer.slicers.PlanarSlicer.close_paths", "api/generated/compas_slicer.slicers.PlanarSlicer.find_vertical_layers_with_first_path_on_base", "api/generated/compas_slicer.slicers.PlanarSlicer.from_data", "api/generated/compas_slicer.slicers.PlanarSlicer.generate_paths", "api/generated/compas_slicer.slicers.PlanarSlicer.get_layers_dict", "api/generated/compas_slicer.slicers.PlanarSlicer.post_processing", "api/generated/compas_slicer.slicers.PlanarSlicer.printout_info", "api/generated/compas_slicer.slicers.PlanarSlicer.remove_invalid_paths_and_layers", "api/generated/compas_slicer.slicers.PlanarSlicer.slice_model", "api/generated/compas_slicer.slicers.PlanarSlicer.to_data", "api/generated/compas_slicer.slicers.PlanarSlicer.to_json", "api/generated/compas_slicer.utilities.flattened_list_of_dictionary", "api/generated/compas_slicer.utilities.get_closest_mesh_normal_to_pt", "api/generated/compas_slicer.utilities.get_closest_pt", "api/generated/compas_slicer.utilities.get_closest_pt_index", "api/generated/compas_slicer.utilities.get_dict_key_from_value", "api/generated/compas_slicer.utilities.get_mesh_vertex_coords_with_attribute", "api/generated/compas_slicer.utilities.get_normal_of_path_on_xy_plane", "api/generated/compas_slicer.utilities.interrupt", "api/generated/compas_slicer.utilities.load_from_json", "api/generated/compas_slicer.utilities.plot_networkx_graph", "api/generated/compas_slicer.utilities.point_list_to_dict", "api/generated/compas_slicer.utilities.save_to_json", "api/generated/compas_slicer.utilities.smooth_vectors", "api/geometry", "api/post_processing", "api/pre_processing", "api/print_organization", "api/slicers", "api/utilities", "citing", "devguide", "examples", "examples/01_planar_slicing_simple", "examples/02_curved_slicing_simple", "examples/03_planar_slicing_vertical_sorting", "examples/04_gcode_generation", "examples/05_non_planar_slicing_on_custom_base", "examples/06_attributes_transfer", "index", "installation", "license", "tutorials", "tutorials/01_introduction", "tutorials/02_grasshopper_visualization"], "filenames": ["api.rst", "api/compas_slicer.rst", "api/generated/compas_slicer.geometry.Layer.rst", "api/generated/compas_slicer.geometry.Layer.__init__.rst", "api/generated/compas_slicer.geometry.Layer.calculate_z_bounds.rst", "api/generated/compas_slicer.geometry.Layer.from_data.rst", "api/generated/compas_slicer.geometry.Layer.to_data.rst", "api/generated/compas_slicer.geometry.Path.rst", "api/generated/compas_slicer.geometry.Path.__init__.rst", "api/generated/compas_slicer.geometry.Path.from_data.rst", "api/generated/compas_slicer.geometry.Path.to_data.rst", "api/generated/compas_slicer.geometry.PrintPoint.rst", "api/generated/compas_slicer.geometry.PrintPoint.__init__.rst", "api/generated/compas_slicer.geometry.PrintPoint.from_data.rst", "api/generated/compas_slicer.geometry.PrintPoint.get_frame.rst", "api/generated/compas_slicer.geometry.PrintPoint.to_data.rst", "api/generated/compas_slicer.post_processing.generate_brim.rst", "api/generated/compas_slicer.post_processing.generate_raft.rst", "api/generated/compas_slicer.post_processing.reorder_vertical_layers.rst", "api/generated/compas_slicer.post_processing.seams_align.rst", "api/generated/compas_slicer.post_processing.seams_smooth.rst", "api/generated/compas_slicer.post_processing.simplify_paths_rdp.rst", "api/generated/compas_slicer.post_processing.sort_into_vertical_layers.rst", "api/generated/compas_slicer.post_processing.sort_paths_minimum_travel_time.rst", "api/generated/compas_slicer.post_processing.spiralize_contours.rst", "api/generated/compas_slicer.post_processing.zig_zag_open_paths.rst", "api/generated/compas_slicer.pre_processing.get_mid_pt_base.rst", "api/generated/compas_slicer.pre_processing.move_mesh_to_point.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.__init__.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.create_printpoints.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_neighboring_items.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_up_vector.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoints_attribute.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.number_of_paths_on_layer.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_gcode.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_nested_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printout_info.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_indices_iterator.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_iterator.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.remove_duplicate_points_in_path.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.__init__.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_base_boundaries.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_printpoints.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_layer_ppts.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_neighboring_items.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_up_vector.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoints_attribute.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.number_of_paths_on_layer.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_gcode.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_nested_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printout_info.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_indices_iterator.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_iterator.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.remove_duplicate_points_in_path.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.topological_sorting.rst", "api/generated/compas_slicer.print_organization.add_safety_printpoints.rst", "api/generated/compas_slicer.print_organization.override_extruder_toggle.rst", "api/generated/compas_slicer.print_organization.override_wait_time.rst", "api/generated/compas_slicer.print_organization.set_blend_radius.rst", "api/generated/compas_slicer.print_organization.set_extruder_toggle.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_overhang.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_range.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_constant.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_per_layer.rst", "api/generated/compas_slicer.print_organization.set_wait_time_based_on_extruder_toggle.rst", "api/generated/compas_slicer.print_organization.set_wait_time_on_sharp_corners.rst", "api/generated/compas_slicer.slicers.BaseSlicer.rst", "api/generated/compas_slicer.slicers.BaseSlicer.__init__.rst", "api/generated/compas_slicer.slicers.BaseSlicer.close_paths.rst", "api/generated/compas_slicer.slicers.BaseSlicer.find_vertical_layers_with_first_path_on_base.rst", "api/generated/compas_slicer.slicers.BaseSlicer.from_data.rst", "api/generated/compas_slicer.slicers.BaseSlicer.generate_paths.rst", "api/generated/compas_slicer.slicers.BaseSlicer.get_layers_dict.rst", "api/generated/compas_slicer.slicers.BaseSlicer.post_processing.rst", "api/generated/compas_slicer.slicers.BaseSlicer.printout_info.rst", "api/generated/compas_slicer.slicers.BaseSlicer.remove_invalid_paths_and_layers.rst", "api/generated/compas_slicer.slicers.BaseSlicer.slice_model.rst", "api/generated/compas_slicer.slicers.BaseSlicer.to_data.rst", "api/generated/compas_slicer.slicers.BaseSlicer.to_json.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.__init__.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.close_paths.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.find_vertical_layers_with_first_path_on_base.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.from_data.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.generate_paths.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.get_layers_dict.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.post_processing.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.printout_info.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.remove_invalid_paths_and_layers.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.slice_model.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_data.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_json.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.__init__.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.close_paths.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.find_vertical_layers_with_first_path_on_base.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.from_data.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.generate_paths.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.get_layers_dict.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.post_processing.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.printout_info.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.remove_invalid_paths_and_layers.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.slice_model.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.to_data.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.to_json.rst", "api/generated/compas_slicer.utilities.flattened_list_of_dictionary.rst", "api/generated/compas_slicer.utilities.get_closest_mesh_normal_to_pt.rst", "api/generated/compas_slicer.utilities.get_closest_pt.rst", "api/generated/compas_slicer.utilities.get_closest_pt_index.rst", "api/generated/compas_slicer.utilities.get_dict_key_from_value.rst", "api/generated/compas_slicer.utilities.get_mesh_vertex_coords_with_attribute.rst", "api/generated/compas_slicer.utilities.get_normal_of_path_on_xy_plane.rst", "api/generated/compas_slicer.utilities.interrupt.rst", "api/generated/compas_slicer.utilities.load_from_json.rst", "api/generated/compas_slicer.utilities.plot_networkx_graph.rst", "api/generated/compas_slicer.utilities.point_list_to_dict.rst", "api/generated/compas_slicer.utilities.save_to_json.rst", "api/generated/compas_slicer.utilities.smooth_vectors.rst", "api/geometry.rst", "api/post_processing.rst", "api/pre_processing.rst", "api/print_organization.rst", "api/slicers.rst", "api/utilities.rst", "citing.rst", "devguide.rst", "examples.rst", "examples/01_planar_slicing_simple.rst", "examples/02_curved_slicing_simple.rst", "examples/03_planar_slicing_vertical_sorting.rst", "examples/04_gcode_generation.rst", "examples/05_non_planar_slicing_on_custom_base.rst", "examples/06_attributes_transfer.rst", "index.rst", "installation.rst", "license.rst", "tutorials.rst", "tutorials/01_introduction.rst", "tutorials/02_grasshopper_visualization.rst"], "titles": ["API Reference", "compas_slicer", "Layer", "Layer.__init__", "Layer.calculate_z_bounds", "Layer.from_data", "Layer.to_data", "Path", "Path.__init__", "Path.from_data", "Path.to_data", "PrintPoint", "PrintPoint.__init__", "PrintPoint.from_data", "PrintPoint.get_frame", "PrintPoint.to_data", "generate_brim", "generate_raft", "reorder_vertical_layers", "seams_align", "seams_smooth", "simplify_paths_rdp", "sort_into_vertical_layers", "sort_paths_minimum_travel_time", "spiralize_contours", "zig_zag_open_paths", "get_mid_pt_base", "move_mesh_to_point", "BasePrintOrganizer", "BasePrintOrganizer.__init__", "BasePrintOrganizer.create_printpoints", "BasePrintOrganizer.get_printpoint_neighboring_items", "BasePrintOrganizer.get_printpoint_up_vector", "BasePrintOrganizer.get_printpoints_attribute", "BasePrintOrganizer.number_of_paths_on_layer", "BasePrintOrganizer.output_gcode", "BasePrintOrganizer.output_nested_printpoints_dict", "BasePrintOrganizer.output_printpoints_dict", "BasePrintOrganizer.printout_info", "BasePrintOrganizer.printpoints_indices_iterator", "BasePrintOrganizer.printpoints_iterator", "BasePrintOrganizer.remove_duplicate_points_in_path", "InterpolationPrintOrganizer", "InterpolationPrintOrganizer.__init__", "InterpolationPrintOrganizer.create_base_boundaries", "InterpolationPrintOrganizer.create_printpoints", "InterpolationPrintOrganizer.get_layer_ppts", "InterpolationPrintOrganizer.get_printpoint_neighboring_items", "InterpolationPrintOrganizer.get_printpoint_up_vector", "InterpolationPrintOrganizer.get_printpoints_attribute", "InterpolationPrintOrganizer.number_of_paths_on_layer", "InterpolationPrintOrganizer.output_gcode", "InterpolationPrintOrganizer.output_nested_printpoints_dict", "InterpolationPrintOrganizer.output_printpoints_dict", "InterpolationPrintOrganizer.printout_info", "InterpolationPrintOrganizer.printpoints_indices_iterator", "InterpolationPrintOrganizer.printpoints_iterator", "InterpolationPrintOrganizer.remove_duplicate_points_in_path", "InterpolationPrintOrganizer.topological_sorting", "add_safety_printpoints", "override_extruder_toggle", "override_wait_time", "set_blend_radius", "set_extruder_toggle", "set_linear_velocity_by_overhang", "set_linear_velocity_by_range", "set_linear_velocity_constant", "set_linear_velocity_per_layer", "set_wait_time_based_on_extruder_toggle", "set_wait_time_on_sharp_corners", "BaseSlicer", "BaseSlicer.__init__", "BaseSlicer.close_paths", "BaseSlicer.find_vertical_layers_with_first_path_on_base", "BaseSlicer.from_data", "BaseSlicer.generate_paths", "BaseSlicer.get_layers_dict", "BaseSlicer.post_processing", "BaseSlicer.printout_info", "BaseSlicer.remove_invalid_paths_and_layers", "BaseSlicer.slice_model", "BaseSlicer.to_data", "BaseSlicer.to_json", "InterpolationSlicer", "InterpolationSlicer.__init__", "InterpolationSlicer.close_paths", "InterpolationSlicer.find_vertical_layers_with_first_path_on_base", "InterpolationSlicer.from_data", "InterpolationSlicer.generate_paths", "InterpolationSlicer.get_layers_dict", "InterpolationSlicer.post_processing", "InterpolationSlicer.printout_info", "InterpolationSlicer.remove_invalid_paths_and_layers", "InterpolationSlicer.slice_model", "InterpolationSlicer.to_data", "InterpolationSlicer.to_json", "PlanarSlicer", "PlanarSlicer.__init__", "PlanarSlicer.close_paths", "PlanarSlicer.find_vertical_layers_with_first_path_on_base", "PlanarSlicer.from_data", "PlanarSlicer.generate_paths", "PlanarSlicer.get_layers_dict", "PlanarSlicer.post_processing", "PlanarSlicer.printout_info", "PlanarSlicer.remove_invalid_paths_and_layers", "PlanarSlicer.slice_model", "PlanarSlicer.to_data", "PlanarSlicer.to_json", "flattened_list_of_dictionary", "get_closest_mesh_normal_to_pt", "get_closest_pt", "get_closest_pt_index", "get_dict_key_from_value", "get_mesh_vertex_coords_with_attribute", "get_normal_of_path_on_xy_plane", "interrupt", "load_from_json", "plot_networkx_graph", "point_list_to_dict", "save_to_json", "smooth_vectors", "geometry", "post_processing", "pre_processing", "print_organization", "slicers", "utilities", "Citing", "Developer Guide", "Examples", "1. Simple planar slicing", "2. Simple curved interpolation slicing", "3. Planar slicing with vertical sorting", "4. Gcode generation", "5. Non-planar slicing on custom base", "6. Transferring attributes to PrintPoints", "Overview", "Installation", "License", "Tutorials", "1. Introduction", "2. Visualization in grasshopper"], "terms": {"compas_slic": [0, 2, 7, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 31, 32, 39, 40, 42, 47, 48, 55, 56, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 83, 96, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 128, 130, 131, 132, 133, 134, 135, 136, 137, 138, 140, 141, 142], "geometri": [1, 2, 7, 11, 18, 19, 24, 26, 27, 31, 32, 39, 40, 47, 48, 55, 56, 65, 110, 111, 112, 114, 115, 119, 121, 131, 133, 134, 135, 136, 137, 142], "slicer": [1, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 28, 29, 42, 43, 62, 63, 70, 74, 79, 81, 82, 83, 87, 92, 94, 95, 96, 100, 105, 107, 108, 128, 131, 132, 133, 134, 135, 136, 137, 142], "print_organ": [1, 28, 42, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 131, 132, 133, 134, 135, 136, 137, 141], "pre_process": [1, 26, 27, 83, 131, 132, 133, 134, 137, 141], "post_process": [1, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 131, 132, 133, 134, 135, 136, 137, 141], "util": [1, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 131, 132, 133, 134, 135, 136, 137, 141], "class": [2, 7, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 30, 31, 39, 40, 42, 47, 55, 56, 58, 59, 65, 70, 75, 83, 96, 110, 111, 114, 115, 121, 131, 132, 141, 142], "path": [2, 3, 16, 19, 21, 22, 23, 25, 31, 32, 34, 39, 41, 45, 47, 48, 50, 55, 57, 58, 59, 68, 69, 72, 79, 80, 85, 88, 92, 93, 98, 101, 105, 106, 115, 122, 131, 132, 133, 134, 135, 136, 141, 142], "sourc": [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 88, 96, 97, 101, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 137, 139], "base": [2, 7, 11, 26, 28, 42, 45, 69, 70, 83, 96, 130, 137], "object": [2, 7, 11, 28, 70, 141], "A": [2, 7, 11, 16, 26, 27, 67, 122, 131, 132, 138, 139, 141], "store": [2, 113, 114, 142], "group": [2, 22, 141], "order": [2, 18, 45, 133, 138], "ar": [2, 7, 15, 22, 41, 57, 72, 85, 96, 98, 122, 131, 132, 133, 135, 136, 138, 141, 142], "gener": [2, 59, 83, 88, 96, 101, 122, 130, 131, 132, 135, 136, 137, 141, 142], "when": [2, 11, 58, 122, 131, 141, 142], "i": [2, 7, 11, 24, 28, 31, 32, 33, 39, 47, 48, 49, 55, 62, 64, 65, 70, 83, 96, 116, 122, 131, 132, 133, 134, 135, 136, 137, 138, 139, 141, 142], "slice": [2, 11, 70, 78, 80, 91, 93, 96, 101, 104, 106, 122, 128, 130, 134, 136, 137, 141, 142], "typic": [2, 16, 122, 131, 134], "organ": [2, 28, 39, 40, 42, 55, 56, 122, 134, 135], "horizont": [2, 22, 23, 64, 122, 133], "can": [2, 15, 22, 24, 25, 36, 37, 52, 53, 65, 83, 113, 114, 119, 122, 130, 131, 132, 133, 134, 136, 138, 139, 140, 141, 142], "also": [2, 122, 131, 134, 136], "vertic": [2, 11, 18, 22, 59, 114, 122, 130, 131, 135, 136, 137], "see": [2, 70, 131, 132, 136, 138, 141, 142], "verticallay": [2, 22, 141], "consist": [2, 7, 11, 22, 24, 58, 76, 89, 102, 122, 131, 141], "one": [2, 17, 18, 19, 20, 21, 22, 23, 44, 45, 122, 133, 135, 138, 141], "multipl": [2, 122, 131, 138, 141], "depend": [2, 65, 66, 67, 122, 131], "attribut": [2, 4, 7, 11, 15, 28, 33, 42, 49, 70, 83, 96, 114, 122, 130, 135, 137, 142], "list": [2, 7, 31, 33, 47, 49, 67, 109, 111, 112, 114, 119, 121, 122, 132, 135, 141], "is_brim": 2, "bool": [2, 7, 11, 60, 64, 65, 136], "true": [2, 7, 11, 64, 65, 68, 131, 132, 135, 136], "thi": [2, 11, 15, 28, 58, 64, 70, 131, 132, 135, 136, 138, 139, 141, 142], "brim": [2, 16, 131, 141], "number_of_brim_offset": [2, 16, 131, 132, 133, 134], "int": [2, 16, 17, 22, 31, 34, 39, 47, 50, 55, 112, 115, 121], "The": [2, 5, 6, 9, 10, 11, 13, 15, 22, 27, 31, 41, 47, 57, 65, 74, 81, 87, 94, 96, 100, 107, 110, 111, 112, 119, 121, 131, 132, 133, 134, 137, 138, 139, 141, 142], "number": [2, 16, 17, 22, 34, 50, 67, 121, 131, 132], "offset": [2, 17, 131, 135], "ha": [2, 22, 70, 131, 132, 134, 141], "none": [2, 17, 19, 22, 83, 84, 96, 97], "is_raft": 2, "raft": [2, 17, 131, 141], "inherit": [2, 7, 11, 28, 30, 42, 70, 75, 83, 96, 142], "method": [2, 7, 11, 28, 42, 70, 83, 96, 131, 132, 133, 141], "fill": 4, "self": 4, "min_max_z_height": 4, "classmethod": [5, 9, 13, 74, 87, 100], "data": [5, 6, 9, 10, 13, 15, 74, 81, 87, 94, 100, 107, 120, 131, 132, 133, 134, 135, 136, 142], "construct": [5, 9, 13, 74, 87, 100], "from": [5, 9, 13, 17, 18, 22, 38, 41, 45, 54, 57, 74, 78, 79, 87, 91, 92, 96, 100, 104, 105, 117, 131, 132, 133, 134, 135, 136, 138, 139, 142], "its": [5, 9, 13, 74, 87, 100, 135, 142], "represent": [5, 9, 13, 74, 87, 100], "paramet": [5, 9, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 32, 33, 35, 41, 42, 43, 48, 49, 51, 57, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 74, 83, 84, 87, 100, 109, 110, 111, 112, 113, 114, 115, 117, 118, 119, 120, 121, 131, 132, 134, 135, 136, 141], "dict": [5, 6, 9, 10, 13, 15, 35, 36, 37, 42, 51, 52, 53, 74, 81, 83, 87, 94, 100, 107, 109, 113, 119], "dictionari": [5, 6, 9, 10, 13, 15, 36, 37, 45, 52, 53, 74, 76, 81, 87, 89, 94, 100, 102, 107, 109, 113, 114, 119, 131, 132, 142], "return": [5, 6, 9, 10, 13, 14, 15, 19, 26, 31, 32, 33, 35, 36, 37, 47, 48, 49, 51, 52, 53, 65, 74, 76, 81, 87, 89, 94, 100, 102, 107, 109, 110, 111, 112, 113, 114, 115, 119, 121], "structur": [6, 10, 15, 81, 94, 107], "repres": [6, 10, 15, 16, 32, 48, 81, 94, 96, 107, 132], "": [6, 10, 11, 66, 81, 94, 107, 131, 132, 133, 134, 135, 136], "point": [7, 8, 11, 14, 18, 19, 20, 21, 22, 26, 27, 32, 41, 45, 48, 57, 59, 72, 85, 98, 110, 111, 112, 114, 115, 119, 122, 131, 133, 134, 135, 136, 141], "is_clos": [7, 8], "connect": [7, 58, 139], "contour": [7, 16, 24, 42, 83, 96, 122, 131, 132, 135, 141], "within": [7, 20, 23, 34, 41, 50, 57, 64, 122], "layer": [7, 11, 13, 16, 17, 18, 20, 22, 23, 31, 34, 39, 41, 46, 47, 50, 55, 57, 65, 67, 74, 76, 79, 87, 89, 92, 96, 100, 102, 105, 122, 131, 132, 133, 141], "compa": [7, 11, 18, 19, 26, 27, 32, 48, 60, 63, 70, 83, 96, 110, 111, 112, 114, 115, 119, 121, 122, 128, 131, 132, 133, 134, 135, 136, 137, 139, 141], "close": [7, 24, 72, 85, 98, 131, 141], "curv": [7, 11, 88, 115, 130, 137, 141], "fals": [7, 11, 68, 131, 132, 136], "open": [7, 25, 131, 137, 139, 141], "If": [7, 22, 65, 128, 138, 142], "first": [7, 17, 72, 85, 96, 98, 131], "last": [7, 72, 85, 98], "ident": [7, 72, 85, 98, 119], "pt": [11, 12, 110, 111, 112, 119, 135, 136], "layer_height": [11, 12, 96, 97, 131, 132, 133, 134, 136], "mesh_norm": [11, 12], "addit": [11, 122, 131, 137, 141], "relat": [11, 131, 134, 135, 141], "print": [11, 16, 17, 19, 22, 25, 28, 38, 39, 40, 42, 45, 54, 55, 56, 58, 59, 78, 91, 104, 122, 133, 134, 135, 136, 137, 142], "process": [11, 22, 28, 42, 45, 70, 77, 78, 80, 90, 91, 93, 103, 104, 106, 122, 133, 135, 136, 138, 141, 142], "out": [11, 24, 38, 54, 78, 91, 104, 122, 131, 139, 141], "x": [11, 14, 18, 19, 119], "y": [11, 14, 18, 19, 119, 136], "z": [11, 18, 19, 96, 119, 131, 141], "coordin": [11, 114, 135, 136], "float": [11, 16, 17, 20, 21, 22, 41, 57, 59, 61, 62, 66, 67, 68, 69, 96, 121, 136], "distanc": [11, 16, 17, 20, 41, 57, 59, 96, 135, 136], "between": [11, 16, 17, 20, 41, 57, 96, 131, 135, 138, 139, 141], "previou": [11, 131], "For": [11, 64, 72, 85, 98, 131, 138], "planar": [11, 24, 42, 83, 96, 101, 130, 132, 137, 141], "absolut": [11, 96], "vector": [11, 32, 48, 110, 115, 119, 121, 136], "normal": [11, 14, 32, 48, 110, 115], "mesh": [11, 14, 26, 27, 70, 71, 83, 84, 96, 97, 110, 114, 115, 131, 132, 133, 134, 135, 136], "planar_sl": 11, "project": [11, 128, 135, 136, 137, 138, 139, 142], "xy": [11, 96, 115, 141], "plane": [11, 96, 115, 136, 141], "todo": [11, 15], "should": [11, 17, 64, 131], "we": [11, 83, 131, 132, 134, 135, 136, 142], "chang": [11, 131], "up_vector": 11, "up": [11, 14, 32, 48, 64, 131, 132], "direct": [11, 17, 19, 32, 45, 48, 58, 64, 131, 136], "correspond": [11, 142], "axi": [11, 14, 18, 136], "vari": 11, "frame": [11, 14], "toward": [11, 14, 136], "extruder_toggl": [11, 60, 63, 68, 131], "extrud": [11, 131], "off": [11, 131], "travel": [11, 22, 23, 131, 133, 142], "veloc": [11, 64, 65, 66, 67, 131, 141], "us": [11, 17, 21, 22, 24, 28, 35, 39, 51, 55, 64, 65, 70, 96, 128, 131, 132, 133, 135, 136, 137, 138, 139, 141, 142], "speed": [11, 131], "mm": [11, 17, 20, 62, 66, 96, 134], "wait_tim": [11, 61, 68, 69], "time": [11, 22, 23, 68, 69, 131, 132], "second": [11, 68, 69, 96, 131, 132], "wait": [11, 68, 69], "save": [15, 36, 37, 52, 53, 119, 120, 131, 132, 135, 136, 142], "becaus": [15, 138], "thei": [15, 25, 31, 41, 47, 57, 142], "non": [15, 42, 83, 130, 132, 133, 137, 141], "json": [15, 36, 37, 52, 53, 82, 95, 108, 117, 119, 120, 131, 132, 133, 134, 135, 136, 142], "serializ": [15, 136], "find": [15, 110, 111, 112, 114, 115, 130, 137, 140, 142], "solut": 15, "layer_width": [16, 131, 132, 133, 134], "creat": [16, 17, 35, 36, 37, 44, 45, 46, 51, 52, 53, 58, 131, 132, 133, 134, 135, 136, 138, 141, 142], "around": 16, "bottom": [16, 26, 131], "planarslic": [16, 24, 28, 42, 70, 131, 133, 134, 136], "an": [16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 42, 59, 64, 65, 70, 114, 135, 137, 138, 139, 141, 142], "instanc": [16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 42, 59, 132, 135], "width": [16, 131, 132], "add": [16, 17, 68, 69, 131, 136, 138], "raft_offset": [17, 131], "10": [17, 59, 62, 131, 132, 133, 134], "distance_between_path": [17, 131], "xy_diagon": [17, 131], "raft_lay": [17, 131], "1": [17, 64, 69, 83, 131, 132, 136], "raft_layer_height": 17, "baseslic": [17, 18, 19, 20, 21, 22, 23, 63, 83, 96], "default": [17, 41, 57, 62, 66, 96, 97, 131, 132, 133, 134, 136], "10mm": 17, "line": [17, 133], "str": [17, 18, 19, 31, 33, 35, 41, 42, 47, 49, 51, 57, 68, 96, 114, 117, 120], "x_axi": [17, 18, 19, 133], "align": [17, 19], "y_axi": [17, 18, 19], "diagon": 17, "xy_plan": 17, "height": [17, 22, 65, 96, 131, 132, 133, 141], "same": [17, 22, 132, 133, 141], "valu": [17, 22, 60, 61, 62, 63, 64, 65, 66, 96, 114, 131, 132, 136], "align_with": [18, 19, 133], "re": [18, 83], "specif": [18, 141], "wai": [18, 138, 142], "reorder": [18, 133], "start": [18, 19, 68, 96], "posit": [18, 96, 136, 142], "given": [18, 19, 120, 121], "next_path": 19, "seam": [19, 20, 131], "endpoint": 19, "orient": 19, "next": [19, 131, 133], "origin": [19, 131], "0": [19, 22, 41, 57, 59, 62, 64, 66, 68, 69, 96, 97, 131, 132, 133, 134, 135, 136, 138], "accord": [19, 142], "smooth_dist": [20, 131, 132, 133, 134], "smooth": [20, 121, 131], "transit": 20, "remov": [20, 21, 41, 57, 79, 80, 92, 93, 105, 106, 131], "certain": [20, 41, 57, 131], "perform": 20, "threshold": [21, 41, 57, 69, 131, 132, 133, 134, 135, 136], "simplifi": [21, 131], "ramer": [21, 131], "dougla": [21, 131], "peucker": [21, 131], "algorithm": [21, 131], "implement": [21, 28, 30, 70, 75], "rdp": 21, "python": [21, 28, 70, 137, 138, 142], "librari": [21, 131], "http": [21, 128, 138], "en": 21, "wikipedia": 21, "org": 21, "wiki": 21, "peucker_algorithm": 21, "control": [21, 64, 132], "degre": [21, 64], "polylin": [21, 131], "simplif": 21, "low": 21, "few": 21, "high": [21, 131], "mani": 21, "dist_threshold": 22, "25": [22, 66, 131, 133], "max_paths_per_lay": [22, 133], "sort": [22, 23, 130, 137, 141], "differ": [22, 131, 136, 141], "togeth": [22, 141], "proxim": 22, "center": 22, "reduc": [22, 23], "robot": [22, 62, 134], "maximum": 22, "get_dist": 22, "centroid": 22, "two": 22, "success": 22, "have": [22, 33, 49, 114, 131, 132, 142], "belong": [22, 31, 47], "recommend": [22, 83, 131, 138], "slightli": 22, "bigger": 22, "than": 22, "unlimit": 22, "total": [23, 131, 132], "spiral": 24, "onli": [24, 96, 131, 136, 141], "work": [24, 119, 131, 132, 134], "singl": [24, 46, 122, 131, 141], "e": [24, 70, 83, 96, 135, 138], "vase": [24, 131, 132], "revers": 25, "half": 25, "so": [25, 32, 48, 119, 139], "zig": 25, "zag": 25, "motion": [25, 62], "get": [26, 35, 39, 51, 55, 131, 138], "middl": 26, "datastructur": [26, 27, 70, 83, 96, 110, 114, 115, 131, 132, 133, 134, 135, 136], "mesh_mid_pt": 26, "target_point": 27, "move": [27, 131], "translat": 27, "target": [27, 132], "meant": [28, 70], "extend": [28, 70], "variou": [28, 58, 70, 141], "do": [28, 70, 131, 139, 142], "directli": [28, 70, 136], "your": [28, 70, 83, 131, 138], "code": [28, 70, 116, 141, 142], "instead": [28, 70], "planarprintorgan": [28, 131, 133, 134, 136], "interpolationprintorgan": [28, 132], "abstract": [30, 75], "To": [30, 39, 55, 75, 129, 131, 132, 138, 142], "layer_kei": [31, 39, 41, 47, 55, 57], "path_kei": [31, 39, 41, 47, 55, 57], "kei": [31, 33, 39, 41, 47, 49, 55, 57, 113, 114, 119, 134], "current": [31, 47, 96, 131, 138, 142], "printpoint": [31, 32, 33, 36, 37, 39, 40, 45, 46, 47, 48, 49, 52, 53, 55, 56, 59, 60, 61, 63, 65, 66, 67, 68, 122, 130, 131, 132, 135, 137, 141, 142], "index": [31, 32, 39, 47, 48, 55, 112, 115, 119], "k": [32, 39, 48, 55, 115], "orthogon": [32, 48], "attr_nam": [33, 49, 136], "size": [33, 49], "len": [33, 49], "ppt": [33, 49, 132], "whatev": [33, 49], "type": [33, 49, 65, 66, 67, 131, 138, 142], "layer_index": [34, 50], "printorgan": [34, 38, 50, 54, 131, 132, 141], "gcode": [35, 51, 130, 137], "text": [35, 51, 136], "file": [35, 51, 82, 95, 108, 130, 131, 132, 138, 139, 142], "function": [35, 51, 58, 64, 65, 122, 128, 131, 136, 137, 141], "nest": [36, 52], "flatten": [37, 53], "inform": [38, 54, 70, 78, 91, 104, 131, 132, 135, 136, 138, 141, 142], "iter": [39, 40, 55, 56, 121, 132], "over": [39, 40, 55, 56], "yield": [39, 40, 55, 56], "layer_": [39, 55], "d": [39, 55], "j": [39, 55], "path_": [39, 55], "toler": [41, 57], "0001": [41, 57], "subsequ": [41, 57], "option": [41, 57, 96, 131, 132, 138], "data_path": [42, 43, 132, 135, 136], "baseprintorgan": [42, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69], "realiz": 42, "baseboundari": 44, "per": [44, 121, 135, 136], "vertical_lay": 44, "fabric": [45, 131, 133, 134, 135, 136, 137, 141], "graph": [45, 58, 118], "select": [45, 65, 66, 67, 131, 133], "topolog": [45, 83], "each": [45, 58, 132, 135, 136, 141, 142], "collect": 45, "copi": [45, 139], "correct": [45, 138, 142], "base_boundari": 46, "initi": [58, 135], "all": [58, 70, 114, 131, 132, 133, 134, 135, 136, 139, 141, 142], "part": [58, 96, 136, 141], "reflect": 58, "which": [58, 96, 131, 132, 135], "other": [58, 139], "li": [58, 115], "lie": 58, "z_hop": [59, 131, 132, 133], "safeti": [59, 131, 141], "interrupt": [59, 133], "millimet": 59, "abov": [59, 139], "override_valu": [60, 61], "overrid": [60, 61, 132], "user": [60, 61, 83, 96, 116, 132, 138, 142], "defin": [60, 61, 83, 131, 132, 135], "d_fillet": [62, 131, 133], "buffer": 62, "3": [62, 68, 69, 83, 131, 132, 133, 134, 135, 138], "set": [62, 63, 64, 65, 66, 67, 68, 69, 131, 132, 134, 141], "blend": [62, 141], "radiu": [62, 141], "fillet": 62, "attempt": 62, "make": [62, 72, 85, 98, 131, 132, 138], "sure": [62, 72, 85, 98, 131, 132, 138], "never": 62, "too": 62, "big": 62, "overhang_rang": 64, "velocity_rang": [64, 65, 132], "bound_remap": [64, 65, 132], "overhang": [64, 65, 136], "set_linear_velocity_by_rang": [64, 132], "exampl": [64, 65, 70, 131, 132, 133, 135, 136, 137, 138, 141, 142], "how": [64, 131, 132, 133, 142], "In": [64, 131, 133, 135, 137, 138, 141], "case": [64, 68, 135, 137, 138, 141], "measur": 64, "dot": [64, 136], "product": 64, "tupl": [64, 65, 96], "reason": 64, "would": [64, 131, 137], "5": [64, 131, 132, 133, 134, 136, 138], "remap": [64, 65], "45": 64, "param_func": [65, 132], "parameter_rang": [65, 132], "linear": [65, 66, 67, 131], "take": [65, 136, 141], "argument": 65, "get_param_func": 65, "pp": 65, "angl": [65, 69, 136], "rang": [65, 96], "where": [65, 131, 142], "bound": 65, "domain": 65, "els": [65, 134], "unbound": 65, "v": [66, 131, 133, 138], "per_layer_veloc": 67, "equal": [67, 114], "length": 67, "wait_typ": 68, "either": [68, 131], "befor": [68, 131, 132, 141], "extrus": 68, "after": [68, 131, 141], "finish": [68, 131, 132], "both": [68, 131, 139, 141], "wait_before_extrus": 68, "wait_after_extrus": 68, "wait_before_and_after_extrus": 68, "wait_at_sharp_corn": 68, "sharp": [68, 69], "corner": [68, 69], "introduc": [68, 69], "5707963267948966": 69, "angle_threshold": 69, "organiz": 70, "hold": 70, "interpolationslic": [70, 132], "input": [70, 83, 96, 131], "triangular": [70, 83, 96], "quad": [70, 83, 96], "n": [70, 83, 96, 138], "gon": [70, 83, 96], "allow": [70, 83, 96], "label": [72, 85, 98], "appli": [77, 80, 90, 93, 103, 106], "standard": [77, 80, 90, 93, 103, 106, 131], "post": [77, 80, 90, 93, 103, 106, 131, 132, 133], "oper": [77, 90, 103, 131, 141], "seams_align": [77, 90, 103], "unify_path": [77, 90, 103], "invalid": [79, 80, 92, 93, 105, 106], "arg": [80, 93, 106], "kwarg": [80, 93, 106], "model": [80, 93, 96, 106, 131, 132, 133, 134, 135, 136, 141], "filepath": [82, 95, 108, 117, 120], "name": [82, 95, 108, 117, 120, 131, 135, 138], "write": [82, 95, 108], "preprocessor": [83, 84, 132], "interpol": [83, 130, 137, 141], "boundari": [83, 132, 141], "must": [83, 96], "note": [83, 128, 131, 142], "topologi": 83, "matter": 83, "irregular": 83, "tessel": 83, "lead": 83, "undesir": 83, "result": [83, 131, 132, 135, 141, 142], "2": [83, 96, 97, 131, 132, 134, 138, 141], "triangul": 83, "weld": 83, "advanc": 83, "interpolationslicingpreprocessor": [83, 132], "slicer_typ": [96, 97, 131, 133, 134, 136], "slice_height_rang": [96, 97], "parallel": [96, 141], "string": 96, "cgal": [96, 131, 133, 134, 138], "let": 96, "entir": 96, "end": 96, "rel": 96, "minimum": 96, "you": [96, 128, 130, 131, 132, 136, 137, 138, 140, 142], "want": [96, 131, 132, 136, 142], "100": 96, "regardless": 96, "turn": [109, 119, 142], "flat": 109, "closest": [110, 111, 112, 114, 136], "vertex": [110, 114, 132, 135, 136], "cloud": [111, 112], "point3d": [111, 112], "val": 113, "anyth": [113, 114, 136], "attr": 114, "flow": 116, "while": [116, 133, 134, 138], "run": [116, 131, 138, 142], "It": [116, 131, 136, 142], "ask": 116, "press": 116, "enter": 116, "continu": 116, "abort": 116, "load": [117, 131, 132, 135, 136, 142], "g": [118, 138], "plot": 118, "networkx": [118, 138], "pts_list": 119, "3d": [119, 134, 136, 137], "form": [119, 141, 142], "provid": [120, 132, 138, 139, 141, 142], "dict_or_list": 120, "strength": [121, 132], "vector3d": 121, "smoothen": 121, "therefor": [122, 131, 137], "seen": 122, "plu": 122, "some": [122, 130, 140], "ad": [122, 129, 131, 141], "pleas": [128, 137, 138], "follow": [128, 131, 133, 138, 139, 142], "citat": 128, "misc": 128, "titl": 128, "_slicer": 128, "author": [128, 139], "ioanna": 128, "mitropoul": 128, "jori": 128, "burger": 128, "dev": [128, 138], "year": 128, "2020": 128, "here": [130, 138, 140], "simpl": [130, 137], "custom": [130, 137], "transfer": [130, 137], "introduct": [131, 132, 137, 140], "concept": [131, 132], "found": [131, 132, 141], "tutori": [131, 132, 137, 141, 142], "describ": [131, 132, 135, 138], "shape": [131, 133], "known": 131, "step": 131, "requir": [131, 138], "o": [131, 132, 133, 134, 135, 136], "log": [131, 132, 133, 134, 135, 136], "move_mesh_to_point": [131, 133, 134], "generate_brim": [131, 132, 133, 134], "generate_raft": 131, "simplify_paths_rdp_igl": [131, 132, 133, 134, 135, 136], "seams_smooth": [131, 132, 133, 134], "set_extruder_toggl": [131, 132, 133, 134], "add_safety_printpoint": [131, 132, 133], "set_linear_velocity_const": [131, 133], "set_blend_radiu": [131, 133], "save_to_json": [131, 132, 133, 134, 135, 136], "compas_view2": [131, 132], "app": [131, 132], "Then": [131, 138], "messag": [131, 132, 133, 134, 135, 136], "termin": 131, "logger": [131, 132, 133, 134, 135, 136], "getlogg": [131, 132, 133, 134, 135, 136], "basicconfig": [131, 132, 133, 134, 135, 136], "format": [131, 132, 133, 134, 135, 136], "levelnam": [131, 132, 133, 134, 135, 136], "level": [131, 132, 133, 134, 135, 136], "info": [131, 132, 133, 134, 135, 136], "folder": [131, 133, 134, 142], "assum": 131, "look": [131, 132, 136, 142], "stl": 131, "obj": [131, 132, 133, 134, 135, 136], "call": 131, "output": [131, 132, 133, 134, 141, 142], "intermedi": 131, "command": [131, 138], "get_output_directori": [131, 132, 133, 134, 135, 136], "check": [131, 138], "exist": [131, 133, 134, 142], "join": [131, 132, 133, 134, 135, 136], "dirnam": [131, 132, 133, 134, 135, 136], "__file__": [131, 132, 133, 134, 135, 136], "output_dir": [131, 133, 134], "simple_vase_open_low_r": [131, 134], "from_obj": [131, 132, 133, 134, 135, 136], "our": 131, "ani": [131, 139, 142], "specifi": [131, 132, 133], "bed": 131, "compas_mesh": [131, 133, 134], "need": [131, 136, 138, 142], "slicing_typ": 131, "support": 131, "without": [131, 139], "extern": 131, "bit": 131, "slow": 131, "compas_cg": [131, 138], "packag": [131, 137, 138, 141], "veri": 131, "fast": 131, "instal": [131, 137], "slice_model": [131, 132, 133, 134, 135, 136], "been": [131, 132, 134, 142], "sever": [131, 141], "execut": 131, "One": 131, "improv": 131, "adhes": 131, "build": [131, 137], "plate": 131, "imag": [131, 141], "left": [131, 133], "right": [131, 133, 139], "With": 131, "4": [131, 134, 136], "20": 131, "amount": 131, "face": [131, 136], "larg": 131, "simplify_paths_rdp": 131, "impact": 131, "increas": 131, "more": [131, 138, 141, 142], "decreas": 131, "less": 131, "6": [131, 134], "hard": 131, "printer": [131, 134], "almost": 131, "visibl": 131, "state": 131, "printout_info": [131, 132, 133, 134, 135, 136], "sinc": 131, "now": 131, "done": [131, 132], "involv": 131, "to_data": [131, 132, 133, 134, 135, 136], "slicer_data": [131, 133, 134, 136], "readi": 131, "were": 131, "necessari": [131, 132, 141], "create_printpoint": [131, 132, 133, 134, 135, 136], "boolean": [131, 134, 136], "mean": 131, "wherea": 131, "hop": [131, 141], "doe": 131, "collid": 131, "set_linear_veloc": 131, "again": [131, 138], "about": 131, "convert": 131, "export": [131, 134], "printpoints_data": [131, 132, 133, 135, 136], "output_printpoints_dict": [131, 132, 133, 135, 136], "out_printpoint": [131, 132, 133, 135, 136], "visual": [131, 132, 135, 136, 137, 140], "viewer": [131, 132], "1600": [131, 132], "1000": [131, 132], "visualize_on_view": [131, 132], "visualize_mesh": [131, 132], "visualize_path": [131, 132], "visualize_printpoint": [131, 132], "show": [131, 132], "onc": [131, 132], "grasshopp": [131, 132, 137, 138, 140, 141], "compon": [131, 132, 138], "complet": [131, 132], "below": [131, 132, 133, 136], "locat": [131, 133], "doesn": [131, 133, 134], "t": [131, 133, 134], "alreadi": [131, 133, 134], "start_tim": [131, 132], "But": 131, "OR": [131, 139], "howev": [131, 141], "explain": [131, 132, 138], "achiev": 131, "smoother": 131, "abrupt": 131, "compas_view": 131, "end_tim": [131, 132], "elaps": [131, 132], "round": [131, 132], "read": 132, "main": [132, 133, 134, 141, 142], "go": 132, "through": [132, 141], "basic": [132, 134, 141], "keyfram": 132, "create_mesh_boundary_attribut": 132, "smooth_printpoints_up_vector": 132, "smooth_printpoints_layer_height": 132, "data_basic_exampl": 132, "output_path": [132, 135, 136], "obj_input_nam": 132, "initial_mesh": 132, "indic": 132, "low_boundary_v": 132, "load_from_json": 132, "boundarylow": 132, "high_boundary_v": 132, "boundaryhigh": 132, "configur": 132, "those": 132, "defaults_interpolation_sl": 132, "py": [132, 138], "avg_layer_height": 132, "determin": 132, "dens": 132, "surfac": 132, "15": 132, "min_layer_height": 132, "max_layer_height": 132, "create_compound_target": 132, "g_eval": 132, "create_gradient_evalu": 132, "norm_filenam": 132, "gradient_norm": 132, "g_filenam": 132, "gradient": 132, "target_1": 132, "target_low": 132, "target_2": 132, "target_high": 132, "find_critical_point": 132, "output_filenam": 132, "minima": 132, "maxima": 132, "saddl": 132, "avail": [132, 141, 142], "compute_norm_of_gradi": 132, "curved_slic": 132, "lambda": 132, "150": 132, "70": 132, "compas_viewer2": 132, "dure": [133, 136], "branch": [133, 141], "shell": 133, "logic": 133, "being": [133, 136], "adjac": 133, "enabl": [133, 136], "signific": 133, "reduct": 133, "tool": 133, "shown": [133, 136], "illustr": 133, "orang": [133, 142], "demonstr": 133, "import": [133, 134, 135, 136, 138, 142], "sort_into_vertical_lay": 133, "reorder_vertical_lay": 133, "distorted_v_closed_mid_r": 133, "def": [133, 134], "7": [133, 138], "__name__": [133, 135, 136], "__main__": [133, 135, 136], "mostli": 134, "develop": [134, 137], "materi": 134, "them": [134, 136], "desktop": 134, "still": 134, "progress": 134, "get_param": 134, "delta": 134, "defaults_typ": 134, "print_volume_x": 134, "print_volume_i": 134, "gcode_paramet": 134, "leav": 134, "gcode_text": 134, "output_gcod": 134, "save_to_text_fil": 134, "my_gcod": 134, "scalarfieldslic": 135, "scalar": [135, 136, 141], "field": [135, 141], "everi": 135, "consid": 135, "distance_point_point": 135, "slicer_util": [135, 136], "scalarfieldprintorgan": 135, "geom_to_slic": 135, "custom_bas": 135, "vertex_coordin": [135, 136], "v_kei": [135, 136], "ax": [135, 136], "xyz": [135, 136], "_": 135, "projected_pt": 135, "pull_pts_to_mesh_fac": 135, "u": 135, "proj_pt": 135, "zip": 135, "distance_field": 135, "assign": 135, "under": 135, "scalar_field": 135, "update_default_vertex_attribut": [135, 136], "enumer": 135, "no_of_isocurv": 135, "50": 135, "isocontour": 135, "calcul": 135, "often": 136, "might": [136, 142], "transfer_mesh_attributes_to_printpoint": 136, "averag": 136, "barycentr": 136, "underli": 136, "distance_point_plan": 136, "normalize_vector": 136, "attributes_transf": 136, "numpi": 136, "np": 136, "distorted_v_closed_low_r": 136, "ex": 136, "arrai": 136, "entiti": [136, 141], "meaningfulli": 136, "multipli": 136, "overhand": 136, "update_default_face_attribut": 136, "f_kei": 136, "face_norm": 136, "unit": 136, "positive_y_axi": 136, "is_positive_i": 136, "dist_from_plan": 136, "30": 136, "v_coord": 136, "direction_to_pt": 136, "from_start_end": 136, "printpoints_dict": 136, "gh": 136, "overhangs_list": 136, "get_printpoints_attribut": 136, "positive_y_axis_list": 136, "dist_from_plane_list": 136, "direction_to_pt_list": 136, "point_list_to_dict": 136, "fdm": 137, "upon": 137, "framework": [137, 139], "collabor": 137, "research": [137, 139], "architectur": 137, "engin": 137, "digit": 137, "could": 137, "contain": [137, 141, 142], "bug": [137, 138], "like": 137, "request": 137, "submit": 137, "issu": [137, 138], "tracker": [137, 138], "api": 137, "refer": 137, "guid": 137, "licens": 137, "cite": 137, "easili": 138, "platform": 138, "conda": 138, "environ": [138, 141], "my": 138, "replac": 138, "own": 138, "config": 138, "channel": 138, "forg": 138, "activ": 138, "libigl": 138, "bind": 138, "igl": 138, "automat": 138, "compas_rhino": 138, "m": 138, "enjoi": 138, "encount": 138, "problem": 138, "modulenotfounderror": 138, "No": 138, "modul": 138, "cython": 138, "pip": 138, "fail": 138, "compil": 138, "14": 138, "greater": 138, "visualstudio": 138, "com": 138, "cpp": 138, "miss": 138, "choos": 138, "www": 138, "scivis": 138, "window": 138, "just": 138, "instruct": 138, "runtimeerror": 138, "usernam": 138, "env": 138, "lib": 138, "site": 138, "__init__": 138, "pass": 138, "saniti": 138, "due": 138, "runtim": 138, "tinyurl": 138, "y3dm3h86": 138, "conflict": 138, "appear": 138, "fix": 138, "downgrad": 138, "19": 138, "importerror": 138, "cannot": 138, "gcd": 138, "programdata": 138, "anaconda3": 138, "solv": 138, "stackoverflow": 138, "question": 138, "66174862": 138, "cant": 138, "permiss": 139, "well": 139, "proprietari": 139, "academia": 139, "practic": 139, "interfac": 139, "mit": 139, "herebi": 139, "grant": 139, "free": 139, "charg": 139, "person": 139, "obtain": 139, "softwar": 139, "associ": 139, "document": 139, "deal": 139, "restrict": 139, "includ": [139, 141, 142], "limit": 139, "modifi": [139, 141], "merg": 139, "publish": 139, "distribut": 139, "sublicens": 139, "sell": 139, "permit": 139, "whom": 139, "furnish": 139, "subject": 139, "condit": 139, "copyright": 139, "notic": 139, "shall": 139, "substanti": 139, "portion": 139, "THE": 139, "AS": 139, "warranti": 139, "OF": 139, "kind": 139, "express": 139, "impli": 139, "BUT": 139, "NOT": 139, "TO": 139, "merchant": 139, "fit": 139, "FOR": 139, "particular": 139, "purpos": 139, "AND": 139, "noninfring": 139, "IN": 139, "NO": 139, "event": 139, "holder": 139, "BE": 139, "liabl": 139, "claim": 139, "damag": 139, "liabil": 139, "whether": 139, "action": 139, "contract": 139, "tort": 139, "otherwis": 139, "aris": 139, "WITH": 139, "broadli": 141, "four": 141, "block": 141, "geometr": 141, "embed": 141, "rhino": [141, 142], "essenti": 141, "special": 141, "relev": 141, "mulitpl": 141, "occur": 141, "lastli": 141, "integr": 141, "most": 141, "intersect": 141, "uv": 141, "tba": 141, "toolpath": 141, "throughout": 141, "detail": 141, "preset": 141, "reposit": 141, "These": 141, "emb": 141, "miscellan": 141, "give": 142, "mere": 142, "page": 142, "my_project": 142, "intermediari": 142, "final": 142, "recalcul": 142, "overwritten": 142, "updat": 142, "click": 142, "button": 142, "recomput": 142, "top": 142, "latest": 142, "version": 142, "someon": 142, "csloadslic": 142, "base_slic": 142, "csloadprintpoint": 142, "cslightpathviz": 142, "lightweight": 142, "displai": 142, "white": 142, "tube": 142, "csrenderpathviz": 142, "cross": 142, "section": 142, "expens": 142, "render": 142}, "objects": {"": [[1, 0, 0, "-", "compas_slicer"]], "compas_slicer": [[122, 0, 0, "-", "geometry"], [123, 0, 0, "-", "post_processing"], [124, 0, 0, "-", "pre_processing"], [125, 0, 0, "-", "print_organization"], [126, 0, 0, "-", "slicers"], [127, 0, 0, "-", "utilities"]], "compas_slicer.geometry": [[2, 1, 1, "", "Layer"], [7, 1, 1, "", "Path"], [11, 1, 1, "", "PrintPoint"]], "compas_slicer.geometry.Layer": [[3, 2, 1, "", "__init__"], [4, 2, 1, "", "calculate_z_bounds"], [5, 2, 1, "", "from_data"], [6, 2, 1, "", "to_data"]], "compas_slicer.geometry.Path": [[8, 2, 1, "", "__init__"], [9, 2, 1, "", "from_data"], [10, 2, 1, "", "to_data"]], "compas_slicer.geometry.PrintPoint": [[12, 2, 1, "", "__init__"], [13, 2, 1, "", "from_data"], [14, 2, 1, "", "get_frame"], [15, 2, 1, "", "to_data"]], "compas_slicer.post_processing": [[16, 3, 1, "", "generate_brim"], [17, 3, 1, "", "generate_raft"], [18, 3, 1, "", "reorder_vertical_layers"], [19, 3, 1, "", "seams_align"], [20, 3, 1, "", "seams_smooth"], [21, 3, 1, "", "simplify_paths_rdp"], [22, 3, 1, "", "sort_into_vertical_layers"], [23, 3, 1, "", "sort_paths_minimum_travel_time"], [24, 3, 1, "", "spiralize_contours"], [25, 3, 1, "", "zig_zag_open_paths"]], "compas_slicer.pre_processing": [[26, 3, 1, "", "get_mid_pt_base"], [27, 3, 1, "", "move_mesh_to_point"]], "compas_slicer.print_organization": [[28, 1, 1, "", "BasePrintOrganizer"], [42, 1, 1, "", "InterpolationPrintOrganizer"], [59, 3, 1, "", "add_safety_printpoints"], [60, 3, 1, "", "override_extruder_toggle"], [61, 3, 1, "", "override_wait_time"], [62, 3, 1, "", "set_blend_radius"], [63, 3, 1, "", "set_extruder_toggle"], [64, 3, 1, "", "set_linear_velocity_by_overhang"], [65, 3, 1, "", "set_linear_velocity_by_range"], [66, 3, 1, "", "set_linear_velocity_constant"], [67, 3, 1, "", "set_linear_velocity_per_layer"], [68, 3, 1, "", "set_wait_time_based_on_extruder_toggle"], [69, 3, 1, "", "set_wait_time_on_sharp_corners"]], "compas_slicer.print_organization.BasePrintOrganizer": [[29, 2, 1, "", "__init__"], [30, 2, 1, "", "create_printpoints"], [31, 2, 1, "", "get_printpoint_neighboring_items"], [32, 2, 1, "", "get_printpoint_up_vector"], [33, 2, 1, "", "get_printpoints_attribute"], [34, 2, 1, "", "number_of_paths_on_layer"], [35, 2, 1, "", "output_gcode"], [36, 2, 1, "", "output_nested_printpoints_dict"], [37, 2, 1, "", "output_printpoints_dict"], [38, 2, 1, "", "printout_info"], [39, 2, 1, "", "printpoints_indices_iterator"], [40, 2, 1, "", "printpoints_iterator"], [41, 2, 1, "", "remove_duplicate_points_in_path"]], "compas_slicer.print_organization.InterpolationPrintOrganizer": [[43, 2, 1, "", "__init__"], [44, 2, 1, "", "create_base_boundaries"], [45, 2, 1, "", "create_printpoints"], [46, 2, 1, "", "get_layer_ppts"], [47, 2, 1, "", "get_printpoint_neighboring_items"], [48, 2, 1, "", "get_printpoint_up_vector"], [49, 2, 1, "", "get_printpoints_attribute"], [50, 2, 1, "", "number_of_paths_on_layer"], [51, 2, 1, "", "output_gcode"], [52, 2, 1, "", "output_nested_printpoints_dict"], [53, 2, 1, "", "output_printpoints_dict"], [54, 2, 1, "", "printout_info"], [55, 2, 1, "", "printpoints_indices_iterator"], [56, 2, 1, "", "printpoints_iterator"], [57, 2, 1, "", "remove_duplicate_points_in_path"], [58, 2, 1, "", "topological_sorting"]], "compas_slicer.slicers": [[70, 1, 1, "", "BaseSlicer"], [83, 1, 1, "", "InterpolationSlicer"], [96, 1, 1, "", "PlanarSlicer"]], "compas_slicer.slicers.BaseSlicer": [[71, 2, 1, "", "__init__"], [72, 2, 1, "", "close_paths"], [73, 2, 1, "", "find_vertical_layers_with_first_path_on_base"], [74, 2, 1, "", "from_data"], [75, 2, 1, "", "generate_paths"], [76, 2, 1, "", "get_layers_dict"], [77, 2, 1, "", "post_processing"], [78, 2, 1, "", "printout_info"], [79, 2, 1, "", "remove_invalid_paths_and_layers"], [80, 2, 1, "", "slice_model"], [81, 2, 1, "", "to_data"], [82, 2, 1, "", "to_json"]], "compas_slicer.slicers.InterpolationSlicer": [[84, 2, 1, "", "__init__"], [85, 2, 1, "", "close_paths"], [86, 2, 1, "", "find_vertical_layers_with_first_path_on_base"], [87, 2, 1, "", "from_data"], [88, 2, 1, "", "generate_paths"], [89, 2, 1, "", "get_layers_dict"], [90, 2, 1, "", "post_processing"], [91, 2, 1, "", "printout_info"], [92, 2, 1, "", "remove_invalid_paths_and_layers"], [93, 2, 1, "", "slice_model"], [94, 2, 1, "", "to_data"], [95, 2, 1, "", "to_json"]], "compas_slicer.slicers.PlanarSlicer": [[97, 2, 1, "", "__init__"], [98, 2, 1, "", "close_paths"], [99, 2, 1, "", "find_vertical_layers_with_first_path_on_base"], [100, 2, 1, "", "from_data"], [101, 2, 1, "", "generate_paths"], [102, 2, 1, "", "get_layers_dict"], [103, 2, 1, "", "post_processing"], [104, 2, 1, "", "printout_info"], [105, 2, 1, "", "remove_invalid_paths_and_layers"], [106, 2, 1, "", "slice_model"], [107, 2, 1, "", "to_data"], [108, 2, 1, "", "to_json"]], "compas_slicer.utilities": [[109, 3, 1, "", "flattened_list_of_dictionary"], [110, 3, 1, "", "get_closest_mesh_normal_to_pt"], [111, 3, 1, "", "get_closest_pt"], [112, 3, 1, "", "get_closest_pt_index"], [113, 3, 1, "", "get_dict_key_from_value"], [114, 3, 1, "", "get_mesh_vertex_coords_with_attribute"], [115, 3, 1, "", "get_normal_of_path_on_xy_plane"], [116, 3, 1, "", "interrupt"], [117, 3, 1, "", "load_from_json"], [118, 3, 1, "", "plot_networkx_graph"], [119, 3, 1, "", "point_list_to_dict"], [120, 3, 1, "", "save_to_json"], [121, 3, 1, "", "smooth_vectors"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "function", "Python function"]}, "titleterms": {"api": 0, "refer": 0, "compas_slic": 1, "layer": [2, 3, 4, 5, 6], "__init__": [3, 8, 12, 29, 43, 71, 84, 97], "calculate_z_bound": 4, "from_data": [5, 9, 13, 74, 87, 100], "to_data": [6, 10, 15, 81, 94, 107], "path": [7, 8, 9, 10], "printpoint": [11, 12, 13, 14, 15, 136], "get_fram": 14, "generate_brim": 16, "generate_raft": 17, "reorder_vertical_lay": 18, "seams_align": 19, "seams_smooth": 20, "simplify_paths_rdp": 21, "sort_into_vertical_lay": 22, "sort_paths_minimum_travel_tim": 23, "spiralize_contour": 24, "zig_zag_open_path": 25, "get_mid_pt_bas": 26, "move_mesh_to_point": 27, "baseprintorgan": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 125], "create_printpoint": [30, 45], "get_printpoint_neighboring_item": [31, 47], "get_printpoint_up_vector": [32, 48], "get_printpoints_attribut": [33, 49], "number_of_paths_on_lay": [34, 50], "output_gcod": [35, 51], "output_nested_printpoints_dict": [36, 52], "output_printpoints_dict": [37, 53], "printout_info": [38, 54, 78, 91, 104], "printpoints_indices_iter": [39, 55], "printpoints_iter": [40, 56], "remove_duplicate_points_in_path": [41, 57], "interpolationprintorgan": [42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "create_base_boundari": 44, "get_layer_ppt": 46, "topological_sort": 58, "add_safety_printpoint": 59, "override_extruder_toggl": 60, "override_wait_tim": 61, "set_blend_radiu": 62, "set_extruder_toggl": 63, "set_linear_velocity_by_overhang": 64, "set_linear_velocity_by_rang": 65, "set_linear_velocity_const": 66, "set_linear_velocity_per_lay": 67, "set_wait_time_based_on_extruder_toggl": 68, "set_wait_time_on_sharp_corn": 69, "baseslic": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 126], "close_path": [72, 85, 98], "find_vertical_layers_with_first_path_on_bas": [73, 86, 99], "generate_path": [75, 88, 101], "get_layers_dict": [76, 89, 102], "post_process": [77, 90, 103, 123], "remove_invalid_paths_and_lay": [79, 92, 105], "slice_model": [80, 93, 106], "to_json": [82, 95, 108], "interpolationslic": [83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], "planarslic": [96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108], "flattened_list_of_dictionari": 109, "get_closest_mesh_normal_to_pt": 110, "get_closest_pt": 111, "get_closest_pt_index": 112, "get_dict_key_from_valu": 113, "get_mesh_vertex_coords_with_attribut": 114, "get_normal_of_path_on_xy_plan": 115, "interrupt": 116, "load_from_json": 117, "plot_networkx_graph": 118, "point_list_to_dict": 119, "save_to_json": 120, "smooth_vector": 121, "geometri": [122, 141], "class": [122, 125, 126], "polylin": 123, "simplif": 123, "sort": [123, 133], "addit": 123, "pre_process": 124, "posit": 124, "print_organ": 125, "function": 125, "slicer": [126, 138, 141], "util": 127, "cite": 128, "develop": 129, "guid": 129, "exampl": 130, "simpl": [131, 132], "planar": [131, 133, 135, 138], "slice": [131, 132, 133, 135], "import": [131, 132], "initi": [131, 132], "process": [131, 132], "print": [131, 132, 141], "organ": [131, 132, 141], "final": [131, 132], "script": [131, 132], "curv": 132, "interpol": 132, "vertic": 133, "gcode": 134, "gener": 134, "non": 135, "custom": 135, "base": 135, "transfer": 136, "attribut": 136, "overview": [137, 141, 142], "tabl": 137, "content": 137, "instal": [138, 142], "basic": 138, "step": 138, "1": 138, "compa": 138, "4": 138, "test": 138, "librari": 138, "work": 138, "troubleshoot": 138, "microsoft": 138, "visual": [138, 141, 142], "c": 138, "build": 138, "tool": 138, "numpi": 138, "error": 138, "fraction": 138, "licens": 139, "tutori": 140, "introduct": 141, "folder": 141, "structur": 141, "grasshopp": 142, "workflow": 142, "compon": 142}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "sphinx": 58}, "alltitles": {"API Reference": [[0, "api-reference"]], "compas_slicer": [[1, "compas-slicer"]], "Layer": [[2, "layer"]], "Layer.__init__": [[3, "layer-init"]], "Layer.calculate_z_bounds": [[4, "layer-calculate-z-bounds"]], "Layer.from_data": [[5, "layer-from-data"]], "Layer.to_data": [[6, "layer-to-data"]], "Path": [[7, "path"]], "Path.__init__": [[8, "path-init"]], "Path.from_data": [[9, "path-from-data"]], "Path.to_data": [[10, "path-to-data"]], "PrintPoint": [[11, "printpoint"]], "PrintPoint.__init__": [[12, "printpoint-init"]], "PrintPoint.from_data": [[13, "printpoint-from-data"]], "PrintPoint.get_frame": [[14, "printpoint-get-frame"]], "PrintPoint.to_data": [[15, "printpoint-to-data"]], "generate_brim": [[16, "generate-brim"]], "generate_raft": [[17, "generate-raft"]], "reorder_vertical_layers": [[18, "reorder-vertical-layers"]], "seams_align": [[19, "seams-align"]], "seams_smooth": [[20, "seams-smooth"]], "simplify_paths_rdp": [[21, "simplify-paths-rdp"]], "sort_into_vertical_layers": [[22, "sort-into-vertical-layers"]], "sort_paths_minimum_travel_time": [[23, "sort-paths-minimum-travel-time"]], "spiralize_contours": [[24, "spiralize-contours"]], "zig_zag_open_paths": [[25, "zig-zag-open-paths"]], "get_mid_pt_base": [[26, "get-mid-pt-base"]], "move_mesh_to_point": [[27, "move-mesh-to-point"]], "BasePrintOrganizer": [[28, "baseprintorganizer"], [125, "baseprintorganizer"]], "BasePrintOrganizer.__init__": [[29, "baseprintorganizer-init"]], "BasePrintOrganizer.create_printpoints": [[30, "baseprintorganizer-create-printpoints"]], "BasePrintOrganizer.get_printpoint_neighboring_items": [[31, "baseprintorganizer-get-printpoint-neighboring-items"]], "BasePrintOrganizer.get_printpoint_up_vector": [[32, "baseprintorganizer-get-printpoint-up-vector"]], "BasePrintOrganizer.get_printpoints_attribute": [[33, "baseprintorganizer-get-printpoints-attribute"]], "BasePrintOrganizer.number_of_paths_on_layer": [[34, "baseprintorganizer-number-of-paths-on-layer"]], "BasePrintOrganizer.output_gcode": [[35, "baseprintorganizer-output-gcode"]], "BasePrintOrganizer.output_nested_printpoints_dict": [[36, "baseprintorganizer-output-nested-printpoints-dict"]], "BasePrintOrganizer.output_printpoints_dict": [[37, "baseprintorganizer-output-printpoints-dict"]], "BasePrintOrganizer.printout_info": [[38, "baseprintorganizer-printout-info"]], "BasePrintOrganizer.printpoints_indices_iterator": [[39, "baseprintorganizer-printpoints-indices-iterator"]], "BasePrintOrganizer.printpoints_iterator": [[40, "baseprintorganizer-printpoints-iterator"]], "BasePrintOrganizer.remove_duplicate_points_in_path": [[41, "baseprintorganizer-remove-duplicate-points-in-path"]], "InterpolationPrintOrganizer": [[42, "interpolationprintorganizer"]], "InterpolationPrintOrganizer.__init__": [[43, "interpolationprintorganizer-init"]], "InterpolationPrintOrganizer.create_base_boundaries": [[44, "interpolationprintorganizer-create-base-boundaries"]], "InterpolationPrintOrganizer.create_printpoints": [[45, "interpolationprintorganizer-create-printpoints"]], "InterpolationPrintOrganizer.get_layer_ppts": [[46, "interpolationprintorganizer-get-layer-ppts"]], "InterpolationPrintOrganizer.get_printpoint_neighboring_items": [[47, "interpolationprintorganizer-get-printpoint-neighboring-items"]], "InterpolationPrintOrganizer.get_printpoint_up_vector": [[48, "interpolationprintorganizer-get-printpoint-up-vector"]], "InterpolationPrintOrganizer.get_printpoints_attribute": [[49, "interpolationprintorganizer-get-printpoints-attribute"]], "InterpolationPrintOrganizer.number_of_paths_on_layer": [[50, "interpolationprintorganizer-number-of-paths-on-layer"]], "InterpolationPrintOrganizer.output_gcode": [[51, "interpolationprintorganizer-output-gcode"]], "InterpolationPrintOrganizer.output_nested_printpoints_dict": [[52, "interpolationprintorganizer-output-nested-printpoints-dict"]], "InterpolationPrintOrganizer.output_printpoints_dict": [[53, "interpolationprintorganizer-output-printpoints-dict"]], "InterpolationPrintOrganizer.printout_info": [[54, "interpolationprintorganizer-printout-info"]], "InterpolationPrintOrganizer.printpoints_indices_iterator": [[55, "interpolationprintorganizer-printpoints-indices-iterator"]], "InterpolationPrintOrganizer.printpoints_iterator": [[56, "interpolationprintorganizer-printpoints-iterator"]], "InterpolationPrintOrganizer.remove_duplicate_points_in_path": [[57, "interpolationprintorganizer-remove-duplicate-points-in-path"]], "InterpolationPrintOrganizer.topological_sorting": [[58, "interpolationprintorganizer-topological-sorting"]], "add_safety_printpoints": [[59, "add-safety-printpoints"]], "override_extruder_toggle": [[60, "override-extruder-toggle"]], "override_wait_time": [[61, "override-wait-time"]], "set_blend_radius": [[62, "set-blend-radius"]], "set_extruder_toggle": [[63, "set-extruder-toggle"]], "set_linear_velocity_by_overhang": [[64, "set-linear-velocity-by-overhang"]], "set_linear_velocity_by_range": [[65, "set-linear-velocity-by-range"]], "set_linear_velocity_constant": [[66, "set-linear-velocity-constant"]], "set_linear_velocity_per_layer": [[67, "set-linear-velocity-per-layer"]], "set_wait_time_based_on_extruder_toggle": [[68, "set-wait-time-based-on-extruder-toggle"]], "set_wait_time_on_sharp_corners": [[69, "set-wait-time-on-sharp-corners"]], "BaseSlicer": [[70, "baseslicer"], [126, "baseslicer"]], "BaseSlicer.__init__": [[71, "baseslicer-init"]], "BaseSlicer.close_paths": [[72, "baseslicer-close-paths"]], "BaseSlicer.find_vertical_layers_with_first_path_on_base": [[73, "baseslicer-find-vertical-layers-with-first-path-on-base"]], "BaseSlicer.from_data": [[74, "baseslicer-from-data"]], "BaseSlicer.generate_paths": [[75, "baseslicer-generate-paths"]], "BaseSlicer.get_layers_dict": [[76, "baseslicer-get-layers-dict"]], "BaseSlicer.post_processing": [[77, "baseslicer-post-processing"]], "BaseSlicer.printout_info": [[78, "baseslicer-printout-info"]], "BaseSlicer.remove_invalid_paths_and_layers": [[79, "baseslicer-remove-invalid-paths-and-layers"]], "BaseSlicer.slice_model": [[80, "baseslicer-slice-model"]], "BaseSlicer.to_data": [[81, "baseslicer-to-data"]], "BaseSlicer.to_json": [[82, "baseslicer-to-json"]], "InterpolationSlicer": [[83, "interpolationslicer"]], "InterpolationSlicer.__init__": [[84, "interpolationslicer-init"]], "InterpolationSlicer.close_paths": [[85, "interpolationslicer-close-paths"]], "InterpolationSlicer.find_vertical_layers_with_first_path_on_base": [[86, "interpolationslicer-find-vertical-layers-with-first-path-on-base"]], "InterpolationSlicer.from_data": [[87, "interpolationslicer-from-data"]], "InterpolationSlicer.generate_paths": [[88, "interpolationslicer-generate-paths"]], "InterpolationSlicer.get_layers_dict": [[89, "interpolationslicer-get-layers-dict"]], "InterpolationSlicer.post_processing": [[90, "interpolationslicer-post-processing"]], "InterpolationSlicer.printout_info": [[91, "interpolationslicer-printout-info"]], "InterpolationSlicer.remove_invalid_paths_and_layers": [[92, "interpolationslicer-remove-invalid-paths-and-layers"]], "InterpolationSlicer.slice_model": [[93, "interpolationslicer-slice-model"]], "InterpolationSlicer.to_data": [[94, "interpolationslicer-to-data"]], "InterpolationSlicer.to_json": [[95, "interpolationslicer-to-json"]], "PlanarSlicer": [[96, "planarslicer"]], "PlanarSlicer.__init__": [[97, "planarslicer-init"]], "PlanarSlicer.close_paths": [[98, "planarslicer-close-paths"]], "PlanarSlicer.find_vertical_layers_with_first_path_on_base": [[99, "planarslicer-find-vertical-layers-with-first-path-on-base"]], "PlanarSlicer.from_data": [[100, "planarslicer-from-data"]], "PlanarSlicer.generate_paths": [[101, "planarslicer-generate-paths"]], "PlanarSlicer.get_layers_dict": [[102, "planarslicer-get-layers-dict"]], "PlanarSlicer.post_processing": [[103, "planarslicer-post-processing"]], "PlanarSlicer.printout_info": [[104, "planarslicer-printout-info"]], "PlanarSlicer.remove_invalid_paths_and_layers": [[105, "planarslicer-remove-invalid-paths-and-layers"]], "PlanarSlicer.slice_model": [[106, "planarslicer-slice-model"]], "PlanarSlicer.to_data": [[107, "planarslicer-to-data"]], "PlanarSlicer.to_json": [[108, "planarslicer-to-json"]], "flattened_list_of_dictionary": [[109, "flattened-list-of-dictionary"]], "get_closest_mesh_normal_to_pt": [[110, "get-closest-mesh-normal-to-pt"]], "get_closest_pt": [[111, "get-closest-pt"]], "get_closest_pt_index": [[112, "get-closest-pt-index"]], "get_dict_key_from_value": [[113, "get-dict-key-from-value"]], "get_mesh_vertex_coords_with_attribute": [[114, "get-mesh-vertex-coords-with-attribute"]], "get_normal_of_path_on_xy_plane": [[115, "get-normal-of-path-on-xy-plane"]], "interrupt": [[116, "interrupt"]], "load_from_json": [[117, "load-from-json"]], "plot_networkx_graph": [[118, "plot-networkx-graph"]], "point_list_to_dict": [[119, "point-list-to-dict"]], "save_to_json": [[120, "save-to-json"]], "smooth_vectors": [[121, "smooth-vectors"]], "geometry": [[122, "geometry"]], "Classes": [[122, "classes"], [125, "classes"], [126, "classes"]], "post_processing": [[123, "post-processing"]], "Polyline simplification": [[123, "polyline-simplification"]], "Sorting": [[123, "sorting"]], "Additional": [[123, "additional"]], "pre_processing": [[124, "pre-processing"]], "Positioning": [[124, "positioning"]], "print_organization": [[125, "print-organization"]], "Functions": [[125, "functions"]], "slicers": [[126, "slicers"]], "utilities": [[127, "utilities"]], "utils": [[127, "utils"]], "Citing": [[128, "citing"]], "Developer Guide": [[129, "developer-guide"]], "Examples": [[130, "examples"]], "Simple planar slicing": [[131, "simple-planar-slicing"]], "Imports and initialization": [[131, "imports-and-initialization"], [132, "imports-and-initialization"]], "Slicing process": [[131, "slicing-process"], [132, "slicing-process"]], "Print organization": [[131, "print-organization"], [132, "print-organization"]], "Final script": [[131, "final-script"], [132, "final-script"]], "Simple curved interpolation slicing": [[132, "simple-curved-interpolation-slicing"]], "Planar slicing with vertical sorting": [[133, "planar-slicing-with-vertical-sorting"]], "Gcode generation": [[134, "gcode-generation"]], "Non-planar slicing on custom base": [[135, "non-planar-slicing-on-custom-base"]], "Transferring attributes to PrintPoints": [[136, "transferring-attributes-to-printpoints"]], "Overview": [[137, "overview"], [141, "overview"], [142, "overview"]], "Table of Contents": [[137, "table-of-contents"]], "Installation": [[138, "installation"], [142, "installation"]], "Basic installation steps": [[138, "basic-installation-steps"]], "Step 1: Install compas slicer": [[138, "step-1-install-compas-slicer"]], "Step 4. Test if the library works": [[138, "step-4-test-if-the-library-works"]], "Troubleshooting": [[138, "troubleshooting"]], "Installing Planarity": [[138, "installing-planarity"]], "Microsoft Visual C++ Build Tools": [[138, "microsoft-visual-c-build-tools"]], "Numpy error": [[138, "numpy-error"]], "Fractions error": [[138, "fractions-error"]], "License": [[139, "license"]], "Tutorials": [[140, "tutorials"]], "Introduction": [[141, "introduction"]], "Geometry": [[141, "geometry"]], "Slicers": [[141, "slicers"]], "Print organizers": [[141, "print-organizers"]], "Visualization": [[141, "visualization"]], "Folder structure": [[141, "folder-structure"]], "Visualization in grasshopper": [[142, "visualization-in-grasshopper"]], "Workflow": [[142, "workflow"]], "Components": [[142, "components"]]}, "indexentries": {"compas_slicer": [[1, "module-compas_slicer"]], "module": [[1, "module-compas_slicer"], [122, "module-compas_slicer.geometry"], [123, "module-compas_slicer.post_processing"], [124, "module-compas_slicer.pre_processing"], [125, "module-compas_slicer.print_organization"], [126, "module-compas_slicer.slicers"], [127, "module-compas_slicer.utilities"]], "layer (class in compas_slicer.geometry)": [[2, "compas_slicer.geometry.Layer"]], "__init__() (compas_slicer.geometry.layer method)": [[3, "compas_slicer.geometry.Layer.__init__"]], "calculate_z_bounds() (compas_slicer.geometry.layer method)": [[4, "compas_slicer.geometry.Layer.calculate_z_bounds"]], "from_data() (compas_slicer.geometry.layer class method)": [[5, "compas_slicer.geometry.Layer.from_data"]], "to_data() (compas_slicer.geometry.layer method)": [[6, "compas_slicer.geometry.Layer.to_data"]], "path (class in compas_slicer.geometry)": [[7, "compas_slicer.geometry.Path"]], "__init__() (compas_slicer.geometry.path method)": [[8, "compas_slicer.geometry.Path.__init__"]], "from_data() (compas_slicer.geometry.path class method)": [[9, "compas_slicer.geometry.Path.from_data"]], "to_data() (compas_slicer.geometry.path method)": [[10, "compas_slicer.geometry.Path.to_data"]], "printpoint (class in compas_slicer.geometry)": [[11, "compas_slicer.geometry.PrintPoint"]], "__init__() (compas_slicer.geometry.printpoint method)": [[12, "compas_slicer.geometry.PrintPoint.__init__"]], "from_data() (compas_slicer.geometry.printpoint class method)": [[13, "compas_slicer.geometry.PrintPoint.from_data"]], "get_frame() (compas_slicer.geometry.printpoint method)": [[14, "compas_slicer.geometry.PrintPoint.get_frame"]], "to_data() (compas_slicer.geometry.printpoint method)": [[15, "compas_slicer.geometry.PrintPoint.to_data"]], "generate_brim() (in module compas_slicer.post_processing)": [[16, "compas_slicer.post_processing.generate_brim"]], "generate_raft() (in module compas_slicer.post_processing)": [[17, "compas_slicer.post_processing.generate_raft"]], "reorder_vertical_layers() (in module compas_slicer.post_processing)": [[18, "compas_slicer.post_processing.reorder_vertical_layers"]], "seams_align() (in module compas_slicer.post_processing)": [[19, "compas_slicer.post_processing.seams_align"]], "seams_smooth() (in module compas_slicer.post_processing)": [[20, "compas_slicer.post_processing.seams_smooth"]], "simplify_paths_rdp() (in module compas_slicer.post_processing)": [[21, "compas_slicer.post_processing.simplify_paths_rdp"]], "sort_into_vertical_layers() (in module compas_slicer.post_processing)": [[22, "compas_slicer.post_processing.sort_into_vertical_layers"]], "sort_paths_minimum_travel_time() (in module compas_slicer.post_processing)": [[23, "compas_slicer.post_processing.sort_paths_minimum_travel_time"]], "spiralize_contours() (in module compas_slicer.post_processing)": [[24, "compas_slicer.post_processing.spiralize_contours"]], "zig_zag_open_paths() (in module compas_slicer.post_processing)": [[25, "compas_slicer.post_processing.zig_zag_open_paths"]], "get_mid_pt_base() (in module compas_slicer.pre_processing)": [[26, "compas_slicer.pre_processing.get_mid_pt_base"]], "move_mesh_to_point() (in module compas_slicer.pre_processing)": [[27, "compas_slicer.pre_processing.move_mesh_to_point"]], "baseprintorganizer (class in compas_slicer.print_organization)": [[28, "compas_slicer.print_organization.BasePrintOrganizer"]], "__init__() (compas_slicer.print_organization.baseprintorganizer method)": [[29, "compas_slicer.print_organization.BasePrintOrganizer.__init__"]], "create_printpoints() (compas_slicer.print_organization.baseprintorganizer method)": [[30, "compas_slicer.print_organization.BasePrintOrganizer.create_printpoints"]], "get_printpoint_neighboring_items() (compas_slicer.print_organization.baseprintorganizer method)": [[31, "compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_neighboring_items"]], "get_printpoint_up_vector() (compas_slicer.print_organization.baseprintorganizer method)": [[32, "compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_up_vector"]], "get_printpoints_attribute() (compas_slicer.print_organization.baseprintorganizer method)": [[33, "compas_slicer.print_organization.BasePrintOrganizer.get_printpoints_attribute"]], "number_of_paths_on_layer() (compas_slicer.print_organization.baseprintorganizer method)": [[34, "compas_slicer.print_organization.BasePrintOrganizer.number_of_paths_on_layer"]], "output_gcode() (compas_slicer.print_organization.baseprintorganizer method)": [[35, "compas_slicer.print_organization.BasePrintOrganizer.output_gcode"]], "output_nested_printpoints_dict() (compas_slicer.print_organization.baseprintorganizer method)": [[36, "compas_slicer.print_organization.BasePrintOrganizer.output_nested_printpoints_dict"]], "output_printpoints_dict() (compas_slicer.print_organization.baseprintorganizer method)": [[37, "compas_slicer.print_organization.BasePrintOrganizer.output_printpoints_dict"]], "printout_info() (compas_slicer.print_organization.baseprintorganizer method)": [[38, "compas_slicer.print_organization.BasePrintOrganizer.printout_info"]], "printpoints_indices_iterator() (compas_slicer.print_organization.baseprintorganizer method)": [[39, "compas_slicer.print_organization.BasePrintOrganizer.printpoints_indices_iterator"]], "printpoints_iterator() (compas_slicer.print_organization.baseprintorganizer method)": [[40, "compas_slicer.print_organization.BasePrintOrganizer.printpoints_iterator"]], "remove_duplicate_points_in_path() (compas_slicer.print_organization.baseprintorganizer method)": [[41, "compas_slicer.print_organization.BasePrintOrganizer.remove_duplicate_points_in_path"]], "interpolationprintorganizer (class in compas_slicer.print_organization)": [[42, "compas_slicer.print_organization.InterpolationPrintOrganizer"]], "__init__() (compas_slicer.print_organization.interpolationprintorganizer method)": [[43, "compas_slicer.print_organization.InterpolationPrintOrganizer.__init__"]], "create_base_boundaries() (compas_slicer.print_organization.interpolationprintorganizer method)": [[44, "compas_slicer.print_organization.InterpolationPrintOrganizer.create_base_boundaries"]], "create_printpoints() (compas_slicer.print_organization.interpolationprintorganizer method)": [[45, "compas_slicer.print_organization.InterpolationPrintOrganizer.create_printpoints"]], "get_layer_ppts() (compas_slicer.print_organization.interpolationprintorganizer method)": [[46, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_layer_ppts"]], "get_printpoint_neighboring_items() (compas_slicer.print_organization.interpolationprintorganizer method)": [[47, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_neighboring_items"]], "get_printpoint_up_vector() (compas_slicer.print_organization.interpolationprintorganizer method)": [[48, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_up_vector"]], "get_printpoints_attribute() (compas_slicer.print_organization.interpolationprintorganizer method)": [[49, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoints_attribute"]], "number_of_paths_on_layer() (compas_slicer.print_organization.interpolationprintorganizer method)": [[50, "compas_slicer.print_organization.InterpolationPrintOrganizer.number_of_paths_on_layer"]], "output_gcode() (compas_slicer.print_organization.interpolationprintorganizer method)": [[51, "compas_slicer.print_organization.InterpolationPrintOrganizer.output_gcode"]], "output_nested_printpoints_dict() (compas_slicer.print_organization.interpolationprintorganizer method)": [[52, "compas_slicer.print_organization.InterpolationPrintOrganizer.output_nested_printpoints_dict"]], "output_printpoints_dict() (compas_slicer.print_organization.interpolationprintorganizer method)": [[53, "compas_slicer.print_organization.InterpolationPrintOrganizer.output_printpoints_dict"]], "printout_info() (compas_slicer.print_organization.interpolationprintorganizer method)": [[54, "compas_slicer.print_organization.InterpolationPrintOrganizer.printout_info"]], "printpoints_indices_iterator() (compas_slicer.print_organization.interpolationprintorganizer method)": [[55, "compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_indices_iterator"]], "printpoints_iterator() (compas_slicer.print_organization.interpolationprintorganizer method)": [[56, "compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_iterator"]], "remove_duplicate_points_in_path() (compas_slicer.print_organization.interpolationprintorganizer method)": [[57, "compas_slicer.print_organization.InterpolationPrintOrganizer.remove_duplicate_points_in_path"]], "topological_sorting() (compas_slicer.print_organization.interpolationprintorganizer method)": [[58, "compas_slicer.print_organization.InterpolationPrintOrganizer.topological_sorting"]], "add_safety_printpoints() (in module compas_slicer.print_organization)": [[59, "compas_slicer.print_organization.add_safety_printpoints"]], "override_extruder_toggle() (in module compas_slicer.print_organization)": [[60, "compas_slicer.print_organization.override_extruder_toggle"]], "override_wait_time() (in module compas_slicer.print_organization)": [[61, "compas_slicer.print_organization.override_wait_time"]], "set_blend_radius() (in module compas_slicer.print_organization)": [[62, "compas_slicer.print_organization.set_blend_radius"]], "set_extruder_toggle() (in module compas_slicer.print_organization)": [[63, "compas_slicer.print_organization.set_extruder_toggle"]], "set_linear_velocity_by_overhang() (in module compas_slicer.print_organization)": [[64, "compas_slicer.print_organization.set_linear_velocity_by_overhang"]], "set_linear_velocity_by_range() (in module compas_slicer.print_organization)": [[65, "compas_slicer.print_organization.set_linear_velocity_by_range"]], "set_linear_velocity_constant() (in module compas_slicer.print_organization)": [[66, "compas_slicer.print_organization.set_linear_velocity_constant"]], "set_linear_velocity_per_layer() (in module compas_slicer.print_organization)": [[67, "compas_slicer.print_organization.set_linear_velocity_per_layer"]], "set_wait_time_based_on_extruder_toggle() (in module compas_slicer.print_organization)": [[68, "compas_slicer.print_organization.set_wait_time_based_on_extruder_toggle"]], "set_wait_time_on_sharp_corners() (in module compas_slicer.print_organization)": [[69, "compas_slicer.print_organization.set_wait_time_on_sharp_corners"]], "baseslicer (class in compas_slicer.slicers)": [[70, "compas_slicer.slicers.BaseSlicer"]], "__init__() (compas_slicer.slicers.baseslicer method)": [[71, "compas_slicer.slicers.BaseSlicer.__init__"]], "close_paths() (compas_slicer.slicers.baseslicer method)": [[72, "compas_slicer.slicers.BaseSlicer.close_paths"]], "find_vertical_layers_with_first_path_on_base() (compas_slicer.slicers.baseslicer method)": [[73, "compas_slicer.slicers.BaseSlicer.find_vertical_layers_with_first_path_on_base"]], "from_data() (compas_slicer.slicers.baseslicer class method)": [[74, "compas_slicer.slicers.BaseSlicer.from_data"]], "generate_paths() (compas_slicer.slicers.baseslicer method)": [[75, "compas_slicer.slicers.BaseSlicer.generate_paths"]], "get_layers_dict() (compas_slicer.slicers.baseslicer method)": [[76, "compas_slicer.slicers.BaseSlicer.get_layers_dict"]], "post_processing() (compas_slicer.slicers.baseslicer method)": [[77, "compas_slicer.slicers.BaseSlicer.post_processing"]], "printout_info() (compas_slicer.slicers.baseslicer method)": [[78, "compas_slicer.slicers.BaseSlicer.printout_info"]], "remove_invalid_paths_and_layers() (compas_slicer.slicers.baseslicer method)": [[79, "compas_slicer.slicers.BaseSlicer.remove_invalid_paths_and_layers"]], "slice_model() (compas_slicer.slicers.baseslicer method)": [[80, "compas_slicer.slicers.BaseSlicer.slice_model"]], "to_data() (compas_slicer.slicers.baseslicer method)": [[81, "compas_slicer.slicers.BaseSlicer.to_data"]], "to_json() (compas_slicer.slicers.baseslicer method)": [[82, "compas_slicer.slicers.BaseSlicer.to_json"]], "interpolationslicer (class in compas_slicer.slicers)": [[83, "compas_slicer.slicers.InterpolationSlicer"]], "__init__() (compas_slicer.slicers.interpolationslicer method)": [[84, "compas_slicer.slicers.InterpolationSlicer.__init__"]], "close_paths() (compas_slicer.slicers.interpolationslicer method)": [[85, "compas_slicer.slicers.InterpolationSlicer.close_paths"]], "find_vertical_layers_with_first_path_on_base() (compas_slicer.slicers.interpolationslicer method)": [[86, "compas_slicer.slicers.InterpolationSlicer.find_vertical_layers_with_first_path_on_base"]], "from_data() (compas_slicer.slicers.interpolationslicer class method)": [[87, "compas_slicer.slicers.InterpolationSlicer.from_data"]], "generate_paths() (compas_slicer.slicers.interpolationslicer method)": [[88, "compas_slicer.slicers.InterpolationSlicer.generate_paths"]], "get_layers_dict() (compas_slicer.slicers.interpolationslicer method)": [[89, "compas_slicer.slicers.InterpolationSlicer.get_layers_dict"]], "post_processing() (compas_slicer.slicers.interpolationslicer method)": [[90, "compas_slicer.slicers.InterpolationSlicer.post_processing"]], "printout_info() (compas_slicer.slicers.interpolationslicer method)": [[91, "compas_slicer.slicers.InterpolationSlicer.printout_info"]], "remove_invalid_paths_and_layers() (compas_slicer.slicers.interpolationslicer method)": [[92, "compas_slicer.slicers.InterpolationSlicer.remove_invalid_paths_and_layers"]], "slice_model() (compas_slicer.slicers.interpolationslicer method)": [[93, "compas_slicer.slicers.InterpolationSlicer.slice_model"]], "to_data() (compas_slicer.slicers.interpolationslicer method)": [[94, "compas_slicer.slicers.InterpolationSlicer.to_data"]], "to_json() (compas_slicer.slicers.interpolationslicer method)": [[95, "compas_slicer.slicers.InterpolationSlicer.to_json"]], "planarslicer (class in compas_slicer.slicers)": [[96, "compas_slicer.slicers.PlanarSlicer"]], "__init__() (compas_slicer.slicers.planarslicer method)": [[97, "compas_slicer.slicers.PlanarSlicer.__init__"]], "close_paths() (compas_slicer.slicers.planarslicer method)": [[98, "compas_slicer.slicers.PlanarSlicer.close_paths"]], "find_vertical_layers_with_first_path_on_base() (compas_slicer.slicers.planarslicer method)": [[99, "compas_slicer.slicers.PlanarSlicer.find_vertical_layers_with_first_path_on_base"]], "from_data() (compas_slicer.slicers.planarslicer class method)": [[100, "compas_slicer.slicers.PlanarSlicer.from_data"]], "generate_paths() (compas_slicer.slicers.planarslicer method)": [[101, "compas_slicer.slicers.PlanarSlicer.generate_paths"]], "get_layers_dict() (compas_slicer.slicers.planarslicer method)": [[102, "compas_slicer.slicers.PlanarSlicer.get_layers_dict"]], "post_processing() (compas_slicer.slicers.planarslicer method)": [[103, "compas_slicer.slicers.PlanarSlicer.post_processing"]], "printout_info() (compas_slicer.slicers.planarslicer method)": [[104, "compas_slicer.slicers.PlanarSlicer.printout_info"]], "remove_invalid_paths_and_layers() (compas_slicer.slicers.planarslicer method)": [[105, "compas_slicer.slicers.PlanarSlicer.remove_invalid_paths_and_layers"]], "slice_model() (compas_slicer.slicers.planarslicer method)": [[106, "compas_slicer.slicers.PlanarSlicer.slice_model"]], "to_data() (compas_slicer.slicers.planarslicer method)": [[107, "compas_slicer.slicers.PlanarSlicer.to_data"]], "to_json() (compas_slicer.slicers.planarslicer method)": [[108, "compas_slicer.slicers.PlanarSlicer.to_json"]], "flattened_list_of_dictionary() (in module compas_slicer.utilities)": [[109, "compas_slicer.utilities.flattened_list_of_dictionary"]], "get_closest_mesh_normal_to_pt() (in module compas_slicer.utilities)": [[110, "compas_slicer.utilities.get_closest_mesh_normal_to_pt"]], "get_closest_pt() (in module compas_slicer.utilities)": [[111, "compas_slicer.utilities.get_closest_pt"]], "get_closest_pt_index() (in module compas_slicer.utilities)": [[112, "compas_slicer.utilities.get_closest_pt_index"]], "get_dict_key_from_value() (in module compas_slicer.utilities)": [[113, "compas_slicer.utilities.get_dict_key_from_value"]], "get_mesh_vertex_coords_with_attribute() (in module compas_slicer.utilities)": [[114, "compas_slicer.utilities.get_mesh_vertex_coords_with_attribute"]], "get_normal_of_path_on_xy_plane() (in module compas_slicer.utilities)": [[115, "compas_slicer.utilities.get_normal_of_path_on_xy_plane"]], "interrupt() (in module compas_slicer.utilities)": [[116, "compas_slicer.utilities.interrupt"]], "load_from_json() (in module compas_slicer.utilities)": [[117, "compas_slicer.utilities.load_from_json"]], "plot_networkx_graph() (in module compas_slicer.utilities)": [[118, "compas_slicer.utilities.plot_networkx_graph"]], "point_list_to_dict() (in module compas_slicer.utilities)": [[119, "compas_slicer.utilities.point_list_to_dict"]], "save_to_json() (in module compas_slicer.utilities)": [[120, "compas_slicer.utilities.save_to_json"]], "smooth_vectors() (in module compas_slicer.utilities)": [[121, "compas_slicer.utilities.smooth_vectors"]], "compas_slicer.geometry": [[122, "module-compas_slicer.geometry"]], "compas_slicer.post_processing": [[123, "module-compas_slicer.post_processing"]], "compas_slicer.pre_processing": [[124, "module-compas_slicer.pre_processing"]], "compas_slicer.print_organization": [[125, "module-compas_slicer.print_organization"]], "compas_slicer.slicers": [[126, "module-compas_slicer.slicers"]], "compas_slicer.utilities": [[127, "module-compas_slicer.utilities"]]}})
\ No newline at end of file
+Search.setIndex({"docnames": ["api", "api/compas_slicer", "api/generated/compas_slicer.geometry.Layer", "api/generated/compas_slicer.geometry.Layer.__init__", "api/generated/compas_slicer.geometry.Layer.calculate_z_bounds", "api/generated/compas_slicer.geometry.Layer.from_data", "api/generated/compas_slicer.geometry.Layer.to_data", "api/generated/compas_slicer.geometry.Path", "api/generated/compas_slicer.geometry.Path.__init__", "api/generated/compas_slicer.geometry.Path.from_data", "api/generated/compas_slicer.geometry.Path.to_data", "api/generated/compas_slicer.geometry.PrintPoint", "api/generated/compas_slicer.geometry.PrintPoint.__init__", "api/generated/compas_slicer.geometry.PrintPoint.from_data", "api/generated/compas_slicer.geometry.PrintPoint.get_frame", "api/generated/compas_slicer.geometry.PrintPoint.to_data", "api/generated/compas_slicer.post_processing.generate_brim", "api/generated/compas_slicer.post_processing.generate_raft", "api/generated/compas_slicer.post_processing.reorder_vertical_layers", "api/generated/compas_slicer.post_processing.seams_align", "api/generated/compas_slicer.post_processing.seams_smooth", "api/generated/compas_slicer.post_processing.simplify_paths_rdp", "api/generated/compas_slicer.post_processing.sort_into_vertical_layers", "api/generated/compas_slicer.post_processing.sort_paths_minimum_travel_time", "api/generated/compas_slicer.post_processing.spiralize_contours", "api/generated/compas_slicer.post_processing.zig_zag_open_paths", "api/generated/compas_slicer.pre_processing.get_mid_pt_base", "api/generated/compas_slicer.pre_processing.move_mesh_to_point", "api/generated/compas_slicer.print_organization.BasePrintOrganizer", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.__init__", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.create_printpoints", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_neighboring_items", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_up_vector", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoints_attribute", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.number_of_paths_on_layer", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_gcode", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_nested_printpoints_dict", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_printpoints_dict", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printout_info", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_indices_iterator", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_iterator", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.remove_duplicate_points_in_path", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.__init__", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_base_boundaries", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_printpoints", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_layer_ppts", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_neighboring_items", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_up_vector", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoints_attribute", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.number_of_paths_on_layer", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_gcode", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_nested_printpoints_dict", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_printpoints_dict", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printout_info", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_indices_iterator", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_iterator", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.remove_duplicate_points_in_path", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.topological_sorting", "api/generated/compas_slicer.print_organization.add_safety_printpoints", "api/generated/compas_slicer.print_organization.override_extruder_toggle", "api/generated/compas_slicer.print_organization.override_wait_time", "api/generated/compas_slicer.print_organization.set_blend_radius", "api/generated/compas_slicer.print_organization.set_extruder_toggle", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_overhang", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_range", "api/generated/compas_slicer.print_organization.set_linear_velocity_constant", "api/generated/compas_slicer.print_organization.set_linear_velocity_per_layer", "api/generated/compas_slicer.print_organization.set_wait_time_based_on_extruder_toggle", "api/generated/compas_slicer.print_organization.set_wait_time_on_sharp_corners", "api/generated/compas_slicer.slicers.BaseSlicer", "api/generated/compas_slicer.slicers.BaseSlicer.__init__", "api/generated/compas_slicer.slicers.BaseSlicer.close_paths", "api/generated/compas_slicer.slicers.BaseSlicer.find_vertical_layers_with_first_path_on_base", "api/generated/compas_slicer.slicers.BaseSlicer.from_data", "api/generated/compas_slicer.slicers.BaseSlicer.generate_paths", "api/generated/compas_slicer.slicers.BaseSlicer.get_layers_dict", "api/generated/compas_slicer.slicers.BaseSlicer.post_processing", "api/generated/compas_slicer.slicers.BaseSlicer.printout_info", "api/generated/compas_slicer.slicers.BaseSlicer.remove_invalid_paths_and_layers", "api/generated/compas_slicer.slicers.BaseSlicer.slice_model", "api/generated/compas_slicer.slicers.BaseSlicer.to_data", "api/generated/compas_slicer.slicers.BaseSlicer.to_json", "api/generated/compas_slicer.slicers.InterpolationSlicer", "api/generated/compas_slicer.slicers.InterpolationSlicer.__init__", "api/generated/compas_slicer.slicers.InterpolationSlicer.close_paths", "api/generated/compas_slicer.slicers.InterpolationSlicer.find_vertical_layers_with_first_path_on_base", "api/generated/compas_slicer.slicers.InterpolationSlicer.from_data", "api/generated/compas_slicer.slicers.InterpolationSlicer.generate_paths", "api/generated/compas_slicer.slicers.InterpolationSlicer.get_layers_dict", "api/generated/compas_slicer.slicers.InterpolationSlicer.post_processing", "api/generated/compas_slicer.slicers.InterpolationSlicer.printout_info", "api/generated/compas_slicer.slicers.InterpolationSlicer.remove_invalid_paths_and_layers", "api/generated/compas_slicer.slicers.InterpolationSlicer.slice_model", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_data", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_json", "api/generated/compas_slicer.slicers.PlanarSlicer", "api/generated/compas_slicer.slicers.PlanarSlicer.__init__", "api/generated/compas_slicer.slicers.PlanarSlicer.close_paths", "api/generated/compas_slicer.slicers.PlanarSlicer.find_vertical_layers_with_first_path_on_base", "api/generated/compas_slicer.slicers.PlanarSlicer.from_data", "api/generated/compas_slicer.slicers.PlanarSlicer.generate_paths", "api/generated/compas_slicer.slicers.PlanarSlicer.get_layers_dict", "api/generated/compas_slicer.slicers.PlanarSlicer.post_processing", "api/generated/compas_slicer.slicers.PlanarSlicer.printout_info", "api/generated/compas_slicer.slicers.PlanarSlicer.remove_invalid_paths_and_layers", "api/generated/compas_slicer.slicers.PlanarSlicer.slice_model", "api/generated/compas_slicer.slicers.PlanarSlicer.to_data", "api/generated/compas_slicer.slicers.PlanarSlicer.to_json", "api/generated/compas_slicer.utilities.flattened_list_of_dictionary", "api/generated/compas_slicer.utilities.get_closest_mesh_normal_to_pt", "api/generated/compas_slicer.utilities.get_closest_pt", "api/generated/compas_slicer.utilities.get_closest_pt_index", "api/generated/compas_slicer.utilities.get_dict_key_from_value", "api/generated/compas_slicer.utilities.get_mesh_vertex_coords_with_attribute", "api/generated/compas_slicer.utilities.get_normal_of_path_on_xy_plane", "api/generated/compas_slicer.utilities.interrupt", "api/generated/compas_slicer.utilities.load_from_json", "api/generated/compas_slicer.utilities.plot_networkx_graph", "api/generated/compas_slicer.utilities.point_list_to_dict", "api/generated/compas_slicer.utilities.save_to_json", "api/generated/compas_slicer.utilities.smooth_vectors", "api/geometry", "api/post_processing", "api/pre_processing", "api/print_organization", "api/slicers", "api/utilities", "citing", "devguide", "examples", "examples/01_planar_slicing_simple", "examples/02_curved_slicing_simple", "examples/03_planar_slicing_vertical_sorting", "examples/04_gcode_generation", "examples/05_non_planar_slicing_on_custom_base", "examples/06_attributes_transfer", "index", "installation", "license", "tutorials", "tutorials/01_introduction", "tutorials/02_grasshopper_visualization"], "filenames": ["api.rst", "api/compas_slicer.rst", "api/generated/compas_slicer.geometry.Layer.rst", "api/generated/compas_slicer.geometry.Layer.__init__.rst", "api/generated/compas_slicer.geometry.Layer.calculate_z_bounds.rst", "api/generated/compas_slicer.geometry.Layer.from_data.rst", "api/generated/compas_slicer.geometry.Layer.to_data.rst", "api/generated/compas_slicer.geometry.Path.rst", "api/generated/compas_slicer.geometry.Path.__init__.rst", "api/generated/compas_slicer.geometry.Path.from_data.rst", "api/generated/compas_slicer.geometry.Path.to_data.rst", "api/generated/compas_slicer.geometry.PrintPoint.rst", "api/generated/compas_slicer.geometry.PrintPoint.__init__.rst", "api/generated/compas_slicer.geometry.PrintPoint.from_data.rst", "api/generated/compas_slicer.geometry.PrintPoint.get_frame.rst", "api/generated/compas_slicer.geometry.PrintPoint.to_data.rst", "api/generated/compas_slicer.post_processing.generate_brim.rst", "api/generated/compas_slicer.post_processing.generate_raft.rst", "api/generated/compas_slicer.post_processing.reorder_vertical_layers.rst", "api/generated/compas_slicer.post_processing.seams_align.rst", "api/generated/compas_slicer.post_processing.seams_smooth.rst", "api/generated/compas_slicer.post_processing.simplify_paths_rdp.rst", "api/generated/compas_slicer.post_processing.sort_into_vertical_layers.rst", "api/generated/compas_slicer.post_processing.sort_paths_minimum_travel_time.rst", "api/generated/compas_slicer.post_processing.spiralize_contours.rst", "api/generated/compas_slicer.post_processing.zig_zag_open_paths.rst", "api/generated/compas_slicer.pre_processing.get_mid_pt_base.rst", "api/generated/compas_slicer.pre_processing.move_mesh_to_point.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.__init__.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.create_printpoints.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_neighboring_items.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_up_vector.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.get_printpoints_attribute.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.number_of_paths_on_layer.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_gcode.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_nested_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.output_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printout_info.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_indices_iterator.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.printpoints_iterator.rst", "api/generated/compas_slicer.print_organization.BasePrintOrganizer.remove_duplicate_points_in_path.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.__init__.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_base_boundaries.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.create_printpoints.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_layer_ppts.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_neighboring_items.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_up_vector.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoints_attribute.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.number_of_paths_on_layer.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_gcode.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_nested_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.output_printpoints_dict.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printout_info.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_indices_iterator.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_iterator.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.remove_duplicate_points_in_path.rst", "api/generated/compas_slicer.print_organization.InterpolationPrintOrganizer.topological_sorting.rst", "api/generated/compas_slicer.print_organization.add_safety_printpoints.rst", "api/generated/compas_slicer.print_organization.override_extruder_toggle.rst", "api/generated/compas_slicer.print_organization.override_wait_time.rst", "api/generated/compas_slicer.print_organization.set_blend_radius.rst", "api/generated/compas_slicer.print_organization.set_extruder_toggle.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_overhang.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_by_range.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_constant.rst", "api/generated/compas_slicer.print_organization.set_linear_velocity_per_layer.rst", "api/generated/compas_slicer.print_organization.set_wait_time_based_on_extruder_toggle.rst", "api/generated/compas_slicer.print_organization.set_wait_time_on_sharp_corners.rst", "api/generated/compas_slicer.slicers.BaseSlicer.rst", "api/generated/compas_slicer.slicers.BaseSlicer.__init__.rst", "api/generated/compas_slicer.slicers.BaseSlicer.close_paths.rst", "api/generated/compas_slicer.slicers.BaseSlicer.find_vertical_layers_with_first_path_on_base.rst", "api/generated/compas_slicer.slicers.BaseSlicer.from_data.rst", "api/generated/compas_slicer.slicers.BaseSlicer.generate_paths.rst", "api/generated/compas_slicer.slicers.BaseSlicer.get_layers_dict.rst", "api/generated/compas_slicer.slicers.BaseSlicer.post_processing.rst", "api/generated/compas_slicer.slicers.BaseSlicer.printout_info.rst", "api/generated/compas_slicer.slicers.BaseSlicer.remove_invalid_paths_and_layers.rst", "api/generated/compas_slicer.slicers.BaseSlicer.slice_model.rst", "api/generated/compas_slicer.slicers.BaseSlicer.to_data.rst", "api/generated/compas_slicer.slicers.BaseSlicer.to_json.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.__init__.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.close_paths.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.find_vertical_layers_with_first_path_on_base.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.from_data.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.generate_paths.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.get_layers_dict.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.post_processing.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.printout_info.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.remove_invalid_paths_and_layers.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.slice_model.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_data.rst", "api/generated/compas_slicer.slicers.InterpolationSlicer.to_json.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.__init__.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.close_paths.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.find_vertical_layers_with_first_path_on_base.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.from_data.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.generate_paths.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.get_layers_dict.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.post_processing.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.printout_info.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.remove_invalid_paths_and_layers.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.slice_model.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.to_data.rst", "api/generated/compas_slicer.slicers.PlanarSlicer.to_json.rst", "api/generated/compas_slicer.utilities.flattened_list_of_dictionary.rst", "api/generated/compas_slicer.utilities.get_closest_mesh_normal_to_pt.rst", "api/generated/compas_slicer.utilities.get_closest_pt.rst", "api/generated/compas_slicer.utilities.get_closest_pt_index.rst", "api/generated/compas_slicer.utilities.get_dict_key_from_value.rst", "api/generated/compas_slicer.utilities.get_mesh_vertex_coords_with_attribute.rst", "api/generated/compas_slicer.utilities.get_normal_of_path_on_xy_plane.rst", "api/generated/compas_slicer.utilities.interrupt.rst", "api/generated/compas_slicer.utilities.load_from_json.rst", "api/generated/compas_slicer.utilities.plot_networkx_graph.rst", "api/generated/compas_slicer.utilities.point_list_to_dict.rst", "api/generated/compas_slicer.utilities.save_to_json.rst", "api/generated/compas_slicer.utilities.smooth_vectors.rst", "api/geometry.rst", "api/post_processing.rst", "api/pre_processing.rst", "api/print_organization.rst", "api/slicers.rst", "api/utilities.rst", "citing.rst", "devguide.rst", "examples.rst", "examples/01_planar_slicing_simple.rst", "examples/02_curved_slicing_simple.rst", "examples/03_planar_slicing_vertical_sorting.rst", "examples/04_gcode_generation.rst", "examples/05_non_planar_slicing_on_custom_base.rst", "examples/06_attributes_transfer.rst", "index.rst", "installation.rst", "license.rst", "tutorials.rst", "tutorials/01_introduction.rst", "tutorials/02_grasshopper_visualization.rst"], "titles": ["API Reference", "compas_slicer", "Layer", "Layer.__init__", "Layer.calculate_z_bounds", "Layer.from_data", "Layer.to_data", "Path", "Path.__init__", "Path.from_data", "Path.to_data", "PrintPoint", "PrintPoint.__init__", "PrintPoint.from_data", "PrintPoint.get_frame", "PrintPoint.to_data", "generate_brim", "generate_raft", "reorder_vertical_layers", "seams_align", "seams_smooth", "simplify_paths_rdp", "sort_into_vertical_layers", "sort_paths_minimum_travel_time", "spiralize_contours", "zig_zag_open_paths", "get_mid_pt_base", "move_mesh_to_point", "BasePrintOrganizer", "BasePrintOrganizer.__init__", "BasePrintOrganizer.create_printpoints", "BasePrintOrganizer.get_printpoint_neighboring_items", "BasePrintOrganizer.get_printpoint_up_vector", "BasePrintOrganizer.get_printpoints_attribute", "BasePrintOrganizer.number_of_paths_on_layer", "BasePrintOrganizer.output_gcode", "BasePrintOrganizer.output_nested_printpoints_dict", "BasePrintOrganizer.output_printpoints_dict", "BasePrintOrganizer.printout_info", "BasePrintOrganizer.printpoints_indices_iterator", "BasePrintOrganizer.printpoints_iterator", "BasePrintOrganizer.remove_duplicate_points_in_path", "InterpolationPrintOrganizer", "InterpolationPrintOrganizer.__init__", "InterpolationPrintOrganizer.create_base_boundaries", "InterpolationPrintOrganizer.create_printpoints", "InterpolationPrintOrganizer.get_layer_ppts", "InterpolationPrintOrganizer.get_printpoint_neighboring_items", "InterpolationPrintOrganizer.get_printpoint_up_vector", "InterpolationPrintOrganizer.get_printpoints_attribute", "InterpolationPrintOrganizer.number_of_paths_on_layer", "InterpolationPrintOrganizer.output_gcode", "InterpolationPrintOrganizer.output_nested_printpoints_dict", "InterpolationPrintOrganizer.output_printpoints_dict", "InterpolationPrintOrganizer.printout_info", "InterpolationPrintOrganizer.printpoints_indices_iterator", "InterpolationPrintOrganizer.printpoints_iterator", "InterpolationPrintOrganizer.remove_duplicate_points_in_path", "InterpolationPrintOrganizer.topological_sorting", "add_safety_printpoints", "override_extruder_toggle", "override_wait_time", "set_blend_radius", "set_extruder_toggle", "set_linear_velocity_by_overhang", "set_linear_velocity_by_range", "set_linear_velocity_constant", "set_linear_velocity_per_layer", "set_wait_time_based_on_extruder_toggle", "set_wait_time_on_sharp_corners", "BaseSlicer", "BaseSlicer.__init__", "BaseSlicer.close_paths", "BaseSlicer.find_vertical_layers_with_first_path_on_base", "BaseSlicer.from_data", "BaseSlicer.generate_paths", "BaseSlicer.get_layers_dict", "BaseSlicer.post_processing", "BaseSlicer.printout_info", "BaseSlicer.remove_invalid_paths_and_layers", "BaseSlicer.slice_model", "BaseSlicer.to_data", "BaseSlicer.to_json", "InterpolationSlicer", "InterpolationSlicer.__init__", "InterpolationSlicer.close_paths", "InterpolationSlicer.find_vertical_layers_with_first_path_on_base", "InterpolationSlicer.from_data", "InterpolationSlicer.generate_paths", "InterpolationSlicer.get_layers_dict", "InterpolationSlicer.post_processing", "InterpolationSlicer.printout_info", "InterpolationSlicer.remove_invalid_paths_and_layers", "InterpolationSlicer.slice_model", "InterpolationSlicer.to_data", "InterpolationSlicer.to_json", "PlanarSlicer", "PlanarSlicer.__init__", "PlanarSlicer.close_paths", "PlanarSlicer.find_vertical_layers_with_first_path_on_base", "PlanarSlicer.from_data", "PlanarSlicer.generate_paths", "PlanarSlicer.get_layers_dict", "PlanarSlicer.post_processing", "PlanarSlicer.printout_info", "PlanarSlicer.remove_invalid_paths_and_layers", "PlanarSlicer.slice_model", "PlanarSlicer.to_data", "PlanarSlicer.to_json", "flattened_list_of_dictionary", "get_closest_mesh_normal_to_pt", "get_closest_pt", "get_closest_pt_index", "get_dict_key_from_value", "get_mesh_vertex_coords_with_attribute", "get_normal_of_path_on_xy_plane", "interrupt", "load_from_json", "plot_networkx_graph", "point_list_to_dict", "save_to_json", "smooth_vectors", "geometry", "post_processing", "pre_processing", "print_organization", "slicers", "utilities", "Citing", "Developer Guide", "Examples", "1. Simple planar slicing", "2. Simple curved interpolation slicing", "3. Planar slicing with vertical sorting", "4. Gcode generation", "5. Non-planar slicing on custom base", "6. Transferring attributes to PrintPoints", "Overview", "Installation", "License", "Tutorials", "1. Introduction", "2. Visualization in grasshopper"], "terms": {"compas_slic": [0, 2, 7, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 31, 32, 39, 40, 42, 47, 48, 55, 56, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 83, 96, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 128, 130, 131, 132, 133, 134, 135, 136, 137, 138, 140, 141, 142], "geometri": [1, 2, 7, 11, 18, 19, 24, 26, 27, 31, 32, 39, 40, 47, 48, 55, 56, 65, 110, 111, 112, 114, 115, 119, 121, 131, 133, 134, 135, 136, 137, 142], "slicer": [1, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 28, 29, 42, 43, 62, 63, 70, 74, 79, 81, 82, 83, 87, 92, 94, 95, 96, 100, 105, 107, 108, 128, 131, 132, 133, 134, 135, 136, 137, 142], "print_organ": [1, 28, 42, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 131, 132, 133, 134, 135, 136, 137, 141], "pre_process": [1, 26, 27, 83, 131, 132, 133, 134, 137, 141], "post_process": [1, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 131, 132, 133, 134, 135, 136, 137, 141], "util": [1, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 131, 132, 133, 134, 135, 136, 137, 141], "class": [2, 7, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 30, 31, 39, 40, 42, 47, 55, 56, 58, 59, 65, 70, 75, 83, 96, 110, 111, 114, 115, 121, 131, 132, 141, 142], "path": [2, 3, 16, 19, 21, 22, 23, 25, 31, 32, 34, 39, 41, 45, 47, 48, 50, 55, 57, 58, 59, 68, 69, 72, 79, 80, 85, 88, 92, 93, 98, 101, 105, 106, 115, 122, 131, 132, 133, 134, 135, 136, 141, 142], "sourc": [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 88, 96, 97, 101, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 137, 139], "base": [2, 7, 11, 26, 28, 42, 45, 69, 70, 83, 96, 130, 137], "object": [2, 7, 11, 28, 70, 141], "A": [2, 7, 11, 16, 26, 27, 67, 122, 131, 132, 138, 139, 141], "store": [2, 113, 114, 142], "group": [2, 22, 141], "order": [2, 18, 45, 133, 138], "ar": [2, 7, 15, 22, 41, 57, 72, 85, 96, 98, 122, 131, 132, 133, 135, 136, 138, 141, 142], "gener": [2, 59, 83, 88, 96, 101, 122, 130, 131, 132, 135, 136, 137, 141, 142], "when": [2, 11, 58, 122, 131, 141, 142], "i": [2, 7, 11, 24, 28, 31, 32, 33, 39, 47, 48, 49, 55, 62, 64, 65, 70, 83, 96, 116, 122, 131, 132, 133, 134, 135, 136, 137, 138, 139, 141, 142], "slice": [2, 11, 70, 78, 80, 91, 93, 96, 101, 104, 106, 122, 128, 130, 134, 136, 137, 141, 142], "typic": [2, 16, 122, 131, 134], "organ": [2, 28, 39, 40, 42, 55, 56, 122, 134, 135], "horizont": [2, 22, 23, 64, 122, 133], "can": [2, 15, 22, 24, 25, 36, 37, 52, 53, 65, 83, 113, 114, 119, 122, 130, 131, 132, 133, 134, 136, 138, 139, 140, 141, 142], "also": [2, 122, 131, 134, 136], "vertic": [2, 11, 18, 22, 59, 114, 122, 130, 131, 135, 136, 137], "see": [2, 70, 131, 132, 136, 138, 141, 142], "verticallay": [2, 22, 141], "consist": [2, 7, 11, 22, 24, 58, 76, 89, 102, 122, 131, 141], "one": [2, 17, 18, 19, 20, 21, 22, 23, 44, 45, 122, 133, 135, 138, 141], "multipl": [2, 122, 131, 138, 141], "depend": [2, 65, 66, 67, 122, 131], "attribut": [2, 4, 7, 11, 15, 28, 33, 42, 49, 70, 83, 96, 114, 122, 130, 135, 137, 142], "list": [2, 7, 31, 33, 47, 49, 67, 109, 111, 112, 114, 119, 121, 122, 132, 135, 141], "is_brim": 2, "bool": [2, 7, 11, 60, 64, 65, 136], "true": [2, 7, 11, 64, 65, 68, 131, 132, 135, 136], "thi": [2, 11, 15, 28, 58, 64, 70, 131, 132, 135, 136, 138, 139, 141, 142], "brim": [2, 16, 131, 141], "number_of_brim_offset": [2, 16, 131, 132, 133, 134], "int": [2, 16, 17, 22, 31, 34, 39, 47, 50, 55, 112, 115, 121], "The": [2, 5, 6, 9, 10, 11, 13, 15, 22, 27, 31, 41, 47, 57, 65, 74, 81, 87, 94, 96, 100, 107, 110, 111, 112, 119, 121, 131, 132, 133, 134, 137, 138, 139, 141, 142], "number": [2, 16, 17, 22, 34, 50, 67, 121, 131, 132], "offset": [2, 17, 131, 135], "ha": [2, 22, 70, 131, 132, 134, 141], "none": [2, 17, 19, 22, 83, 84, 96, 97], "is_raft": 2, "raft": [2, 17, 131, 141], "inherit": [2, 7, 11, 28, 30, 42, 70, 75, 83, 96, 142], "method": [2, 7, 11, 28, 42, 70, 83, 96, 131, 132, 133, 141], "fill": 4, "self": 4, "min_max_z_height": 4, "classmethod": [5, 9, 13, 74, 87, 100], "data": [5, 6, 9, 10, 13, 15, 74, 81, 87, 94, 100, 107, 120, 131, 132, 133, 134, 135, 136, 142], "construct": [5, 9, 13, 74, 87, 100], "from": [5, 9, 13, 17, 18, 22, 38, 41, 45, 54, 57, 74, 78, 79, 87, 91, 92, 96, 100, 104, 105, 117, 131, 132, 133, 134, 135, 136, 138, 139, 142], "its": [5, 9, 13, 74, 87, 100, 135, 142], "represent": [5, 9, 13, 74, 87, 100], "paramet": [5, 9, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 32, 33, 35, 41, 42, 43, 48, 49, 51, 57, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 74, 83, 84, 87, 100, 109, 110, 111, 112, 113, 114, 115, 117, 118, 119, 120, 121, 131, 132, 134, 135, 136, 141], "dict": [5, 6, 9, 10, 13, 15, 35, 36, 37, 42, 51, 52, 53, 74, 81, 83, 87, 94, 100, 107, 109, 113, 119], "dictionari": [5, 6, 9, 10, 13, 15, 36, 37, 45, 52, 53, 74, 76, 81, 87, 89, 94, 100, 102, 107, 109, 113, 114, 119, 131, 132, 142], "return": [5, 6, 9, 10, 13, 14, 15, 19, 26, 31, 32, 33, 35, 36, 37, 47, 48, 49, 51, 52, 53, 65, 74, 76, 81, 87, 89, 94, 100, 102, 107, 109, 110, 111, 112, 113, 114, 115, 119, 121], "structur": [6, 10, 15, 81, 94, 107], "repres": [6, 10, 15, 16, 32, 48, 81, 94, 96, 107, 132], "": [6, 10, 11, 66, 81, 94, 107, 131, 132, 133, 134, 135, 136], "point": [7, 8, 11, 14, 18, 19, 20, 21, 22, 26, 27, 32, 41, 45, 48, 57, 59, 72, 85, 98, 110, 111, 112, 114, 115, 119, 122, 131, 133, 134, 135, 136, 141], "is_clos": [7, 8], "connect": [7, 58, 139], "contour": [7, 16, 24, 42, 83, 96, 122, 131, 132, 135, 141], "within": [7, 20, 23, 34, 41, 50, 57, 64, 122], "layer": [7, 11, 13, 16, 17, 18, 20, 22, 23, 31, 34, 39, 41, 46, 47, 50, 55, 57, 65, 67, 74, 76, 79, 87, 89, 92, 96, 100, 102, 105, 122, 131, 132, 133, 141], "compa": [7, 11, 18, 19, 26, 27, 32, 48, 60, 63, 70, 83, 96, 110, 111, 112, 114, 115, 119, 121, 122, 128, 131, 132, 133, 134, 135, 136, 137, 139, 141], "close": [7, 24, 72, 85, 98, 131, 141], "curv": [7, 11, 88, 115, 130, 137, 141], "fals": [7, 11, 68, 131, 132, 136], "open": [7, 25, 131, 137, 139, 141], "If": [7, 22, 65, 128, 138, 142], "first": [7, 17, 72, 85, 96, 98, 131], "last": [7, 72, 85, 98], "ident": [7, 72, 85, 98, 119], "pt": [11, 12, 110, 111, 112, 119, 135, 136], "layer_height": [11, 12, 96, 97, 131, 132, 133, 134, 136], "mesh_norm": [11, 12], "addit": [11, 122, 131, 137, 141], "relat": [11, 131, 134, 135, 141], "print": [11, 16, 17, 19, 22, 25, 28, 38, 39, 40, 42, 45, 54, 55, 56, 58, 59, 78, 91, 104, 122, 133, 134, 135, 136, 137, 142], "process": [11, 22, 28, 42, 45, 70, 77, 78, 80, 90, 91, 93, 103, 104, 106, 122, 133, 135, 136, 138, 141, 142], "out": [11, 24, 38, 54, 78, 91, 104, 122, 131, 139, 141], "x": [11, 14, 18, 19, 119], "y": [11, 14, 18, 19, 119, 136], "z": [11, 18, 19, 96, 119, 131, 141], "coordin": [11, 114, 135, 136], "float": [11, 16, 17, 20, 21, 22, 41, 57, 59, 61, 62, 66, 67, 68, 69, 96, 121, 136], "distanc": [11, 16, 17, 20, 41, 57, 59, 96, 135, 136], "between": [11, 16, 17, 20, 41, 57, 96, 131, 135, 138, 139, 141], "previou": [11, 131], "For": [11, 64, 72, 85, 98, 131, 138], "planar": [11, 24, 42, 83, 96, 101, 130, 132, 137, 141], "absolut": [11, 96], "vector": [11, 32, 48, 110, 115, 119, 121, 136], "normal": [11, 14, 32, 48, 110, 115], "mesh": [11, 14, 26, 27, 70, 71, 83, 84, 96, 97, 110, 114, 115, 131, 132, 133, 134, 135, 136], "planar_sl": 11, "project": [11, 128, 135, 136, 137, 138, 139, 142], "xy": [11, 96, 115, 141], "plane": [11, 96, 115, 136, 141], "todo": [11, 15], "should": [11, 17, 64, 131], "we": [11, 83, 131, 132, 134, 135, 136, 142], "chang": [11, 131], "up_vector": 11, "up": [11, 14, 32, 48, 64, 131, 132], "direct": [11, 17, 19, 32, 45, 48, 58, 64, 131, 136], "correspond": [11, 142], "axi": [11, 14, 18, 136], "vari": 11, "frame": [11, 14], "toward": [11, 14, 136], "extruder_toggl": [11, 60, 63, 68, 131], "extrud": [11, 131], "off": [11, 131], "travel": [11, 22, 23, 131, 133, 142], "veloc": [11, 64, 65, 66, 67, 131, 141], "us": [11, 17, 21, 22, 24, 28, 35, 39, 51, 55, 64, 65, 70, 96, 128, 131, 132, 133, 135, 136, 137, 138, 139, 141, 142], "speed": [11, 131], "mm": [11, 17, 20, 62, 66, 96, 134], "wait_tim": [11, 61, 68, 69], "time": [11, 22, 23, 68, 69, 131, 132], "second": [11, 68, 69, 96, 131, 132], "wait": [11, 68, 69], "save": [15, 36, 37, 52, 53, 119, 120, 131, 132, 135, 136, 142], "becaus": [15, 138], "thei": [15, 25, 31, 41, 47, 57, 142], "non": [15, 42, 83, 130, 132, 133, 137, 141], "json": [15, 36, 37, 52, 53, 82, 95, 108, 117, 119, 120, 131, 132, 133, 134, 135, 136, 142], "serializ": [15, 136], "find": [15, 110, 111, 112, 114, 115, 130, 137, 140, 142], "solut": 15, "layer_width": [16, 131, 132, 133, 134], "creat": [16, 17, 35, 36, 37, 44, 45, 46, 51, 52, 53, 58, 131, 132, 133, 134, 135, 136, 138, 141, 142], "around": 16, "bottom": [16, 26, 131], "planarslic": [16, 24, 28, 42, 70, 131, 133, 134, 136], "an": [16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 42, 59, 64, 65, 70, 114, 135, 137, 138, 139, 141, 142], "instanc": [16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 42, 59, 132, 135], "width": [16, 131, 132], "add": [16, 17, 68, 69, 131, 136, 138], "raft_offset": [17, 131], "10": [17, 59, 62, 131, 132, 133, 134], "distance_between_path": [17, 131], "xy_diagon": [17, 131], "raft_lay": [17, 131], "1": [17, 64, 69, 83, 131, 132, 136], "raft_layer_height": 17, "baseslic": [17, 18, 19, 20, 21, 22, 23, 63, 83, 96], "default": [17, 41, 57, 62, 66, 96, 97, 131, 132, 133, 134, 136], "10mm": 17, "line": [17, 133], "str": [17, 18, 19, 31, 33, 35, 41, 42, 47, 49, 51, 57, 68, 96, 114, 117, 120], "x_axi": [17, 18, 19, 133], "align": [17, 19], "y_axi": [17, 18, 19], "diagon": 17, "xy_plan": 17, "height": [17, 22, 65, 96, 131, 132, 133, 141], "same": [17, 22, 132, 133, 141], "valu": [17, 22, 60, 61, 62, 63, 64, 65, 66, 96, 114, 131, 132, 136], "align_with": [18, 19, 133], "re": [18, 83], "specif": [18, 141], "wai": [18, 138, 142], "reorder": [18, 133], "start": [18, 19, 68, 96], "posit": [18, 96, 136, 142], "given": [18, 19, 120, 121], "next_path": 19, "seam": [19, 20, 131], "endpoint": 19, "orient": 19, "next": [19, 131, 133], "origin": [19, 131], "0": [19, 22, 41, 57, 59, 62, 64, 66, 68, 69, 96, 97, 131, 132, 133, 134, 135, 136, 138], "accord": [19, 142], "smooth_dist": [20, 131, 132, 133, 134], "smooth": [20, 121, 131], "transit": 20, "remov": [20, 21, 41, 57, 79, 80, 92, 93, 105, 106, 131], "certain": [20, 41, 57, 131], "perform": 20, "threshold": [21, 41, 57, 69, 131, 132, 133, 134, 135, 136], "simplifi": [21, 131], "ramer": [21, 131], "dougla": [21, 131], "peucker": [21, 131], "algorithm": [21, 131], "implement": [21, 28, 30, 70, 75], "rdp": 21, "python": [21, 28, 70, 137, 138, 142], "librari": [21, 131], "http": [21, 128, 138], "en": 21, "wikipedia": 21, "org": 21, "wiki": 21, "peucker_algorithm": 21, "control": [21, 64, 132], "degre": [21, 64], "polylin": [21, 131], "simplif": 21, "low": 21, "few": 21, "high": [21, 131], "mani": 21, "dist_threshold": 22, "25": [22, 66, 131, 133], "max_paths_per_lay": [22, 133], "sort": [22, 23, 130, 137, 141], "differ": [22, 131, 136, 141], "togeth": [22, 141], "proxim": 22, "center": 22, "reduc": [22, 23], "robot": [22, 62, 134], "maximum": 22, "get_dist": 22, "centroid": 22, "two": 22, "success": 22, "have": [22, 33, 49, 114, 131, 132, 142], "belong": [22, 31, 47], "recommend": [22, 83, 131, 138], "slightli": 22, "bigger": 22, "than": 22, "unlimit": 22, "total": [23, 131, 132], "spiral": 24, "onli": [24, 96, 131, 136, 141], "work": [24, 119, 131, 132, 134], "singl": [24, 46, 122, 131, 141], "e": [24, 70, 83, 96, 135, 138], "vase": [24, 131, 132], "revers": 25, "half": 25, "so": [25, 32, 48, 119, 139], "zig": 25, "zag": 25, "motion": [25, 62], "get": [26, 35, 39, 51, 55, 131, 138], "middl": 26, "datastructur": [26, 27, 70, 83, 96, 110, 114, 115, 131, 132, 133, 134, 135, 136], "mesh_mid_pt": 26, "target_point": 27, "move": [27, 131], "translat": 27, "target": [27, 132], "meant": [28, 70], "extend": [28, 70], "variou": [28, 58, 70, 141], "do": [28, 70, 131, 139, 142], "directli": [28, 70, 136], "your": [28, 70, 83, 131, 138], "code": [28, 70, 116, 141, 142], "instead": [28, 70], "planarprintorgan": [28, 131, 133, 134, 136], "interpolationprintorgan": [28, 132], "abstract": [30, 75], "To": [30, 39, 55, 75, 129, 131, 132, 138, 142], "layer_kei": [31, 39, 41, 47, 55, 57], "path_kei": [31, 39, 41, 47, 55, 57], "kei": [31, 33, 39, 41, 47, 49, 55, 57, 113, 114, 119, 134], "current": [31, 47, 96, 131, 138, 142], "printpoint": [31, 32, 33, 36, 37, 39, 40, 45, 46, 47, 48, 49, 52, 53, 55, 56, 59, 60, 61, 63, 65, 66, 67, 68, 122, 130, 131, 132, 135, 137, 141, 142], "index": [31, 32, 39, 47, 48, 55, 112, 115, 119], "k": [32, 39, 48, 55, 115], "orthogon": [32, 48], "attr_nam": [33, 49, 136], "size": [33, 49], "len": [33, 49], "ppt": [33, 49, 132], "whatev": [33, 49], "type": [33, 49, 65, 66, 67, 131, 138, 142], "layer_index": [34, 50], "printorgan": [34, 38, 50, 54, 131, 132, 141], "gcode": [35, 51, 130, 137], "text": [35, 51, 136], "file": [35, 51, 82, 95, 108, 130, 131, 132, 138, 139, 142], "function": [35, 51, 58, 64, 65, 122, 128, 131, 136, 137, 141], "nest": [36, 52], "flatten": [37, 53], "inform": [38, 54, 70, 78, 91, 104, 131, 132, 135, 136, 138, 141, 142], "iter": [39, 40, 55, 56, 121, 132], "over": [39, 40, 55, 56], "yield": [39, 40, 55, 56], "layer_": [39, 55], "d": [39, 55], "j": [39, 55], "path_": [39, 55], "toler": [41, 57], "0001": [41, 57], "subsequ": [41, 57], "option": [41, 57, 96, 131, 132, 138], "data_path": [42, 43, 132, 135, 136], "baseprintorgan": [42, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69], "realiz": 42, "baseboundari": 44, "per": [44, 121, 135, 136], "vertical_lay": 44, "fabric": [45, 131, 133, 134, 135, 136, 137, 141], "graph": [45, 58, 118], "select": [45, 65, 66, 67, 131, 133], "topolog": [45, 83], "each": [45, 58, 132, 135, 136, 141, 142], "collect": 45, "copi": [45, 139], "correct": [45, 138, 142], "base_boundari": 46, "initi": [58, 135], "all": [58, 70, 114, 131, 132, 133, 134, 135, 136, 139, 141, 142], "part": [58, 96, 136, 141], "reflect": 58, "which": [58, 96, 131, 132, 135], "other": [58, 139], "li": [58, 115], "lie": 58, "z_hop": [59, 131, 132, 133], "safeti": [59, 131, 141], "interrupt": [59, 133], "millimet": 59, "abov": [59, 139], "override_valu": [60, 61], "overrid": [60, 61, 132], "user": [60, 61, 83, 96, 116, 132, 138, 142], "defin": [60, 61, 83, 131, 132, 135], "d_fillet": [62, 131, 133], "buffer": 62, "3": [62, 68, 69, 83, 131, 132, 133, 134, 135, 138], "set": [62, 63, 64, 65, 66, 67, 68, 69, 131, 132, 134, 141], "blend": [62, 141], "radiu": [62, 141], "fillet": 62, "attempt": 62, "make": [62, 72, 85, 98, 131, 132, 138], "sure": [62, 72, 85, 98, 131, 132, 138], "never": 62, "too": 62, "big": 62, "overhang_rang": 64, "velocity_rang": [64, 65, 132], "bound_remap": [64, 65, 132], "overhang": [64, 65, 136], "set_linear_velocity_by_rang": [64, 132], "exampl": [64, 65, 70, 131, 132, 133, 135, 136, 137, 138, 141, 142], "how": [64, 131, 132, 133, 142], "In": [64, 131, 133, 135, 137, 138, 141], "case": [64, 68, 135, 137, 138, 141], "measur": 64, "dot": [64, 136], "product": 64, "tupl": [64, 65, 96], "reason": 64, "would": [64, 131, 137], "5": [64, 131, 132, 133, 134, 136, 138], "remap": [64, 65], "45": 64, "param_func": [65, 132], "parameter_rang": [65, 132], "linear": [65, 66, 67, 131], "take": [65, 136, 141], "argument": 65, "get_param_func": 65, "pp": 65, "angl": [65, 69, 136], "rang": [65, 96], "where": [65, 131, 142], "bound": 65, "domain": 65, "els": [65, 134], "unbound": 65, "v": [66, 131, 133, 138], "per_layer_veloc": 67, "equal": [67, 114], "length": 67, "wait_typ": 68, "either": [68, 131], "befor": [68, 131, 132, 141], "extrus": 68, "after": [68, 131, 141], "finish": [68, 131, 132], "both": [68, 131, 139, 141], "wait_before_extrus": 68, "wait_after_extrus": 68, "wait_before_and_after_extrus": 68, "wait_at_sharp_corn": 68, "sharp": [68, 69], "corner": [68, 69], "introduc": [68, 69], "5707963267948966": 69, "angle_threshold": 69, "organiz": 70, "hold": 70, "interpolationslic": [70, 132], "input": [70, 83, 96, 131], "triangular": [70, 83, 96], "quad": [70, 83, 96], "n": [70, 83, 96, 138], "gon": [70, 83, 96], "allow": [70, 83, 96], "label": [72, 85, 98], "appli": [77, 80, 90, 93, 103, 106], "standard": [77, 80, 90, 93, 103, 106, 131], "post": [77, 80, 90, 93, 103, 106, 131, 132, 133], "oper": [77, 90, 103, 131, 141], "seams_align": [77, 90, 103], "unify_path": [77, 90, 103], "invalid": [79, 80, 92, 93, 105, 106], "arg": [80, 93, 106], "kwarg": [80, 93, 106], "model": [80, 93, 96, 106, 131, 132, 133, 134, 135, 136, 141], "filepath": [82, 95, 108, 117, 120], "name": [82, 95, 108, 117, 120, 131, 135, 138], "write": [82, 95, 108], "preprocessor": [83, 84, 132], "interpol": [83, 130, 137, 141], "boundari": [83, 132, 141], "must": [83, 96], "note": [83, 128, 131, 142], "topologi": 83, "matter": 83, "irregular": 83, "tessel": 83, "lead": 83, "undesir": 83, "result": [83, 131, 132, 135, 141, 142], "2": [83, 96, 97, 131, 132, 134, 138, 141], "triangul": 83, "weld": 83, "advanc": 83, "interpolationslicingpreprocessor": [83, 132], "slicer_typ": [96, 97, 131, 133, 134, 136], "slice_height_rang": [96, 97], "parallel": [96, 141], "string": 96, "cgal": [96, 131, 133, 134, 138], "let": 96, "entir": 96, "end": 96, "rel": 96, "minimum": 96, "you": [96, 128, 130, 131, 132, 136, 137, 138, 140, 142], "want": [96, 131, 132, 136, 142], "100": 96, "regardless": 96, "turn": [109, 119, 142], "flat": 109, "closest": [110, 111, 112, 114, 136], "vertex": [110, 114, 132, 135, 136], "cloud": [111, 112], "point3d": [111, 112], "val": 113, "anyth": [113, 114, 136], "attr": 114, "flow": 116, "while": [116, 133, 134, 138], "run": [116, 131, 138, 142], "It": [116, 131, 136, 142], "ask": 116, "press": 116, "enter": 116, "continu": 116, "abort": 116, "load": [117, 131, 132, 135, 136, 142], "g": [118, 138], "plot": 118, "networkx": [118, 138], "pts_list": 119, "3d": [119, 134, 136, 137], "form": [119, 141, 142], "provid": [120, 132, 138, 139, 141, 142], "dict_or_list": 120, "strength": [121, 132], "vector3d": 121, "smoothen": 121, "therefor": [122, 131, 137], "seen": 122, "plu": 122, "some": [122, 130, 140], "ad": [122, 129, 131, 141], "pleas": [128, 137, 138], "follow": [128, 131, 133, 138, 139, 142], "citat": 128, "misc": 128, "titl": 128, "_slicer": 128, "author": [128, 139], "ioanna": 128, "mitropoul": 128, "jori": 128, "burger": 128, "dev": [128, 138], "year": 128, "2020": 128, "here": [130, 138, 140], "simpl": [130, 137], "custom": [130, 137], "transfer": [130, 137], "introduct": [131, 132, 137, 140], "concept": [131, 132], "found": [131, 132, 141], "tutori": [131, 132, 137, 141, 142], "describ": [131, 132, 135, 138], "shape": [131, 133], "known": 131, "step": 131, "requir": [131, 138], "o": [131, 132, 133, 134, 135, 136], "log": [131, 132, 133, 134, 135, 136], "move_mesh_to_point": [131, 133, 134], "generate_brim": [131, 132, 133, 134], "generate_raft": 131, "simplify_paths_rdp_igl": [131, 132, 133, 134, 135, 136], "seams_smooth": [131, 132, 133, 134], "set_extruder_toggl": [131, 132, 133, 134], "add_safety_printpoint": [131, 132, 133], "set_linear_velocity_const": [131, 133], "set_blend_radiu": [131, 133], "save_to_json": [131, 132, 133, 134, 135, 136], "compas_view2": [131, 132], "app": [131, 132], "Then": [131, 138], "messag": [131, 132, 133, 134, 135, 136], "termin": 131, "logger": [131, 132, 133, 134, 135, 136], "getlogg": [131, 132, 133, 134, 135, 136], "basicconfig": [131, 132, 133, 134, 135, 136], "format": [131, 132, 133, 134, 135, 136], "levelnam": [131, 132, 133, 134, 135, 136], "level": [131, 132, 133, 134, 135, 136], "info": [131, 132, 133, 134, 135, 136], "folder": [131, 133, 134, 142], "assum": 131, "look": [131, 132, 136, 142], "stl": 131, "obj": [131, 132, 133, 134, 135, 136], "call": 131, "output": [131, 132, 133, 134, 141, 142], "intermedi": 131, "command": [131, 138], "get_output_directori": [131, 132, 133, 134, 135, 136], "check": [131, 138], "exist": [131, 133, 134, 142], "join": [131, 132, 133, 134, 135, 136], "dirnam": [131, 132, 133, 134, 135, 136], "__file__": [131, 132, 133, 134, 135, 136], "output_dir": [131, 133, 134], "simple_vase_open_low_r": [131, 134], "from_obj": [131, 132, 133, 134, 135, 136], "our": 131, "ani": [131, 139, 142], "specifi": [131, 132, 133], "bed": 131, "compas_mesh": [131, 133, 134], "need": [131, 136, 138, 142], "slicing_typ": 131, "support": 131, "without": [131, 139], "extern": 131, "bit": 131, "slow": 131, "compas_cg": [131, 138], "packag": [131, 137, 138, 141], "veri": 131, "fast": 131, "instal": [131, 137], "slice_model": [131, 132, 133, 134, 135, 136], "been": [131, 132, 134, 142], "sever": [131, 141], "execut": 131, "One": 131, "improv": 131, "adhes": 131, "build": [131, 137], "plate": 131, "imag": [131, 141], "left": [131, 133], "right": [131, 133, 139], "With": 131, "4": [131, 134, 136], "20": 131, "amount": 131, "face": [131, 136], "larg": 131, "simplify_paths_rdp": 131, "impact": 131, "increas": 131, "more": [131, 138, 141, 142], "decreas": 131, "less": 131, "6": [131, 134], "hard": 131, "printer": [131, 134], "almost": 131, "visibl": 131, "state": 131, "printout_info": [131, 132, 133, 134, 135, 136], "sinc": 131, "now": 131, "done": [131, 132], "involv": 131, "to_data": [131, 132, 133, 134, 135, 136], "slicer_data": [131, 133, 134, 136], "readi": 131, "were": 131, "necessari": [131, 132, 141], "create_printpoint": [131, 132, 133, 134, 135, 136], "boolean": [131, 134, 136], "mean": 131, "wherea": 131, "hop": [131, 141], "doe": 131, "collid": 131, "set_linear_veloc": 131, "again": [131, 138], "about": 131, "convert": 131, "export": [131, 134], "printpoints_data": [131, 132, 133, 135, 136], "output_printpoints_dict": [131, 132, 133, 135, 136], "out_printpoint": [131, 132, 133, 135, 136], "visual": [131, 132, 135, 136, 137, 140], "viewer": [131, 132], "1600": [131, 132], "1000": [131, 132], "visualize_on_view": [131, 132], "visualize_mesh": [131, 132], "visualize_path": [131, 132], "visualize_printpoint": [131, 132], "show": [131, 132], "onc": [131, 132], "grasshopp": [131, 132, 137, 138, 140, 141], "compon": [131, 132, 138], "complet": [131, 132], "below": [131, 132, 133, 136], "locat": [131, 133], "doesn": [131, 133, 134], "t": [131, 133, 134], "alreadi": [131, 133, 134], "start_tim": [131, 132], "But": 131, "OR": [131, 139], "howev": [131, 141], "explain": [131, 132, 138], "achiev": 131, "smoother": 131, "abrupt": 131, "compas_view": 131, "end_tim": [131, 132], "elaps": [131, 132], "round": [131, 132], "read": 132, "main": [132, 133, 134, 141, 142], "go": 132, "through": [132, 141], "basic": [132, 134, 141], "keyfram": 132, "create_mesh_boundary_attribut": 132, "smooth_printpoints_up_vector": 132, "smooth_printpoints_layer_height": 132, "data_basic_exampl": 132, "output_path": [132, 135, 136], "obj_input_nam": 132, "initial_mesh": 132, "indic": 132, "low_boundary_v": 132, "load_from_json": 132, "boundarylow": 132, "high_boundary_v": 132, "boundaryhigh": 132, "configur": 132, "those": 132, "defaults_interpolation_sl": 132, "py": [132, 138], "avg_layer_height": 132, "determin": 132, "dens": 132, "surfac": 132, "15": 132, "min_layer_height": 132, "max_layer_height": 132, "create_compound_target": 132, "g_eval": 132, "create_gradient_evalu": 132, "norm_filenam": 132, "gradient_norm": 132, "g_filenam": 132, "gradient": 132, "target_1": 132, "target_low": 132, "target_2": 132, "target_high": 132, "find_critical_point": 132, "output_filenam": 132, "minima": 132, "maxima": 132, "saddl": 132, "avail": [132, 141, 142], "compute_norm_of_gradi": 132, "curved_slic": 132, "lambda": 132, "150": 132, "70": 132, "compas_viewer2": 132, "dure": [133, 136], "branch": [133, 141], "shell": 133, "logic": 133, "being": [133, 136], "adjac": 133, "enabl": [133, 136], "signific": 133, "reduct": 133, "tool": 133, "shown": [133, 136], "illustr": 133, "orang": [133, 142], "demonstr": 133, "import": [133, 134, 135, 136, 138, 142], "sort_into_vertical_lay": 133, "reorder_vertical_lay": 133, "distorted_v_closed_mid_r": 133, "def": [133, 134], "7": [133, 138], "__name__": [133, 135, 136], "__main__": [133, 135, 136], "mostli": 134, "develop": [134, 137], "materi": 134, "them": [134, 136], "desktop": 134, "still": 134, "progress": 134, "get_param": 134, "delta": 134, "defaults_typ": 134, "print_volume_x": 134, "print_volume_i": 134, "gcode_paramet": 134, "leav": 134, "gcode_text": 134, "output_gcod": 134, "save_to_text_fil": 134, "my_gcod": 134, "scalarfieldslic": 135, "scalar": [135, 136, 141], "field": [135, 141], "everi": 135, "consid": 135, "distance_point_point": 135, "slicer_util": [135, 136], "scalarfieldprintorgan": 135, "geom_to_slic": 135, "custom_bas": 135, "vertex_coordin": [135, 136], "v_kei": [135, 136], "ax": [135, 136], "xyz": [135, 136], "_": 135, "projected_pt": 135, "pull_pts_to_mesh_fac": 135, "u": 135, "proj_pt": 135, "zip": 135, "distance_field": 135, "assign": 135, "under": 135, "scalar_field": 135, "update_default_vertex_attribut": [135, 136], "enumer": 135, "no_of_isocurv": 135, "50": 135, "isocontour": 135, "calcul": 135, "often": 136, "might": [136, 142], "transfer_mesh_attributes_to_printpoint": 136, "averag": 136, "barycentr": 136, "underli": 136, "distance_point_plan": 136, "normalize_vector": 136, "attributes_transf": 136, "numpi": 136, "np": 136, "distorted_v_closed_low_r": 136, "ex": 136, "arrai": 136, "entiti": [136, 141], "meaningfulli": 136, "multipli": 136, "overhand": 136, "update_default_face_attribut": 136, "f_kei": 136, "face_norm": 136, "unit": 136, "positive_y_axi": 136, "is_positive_i": 136, "dist_from_plan": 136, "30": 136, "v_coord": 136, "direction_to_pt": 136, "from_start_end": 136, "printpoints_dict": 136, "gh": 136, "overhangs_list": 136, "get_printpoints_attribut": 136, "positive_y_axis_list": 136, "dist_from_plane_list": 136, "direction_to_pt_list": 136, "point_list_to_dict": 136, "fdm": 137, "upon": 137, "framework": [137, 139], "collabor": 137, "research": [137, 139], "architectur": 137, "engin": 137, "digit": 137, "could": 137, "contain": [137, 141, 142], "bug": [137, 138], "like": 137, "request": 137, "submit": 137, "issu": [137, 138], "tracker": [137, 138], "api": 137, "refer": 137, "guid": 137, "licens": 137, "cite": 137, "easili": 138, "platform": 138, "conda": 138, "environ": [138, 141], "my": 138, "replac": 138, "own": 138, "config": 138, "channel": 138, "forg": 138, "activ": 138, "automat": 138, "compas_rhino": 138, "m": 138, "enjoi": 138, "encount": 138, "problem": 138, "modulenotfounderror": 138, "No": 138, "modul": 138, "cython": 138, "pip": 138, "fail": 138, "compil": 138, "14": 138, "greater": 138, "visualstudio": 138, "com": 138, "cpp": 138, "miss": 138, "choos": 138, "www": 138, "scivis": 138, "window": 138, "just": 138, "instruct": 138, "runtimeerror": 138, "usernam": 138, "env": 138, "lib": 138, "site": 138, "__init__": 138, "pass": 138, "saniti": 138, "due": 138, "runtim": 138, "tinyurl": 138, "y3dm3h86": 138, "conflict": 138, "appear": 138, "fix": 138, "downgrad": 138, "19": 138, "importerror": 138, "cannot": 138, "gcd": 138, "programdata": 138, "anaconda3": 138, "solv": 138, "stackoverflow": 138, "question": 138, "66174862": 138, "cant": 138, "permiss": 139, "well": 139, "proprietari": 139, "academia": 139, "practic": 139, "interfac": 139, "mit": 139, "herebi": 139, "grant": 139, "free": 139, "charg": 139, "person": 139, "obtain": 139, "softwar": 139, "associ": 139, "document": 139, "deal": 139, "restrict": 139, "includ": [139, 141, 142], "limit": 139, "modifi": [139, 141], "merg": 139, "publish": 139, "distribut": 139, "sublicens": 139, "sell": 139, "permit": 139, "whom": 139, "furnish": 139, "subject": 139, "condit": 139, "copyright": 139, "notic": 139, "shall": 139, "substanti": 139, "portion": 139, "THE": 139, "AS": 139, "warranti": 139, "OF": 139, "kind": 139, "express": 139, "impli": 139, "BUT": 139, "NOT": 139, "TO": 139, "merchant": 139, "fit": 139, "FOR": 139, "particular": 139, "purpos": 139, "AND": 139, "noninfring": 139, "IN": 139, "NO": 139, "event": 139, "holder": 139, "BE": 139, "liabl": 139, "claim": 139, "damag": 139, "liabil": 139, "whether": 139, "action": 139, "contract": 139, "tort": 139, "otherwis": 139, "aris": 139, "WITH": 139, "broadli": 141, "four": 141, "block": 141, "geometr": 141, "embed": 141, "rhino": [141, 142], "essenti": 141, "special": 141, "relev": 141, "mulitpl": 141, "occur": 141, "lastli": 141, "integr": 141, "most": 141, "intersect": 141, "uv": 141, "tba": 141, "toolpath": 141, "throughout": 141, "detail": 141, "preset": 141, "reposit": 141, "These": 141, "emb": 141, "miscellan": 141, "give": 142, "mere": 142, "page": 142, "my_project": 142, "intermediari": 142, "final": 142, "recalcul": 142, "overwritten": 142, "updat": 142, "click": 142, "button": 142, "recomput": 142, "top": 142, "latest": 142, "version": 142, "someon": 142, "csloadslic": 142, "base_slic": 142, "csloadprintpoint": 142, "cslightpathviz": 142, "lightweight": 142, "displai": 142, "white": 142, "tube": 142, "csrenderpathviz": 142, "cross": 142, "section": 142, "expens": 142, "render": 142}, "objects": {"": [[1, 0, 0, "-", "compas_slicer"]], "compas_slicer": [[122, 0, 0, "-", "geometry"], [123, 0, 0, "-", "post_processing"], [124, 0, 0, "-", "pre_processing"], [125, 0, 0, "-", "print_organization"], [126, 0, 0, "-", "slicers"], [127, 0, 0, "-", "utilities"]], "compas_slicer.geometry": [[2, 1, 1, "", "Layer"], [7, 1, 1, "", "Path"], [11, 1, 1, "", "PrintPoint"]], "compas_slicer.geometry.Layer": [[3, 2, 1, "", "__init__"], [4, 2, 1, "", "calculate_z_bounds"], [5, 2, 1, "", "from_data"], [6, 2, 1, "", "to_data"]], "compas_slicer.geometry.Path": [[8, 2, 1, "", "__init__"], [9, 2, 1, "", "from_data"], [10, 2, 1, "", "to_data"]], "compas_slicer.geometry.PrintPoint": [[12, 2, 1, "", "__init__"], [13, 2, 1, "", "from_data"], [14, 2, 1, "", "get_frame"], [15, 2, 1, "", "to_data"]], "compas_slicer.post_processing": [[16, 3, 1, "", "generate_brim"], [17, 3, 1, "", "generate_raft"], [18, 3, 1, "", "reorder_vertical_layers"], [19, 3, 1, "", "seams_align"], [20, 3, 1, "", "seams_smooth"], [21, 3, 1, "", "simplify_paths_rdp"], [22, 3, 1, "", "sort_into_vertical_layers"], [23, 3, 1, "", "sort_paths_minimum_travel_time"], [24, 3, 1, "", "spiralize_contours"], [25, 3, 1, "", "zig_zag_open_paths"]], "compas_slicer.pre_processing": [[26, 3, 1, "", "get_mid_pt_base"], [27, 3, 1, "", "move_mesh_to_point"]], "compas_slicer.print_organization": [[28, 1, 1, "", "BasePrintOrganizer"], [42, 1, 1, "", "InterpolationPrintOrganizer"], [59, 3, 1, "", "add_safety_printpoints"], [60, 3, 1, "", "override_extruder_toggle"], [61, 3, 1, "", "override_wait_time"], [62, 3, 1, "", "set_blend_radius"], [63, 3, 1, "", "set_extruder_toggle"], [64, 3, 1, "", "set_linear_velocity_by_overhang"], [65, 3, 1, "", "set_linear_velocity_by_range"], [66, 3, 1, "", "set_linear_velocity_constant"], [67, 3, 1, "", "set_linear_velocity_per_layer"], [68, 3, 1, "", "set_wait_time_based_on_extruder_toggle"], [69, 3, 1, "", "set_wait_time_on_sharp_corners"]], "compas_slicer.print_organization.BasePrintOrganizer": [[29, 2, 1, "", "__init__"], [30, 2, 1, "", "create_printpoints"], [31, 2, 1, "", "get_printpoint_neighboring_items"], [32, 2, 1, "", "get_printpoint_up_vector"], [33, 2, 1, "", "get_printpoints_attribute"], [34, 2, 1, "", "number_of_paths_on_layer"], [35, 2, 1, "", "output_gcode"], [36, 2, 1, "", "output_nested_printpoints_dict"], [37, 2, 1, "", "output_printpoints_dict"], [38, 2, 1, "", "printout_info"], [39, 2, 1, "", "printpoints_indices_iterator"], [40, 2, 1, "", "printpoints_iterator"], [41, 2, 1, "", "remove_duplicate_points_in_path"]], "compas_slicer.print_organization.InterpolationPrintOrganizer": [[43, 2, 1, "", "__init__"], [44, 2, 1, "", "create_base_boundaries"], [45, 2, 1, "", "create_printpoints"], [46, 2, 1, "", "get_layer_ppts"], [47, 2, 1, "", "get_printpoint_neighboring_items"], [48, 2, 1, "", "get_printpoint_up_vector"], [49, 2, 1, "", "get_printpoints_attribute"], [50, 2, 1, "", "number_of_paths_on_layer"], [51, 2, 1, "", "output_gcode"], [52, 2, 1, "", "output_nested_printpoints_dict"], [53, 2, 1, "", "output_printpoints_dict"], [54, 2, 1, "", "printout_info"], [55, 2, 1, "", "printpoints_indices_iterator"], [56, 2, 1, "", "printpoints_iterator"], [57, 2, 1, "", "remove_duplicate_points_in_path"], [58, 2, 1, "", "topological_sorting"]], "compas_slicer.slicers": [[70, 1, 1, "", "BaseSlicer"], [83, 1, 1, "", "InterpolationSlicer"], [96, 1, 1, "", "PlanarSlicer"]], "compas_slicer.slicers.BaseSlicer": [[71, 2, 1, "", "__init__"], [72, 2, 1, "", "close_paths"], [73, 2, 1, "", "find_vertical_layers_with_first_path_on_base"], [74, 2, 1, "", "from_data"], [75, 2, 1, "", "generate_paths"], [76, 2, 1, "", "get_layers_dict"], [77, 2, 1, "", "post_processing"], [78, 2, 1, "", "printout_info"], [79, 2, 1, "", "remove_invalid_paths_and_layers"], [80, 2, 1, "", "slice_model"], [81, 2, 1, "", "to_data"], [82, 2, 1, "", "to_json"]], "compas_slicer.slicers.InterpolationSlicer": [[84, 2, 1, "", "__init__"], [85, 2, 1, "", "close_paths"], [86, 2, 1, "", "find_vertical_layers_with_first_path_on_base"], [87, 2, 1, "", "from_data"], [88, 2, 1, "", "generate_paths"], [89, 2, 1, "", "get_layers_dict"], [90, 2, 1, "", "post_processing"], [91, 2, 1, "", "printout_info"], [92, 2, 1, "", "remove_invalid_paths_and_layers"], [93, 2, 1, "", "slice_model"], [94, 2, 1, "", "to_data"], [95, 2, 1, "", "to_json"]], "compas_slicer.slicers.PlanarSlicer": [[97, 2, 1, "", "__init__"], [98, 2, 1, "", "close_paths"], [99, 2, 1, "", "find_vertical_layers_with_first_path_on_base"], [100, 2, 1, "", "from_data"], [101, 2, 1, "", "generate_paths"], [102, 2, 1, "", "get_layers_dict"], [103, 2, 1, "", "post_processing"], [104, 2, 1, "", "printout_info"], [105, 2, 1, "", "remove_invalid_paths_and_layers"], [106, 2, 1, "", "slice_model"], [107, 2, 1, "", "to_data"], [108, 2, 1, "", "to_json"]], "compas_slicer.utilities": [[109, 3, 1, "", "flattened_list_of_dictionary"], [110, 3, 1, "", "get_closest_mesh_normal_to_pt"], [111, 3, 1, "", "get_closest_pt"], [112, 3, 1, "", "get_closest_pt_index"], [113, 3, 1, "", "get_dict_key_from_value"], [114, 3, 1, "", "get_mesh_vertex_coords_with_attribute"], [115, 3, 1, "", "get_normal_of_path_on_xy_plane"], [116, 3, 1, "", "interrupt"], [117, 3, 1, "", "load_from_json"], [118, 3, 1, "", "plot_networkx_graph"], [119, 3, 1, "", "point_list_to_dict"], [120, 3, 1, "", "save_to_json"], [121, 3, 1, "", "smooth_vectors"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "function", "Python function"]}, "titleterms": {"api": 0, "refer": 0, "compas_slic": 1, "layer": [2, 3, 4, 5, 6], "__init__": [3, 8, 12, 29, 43, 71, 84, 97], "calculate_z_bound": 4, "from_data": [5, 9, 13, 74, 87, 100], "to_data": [6, 10, 15, 81, 94, 107], "path": [7, 8, 9, 10], "printpoint": [11, 12, 13, 14, 15, 136], "get_fram": 14, "generate_brim": 16, "generate_raft": 17, "reorder_vertical_lay": 18, "seams_align": 19, "seams_smooth": 20, "simplify_paths_rdp": 21, "sort_into_vertical_lay": 22, "sort_paths_minimum_travel_tim": 23, "spiralize_contour": 24, "zig_zag_open_path": 25, "get_mid_pt_bas": 26, "move_mesh_to_point": 27, "baseprintorgan": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 125], "create_printpoint": [30, 45], "get_printpoint_neighboring_item": [31, 47], "get_printpoint_up_vector": [32, 48], "get_printpoints_attribut": [33, 49], "number_of_paths_on_lay": [34, 50], "output_gcod": [35, 51], "output_nested_printpoints_dict": [36, 52], "output_printpoints_dict": [37, 53], "printout_info": [38, 54, 78, 91, 104], "printpoints_indices_iter": [39, 55], "printpoints_iter": [40, 56], "remove_duplicate_points_in_path": [41, 57], "interpolationprintorgan": [42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "create_base_boundari": 44, "get_layer_ppt": 46, "topological_sort": 58, "add_safety_printpoint": 59, "override_extruder_toggl": 60, "override_wait_tim": 61, "set_blend_radiu": 62, "set_extruder_toggl": 63, "set_linear_velocity_by_overhang": 64, "set_linear_velocity_by_rang": 65, "set_linear_velocity_const": 66, "set_linear_velocity_per_lay": 67, "set_wait_time_based_on_extruder_toggl": 68, "set_wait_time_on_sharp_corn": 69, "baseslic": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 126], "close_path": [72, 85, 98], "find_vertical_layers_with_first_path_on_bas": [73, 86, 99], "generate_path": [75, 88, 101], "get_layers_dict": [76, 89, 102], "post_process": [77, 90, 103, 123], "remove_invalid_paths_and_lay": [79, 92, 105], "slice_model": [80, 93, 106], "to_json": [82, 95, 108], "interpolationslic": [83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], "planarslic": [96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108], "flattened_list_of_dictionari": 109, "get_closest_mesh_normal_to_pt": 110, "get_closest_pt": 111, "get_closest_pt_index": 112, "get_dict_key_from_valu": 113, "get_mesh_vertex_coords_with_attribut": 114, "get_normal_of_path_on_xy_plan": 115, "interrupt": 116, "load_from_json": 117, "plot_networkx_graph": 118, "point_list_to_dict": 119, "save_to_json": 120, "smooth_vector": 121, "geometri": [122, 141], "class": [122, 125, 126], "polylin": 123, "simplif": 123, "sort": [123, 133], "addit": 123, "pre_process": 124, "posit": 124, "print_organ": 125, "function": 125, "slicer": [126, 138, 141], "util": 127, "cite": 128, "develop": 129, "guid": 129, "exampl": 130, "simpl": [131, 132], "planar": [131, 133, 135, 138], "slice": [131, 132, 133, 135], "import": [131, 132], "initi": [131, 132], "process": [131, 132], "print": [131, 132, 141], "organ": [131, 132, 141], "final": [131, 132], "script": [131, 132], "curv": 132, "interpol": 132, "vertic": 133, "gcode": 134, "gener": 134, "non": 135, "custom": 135, "base": 135, "transfer": 136, "attribut": 136, "overview": [137, 141, 142], "tabl": 137, "content": 137, "instal": [138, 142], "basic": 138, "step": 138, "1": 138, "compa": 138, "4": 138, "test": 138, "librari": 138, "work": 138, "troubleshoot": 138, "microsoft": 138, "visual": [138, 141, 142], "c": 138, "build": 138, "tool": 138, "numpi": 138, "error": 138, "fraction": 138, "licens": 139, "tutori": 140, "introduct": 141, "folder": 141, "structur": 141, "grasshopp": 142, "workflow": 142, "compon": 142}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "sphinx": 58}, "alltitles": {"API Reference": [[0, "api-reference"]], "compas_slicer": [[1, "compas-slicer"]], "Layer": [[2, "layer"]], "Layer.__init__": [[3, "layer-init"]], "Layer.calculate_z_bounds": [[4, "layer-calculate-z-bounds"]], "Layer.from_data": [[5, "layer-from-data"]], "Layer.to_data": [[6, "layer-to-data"]], "Path": [[7, "path"]], "Path.__init__": [[8, "path-init"]], "Path.from_data": [[9, "path-from-data"]], "Path.to_data": [[10, "path-to-data"]], "PrintPoint": [[11, "printpoint"]], "PrintPoint.__init__": [[12, "printpoint-init"]], "PrintPoint.from_data": [[13, "printpoint-from-data"]], "PrintPoint.get_frame": [[14, "printpoint-get-frame"]], "PrintPoint.to_data": [[15, "printpoint-to-data"]], "generate_brim": [[16, "generate-brim"]], "generate_raft": [[17, "generate-raft"]], "reorder_vertical_layers": [[18, "reorder-vertical-layers"]], "seams_align": [[19, "seams-align"]], "seams_smooth": [[20, "seams-smooth"]], "simplify_paths_rdp": [[21, "simplify-paths-rdp"]], "sort_into_vertical_layers": [[22, "sort-into-vertical-layers"]], "sort_paths_minimum_travel_time": [[23, "sort-paths-minimum-travel-time"]], "spiralize_contours": [[24, "spiralize-contours"]], "zig_zag_open_paths": [[25, "zig-zag-open-paths"]], "get_mid_pt_base": [[26, "get-mid-pt-base"]], "move_mesh_to_point": [[27, "move-mesh-to-point"]], "BasePrintOrganizer": [[28, "baseprintorganizer"], [125, "baseprintorganizer"]], "BasePrintOrganizer.__init__": [[29, "baseprintorganizer-init"]], "BasePrintOrganizer.create_printpoints": [[30, "baseprintorganizer-create-printpoints"]], "BasePrintOrganizer.get_printpoint_neighboring_items": [[31, "baseprintorganizer-get-printpoint-neighboring-items"]], "BasePrintOrganizer.get_printpoint_up_vector": [[32, "baseprintorganizer-get-printpoint-up-vector"]], "BasePrintOrganizer.get_printpoints_attribute": [[33, "baseprintorganizer-get-printpoints-attribute"]], "BasePrintOrganizer.number_of_paths_on_layer": [[34, "baseprintorganizer-number-of-paths-on-layer"]], "BasePrintOrganizer.output_gcode": [[35, "baseprintorganizer-output-gcode"]], "BasePrintOrganizer.output_nested_printpoints_dict": [[36, "baseprintorganizer-output-nested-printpoints-dict"]], "BasePrintOrganizer.output_printpoints_dict": [[37, "baseprintorganizer-output-printpoints-dict"]], "BasePrintOrganizer.printout_info": [[38, "baseprintorganizer-printout-info"]], "BasePrintOrganizer.printpoints_indices_iterator": [[39, "baseprintorganizer-printpoints-indices-iterator"]], "BasePrintOrganizer.printpoints_iterator": [[40, "baseprintorganizer-printpoints-iterator"]], "BasePrintOrganizer.remove_duplicate_points_in_path": [[41, "baseprintorganizer-remove-duplicate-points-in-path"]], "InterpolationPrintOrganizer": [[42, "interpolationprintorganizer"]], "InterpolationPrintOrganizer.__init__": [[43, "interpolationprintorganizer-init"]], "InterpolationPrintOrganizer.create_base_boundaries": [[44, "interpolationprintorganizer-create-base-boundaries"]], "InterpolationPrintOrganizer.create_printpoints": [[45, "interpolationprintorganizer-create-printpoints"]], "InterpolationPrintOrganizer.get_layer_ppts": [[46, "interpolationprintorganizer-get-layer-ppts"]], "InterpolationPrintOrganizer.get_printpoint_neighboring_items": [[47, "interpolationprintorganizer-get-printpoint-neighboring-items"]], "InterpolationPrintOrganizer.get_printpoint_up_vector": [[48, "interpolationprintorganizer-get-printpoint-up-vector"]], "InterpolationPrintOrganizer.get_printpoints_attribute": [[49, "interpolationprintorganizer-get-printpoints-attribute"]], "InterpolationPrintOrganizer.number_of_paths_on_layer": [[50, "interpolationprintorganizer-number-of-paths-on-layer"]], "InterpolationPrintOrganizer.output_gcode": [[51, "interpolationprintorganizer-output-gcode"]], "InterpolationPrintOrganizer.output_nested_printpoints_dict": [[52, "interpolationprintorganizer-output-nested-printpoints-dict"]], "InterpolationPrintOrganizer.output_printpoints_dict": [[53, "interpolationprintorganizer-output-printpoints-dict"]], "InterpolationPrintOrganizer.printout_info": [[54, "interpolationprintorganizer-printout-info"]], "InterpolationPrintOrganizer.printpoints_indices_iterator": [[55, "interpolationprintorganizer-printpoints-indices-iterator"]], "InterpolationPrintOrganizer.printpoints_iterator": [[56, "interpolationprintorganizer-printpoints-iterator"]], "InterpolationPrintOrganizer.remove_duplicate_points_in_path": [[57, "interpolationprintorganizer-remove-duplicate-points-in-path"]], "InterpolationPrintOrganizer.topological_sorting": [[58, "interpolationprintorganizer-topological-sorting"]], "add_safety_printpoints": [[59, "add-safety-printpoints"]], "override_extruder_toggle": [[60, "override-extruder-toggle"]], "override_wait_time": [[61, "override-wait-time"]], "set_blend_radius": [[62, "set-blend-radius"]], "set_extruder_toggle": [[63, "set-extruder-toggle"]], "set_linear_velocity_by_overhang": [[64, "set-linear-velocity-by-overhang"]], "set_linear_velocity_by_range": [[65, "set-linear-velocity-by-range"]], "set_linear_velocity_constant": [[66, "set-linear-velocity-constant"]], "set_linear_velocity_per_layer": [[67, "set-linear-velocity-per-layer"]], "set_wait_time_based_on_extruder_toggle": [[68, "set-wait-time-based-on-extruder-toggle"]], "set_wait_time_on_sharp_corners": [[69, "set-wait-time-on-sharp-corners"]], "BaseSlicer": [[70, "baseslicer"], [126, "baseslicer"]], "BaseSlicer.__init__": [[71, "baseslicer-init"]], "BaseSlicer.close_paths": [[72, "baseslicer-close-paths"]], "BaseSlicer.find_vertical_layers_with_first_path_on_base": [[73, "baseslicer-find-vertical-layers-with-first-path-on-base"]], "BaseSlicer.from_data": [[74, "baseslicer-from-data"]], "BaseSlicer.generate_paths": [[75, "baseslicer-generate-paths"]], "BaseSlicer.get_layers_dict": [[76, "baseslicer-get-layers-dict"]], "BaseSlicer.post_processing": [[77, "baseslicer-post-processing"]], "BaseSlicer.printout_info": [[78, "baseslicer-printout-info"]], "BaseSlicer.remove_invalid_paths_and_layers": [[79, "baseslicer-remove-invalid-paths-and-layers"]], "BaseSlicer.slice_model": [[80, "baseslicer-slice-model"]], "BaseSlicer.to_data": [[81, "baseslicer-to-data"]], "BaseSlicer.to_json": [[82, "baseslicer-to-json"]], "InterpolationSlicer": [[83, "interpolationslicer"]], "InterpolationSlicer.__init__": [[84, "interpolationslicer-init"]], "InterpolationSlicer.close_paths": [[85, "interpolationslicer-close-paths"]], "InterpolationSlicer.find_vertical_layers_with_first_path_on_base": [[86, "interpolationslicer-find-vertical-layers-with-first-path-on-base"]], "InterpolationSlicer.from_data": [[87, "interpolationslicer-from-data"]], "InterpolationSlicer.generate_paths": [[88, "interpolationslicer-generate-paths"]], "InterpolationSlicer.get_layers_dict": [[89, "interpolationslicer-get-layers-dict"]], "InterpolationSlicer.post_processing": [[90, "interpolationslicer-post-processing"]], "InterpolationSlicer.printout_info": [[91, "interpolationslicer-printout-info"]], "InterpolationSlicer.remove_invalid_paths_and_layers": [[92, "interpolationslicer-remove-invalid-paths-and-layers"]], "InterpolationSlicer.slice_model": [[93, "interpolationslicer-slice-model"]], "InterpolationSlicer.to_data": [[94, "interpolationslicer-to-data"]], "InterpolationSlicer.to_json": [[95, "interpolationslicer-to-json"]], "PlanarSlicer": [[96, "planarslicer"]], "PlanarSlicer.__init__": [[97, "planarslicer-init"]], "PlanarSlicer.close_paths": [[98, "planarslicer-close-paths"]], "PlanarSlicer.find_vertical_layers_with_first_path_on_base": [[99, "planarslicer-find-vertical-layers-with-first-path-on-base"]], "PlanarSlicer.from_data": [[100, "planarslicer-from-data"]], "PlanarSlicer.generate_paths": [[101, "planarslicer-generate-paths"]], "PlanarSlicer.get_layers_dict": [[102, "planarslicer-get-layers-dict"]], "PlanarSlicer.post_processing": [[103, "planarslicer-post-processing"]], "PlanarSlicer.printout_info": [[104, "planarslicer-printout-info"]], "PlanarSlicer.remove_invalid_paths_and_layers": [[105, "planarslicer-remove-invalid-paths-and-layers"]], "PlanarSlicer.slice_model": [[106, "planarslicer-slice-model"]], "PlanarSlicer.to_data": [[107, "planarslicer-to-data"]], "PlanarSlicer.to_json": [[108, "planarslicer-to-json"]], "flattened_list_of_dictionary": [[109, "flattened-list-of-dictionary"]], "get_closest_mesh_normal_to_pt": [[110, "get-closest-mesh-normal-to-pt"]], "get_closest_pt": [[111, "get-closest-pt"]], "get_closest_pt_index": [[112, "get-closest-pt-index"]], "get_dict_key_from_value": [[113, "get-dict-key-from-value"]], "get_mesh_vertex_coords_with_attribute": [[114, "get-mesh-vertex-coords-with-attribute"]], "get_normal_of_path_on_xy_plane": [[115, "get-normal-of-path-on-xy-plane"]], "interrupt": [[116, "interrupt"]], "load_from_json": [[117, "load-from-json"]], "plot_networkx_graph": [[118, "plot-networkx-graph"]], "point_list_to_dict": [[119, "point-list-to-dict"]], "save_to_json": [[120, "save-to-json"]], "smooth_vectors": [[121, "smooth-vectors"]], "geometry": [[122, "geometry"]], "Classes": [[122, "classes"], [125, "classes"], [126, "classes"]], "post_processing": [[123, "post-processing"]], "Polyline simplification": [[123, "polyline-simplification"]], "Sorting": [[123, "sorting"]], "Additional": [[123, "additional"]], "pre_processing": [[124, "pre-processing"]], "Positioning": [[124, "positioning"]], "print_organization": [[125, "print-organization"]], "Functions": [[125, "functions"]], "slicers": [[126, "slicers"]], "utilities": [[127, "utilities"]], "utils": [[127, "utils"]], "Citing": [[128, "citing"]], "Developer Guide": [[129, "developer-guide"]], "Examples": [[130, "examples"]], "Simple planar slicing": [[131, "simple-planar-slicing"]], "Imports and initialization": [[131, "imports-and-initialization"], [132, "imports-and-initialization"]], "Slicing process": [[131, "slicing-process"], [132, "slicing-process"]], "Print organization": [[131, "print-organization"], [132, "print-organization"]], "Final script": [[131, "final-script"], [132, "final-script"]], "Simple curved interpolation slicing": [[132, "simple-curved-interpolation-slicing"]], "Planar slicing with vertical sorting": [[133, "planar-slicing-with-vertical-sorting"]], "Gcode generation": [[134, "gcode-generation"]], "Non-planar slicing on custom base": [[135, "non-planar-slicing-on-custom-base"]], "Transferring attributes to PrintPoints": [[136, "transferring-attributes-to-printpoints"]], "Overview": [[137, "overview"], [141, "overview"], [142, "overview"]], "Table of Contents": [[137, "table-of-contents"]], "Installation": [[138, "installation"], [142, "installation"]], "Basic installation steps": [[138, "basic-installation-steps"]], "Step 1: Install compas slicer": [[138, "step-1-install-compas-slicer"]], "Step 4. Test if the library works": [[138, "step-4-test-if-the-library-works"]], "Troubleshooting": [[138, "troubleshooting"]], "Installing Planarity": [[138, "installing-planarity"]], "Microsoft Visual C++ Build Tools": [[138, "microsoft-visual-c-build-tools"]], "Numpy error": [[138, "numpy-error"]], "Fractions error": [[138, "fractions-error"]], "License": [[139, "license"]], "Tutorials": [[140, "tutorials"]], "Introduction": [[141, "introduction"]], "Geometry": [[141, "geometry"]], "Slicers": [[141, "slicers"]], "Print organizers": [[141, "print-organizers"]], "Visualization": [[141, "visualization"]], "Folder structure": [[141, "folder-structure"]], "Visualization in grasshopper": [[142, "visualization-in-grasshopper"]], "Workflow": [[142, "workflow"]], "Components": [[142, "components"]]}, "indexentries": {"compas_slicer": [[1, "module-compas_slicer"]], "module": [[1, "module-compas_slicer"], [122, "module-compas_slicer.geometry"], [123, "module-compas_slicer.post_processing"], [124, "module-compas_slicer.pre_processing"], [125, "module-compas_slicer.print_organization"], [126, "module-compas_slicer.slicers"], [127, "module-compas_slicer.utilities"]], "layer (class in compas_slicer.geometry)": [[2, "compas_slicer.geometry.Layer"]], "__init__() (compas_slicer.geometry.layer method)": [[3, "compas_slicer.geometry.Layer.__init__"]], "calculate_z_bounds() (compas_slicer.geometry.layer method)": [[4, "compas_slicer.geometry.Layer.calculate_z_bounds"]], "from_data() (compas_slicer.geometry.layer class method)": [[5, "compas_slicer.geometry.Layer.from_data"]], "to_data() (compas_slicer.geometry.layer method)": [[6, "compas_slicer.geometry.Layer.to_data"]], "path (class in compas_slicer.geometry)": [[7, "compas_slicer.geometry.Path"]], "__init__() (compas_slicer.geometry.path method)": [[8, "compas_slicer.geometry.Path.__init__"]], "from_data() (compas_slicer.geometry.path class method)": [[9, "compas_slicer.geometry.Path.from_data"]], "to_data() (compas_slicer.geometry.path method)": [[10, "compas_slicer.geometry.Path.to_data"]], "printpoint (class in compas_slicer.geometry)": [[11, "compas_slicer.geometry.PrintPoint"]], "__init__() (compas_slicer.geometry.printpoint method)": [[12, "compas_slicer.geometry.PrintPoint.__init__"]], "from_data() (compas_slicer.geometry.printpoint class method)": [[13, "compas_slicer.geometry.PrintPoint.from_data"]], "get_frame() (compas_slicer.geometry.printpoint method)": [[14, "compas_slicer.geometry.PrintPoint.get_frame"]], "to_data() (compas_slicer.geometry.printpoint method)": [[15, "compas_slicer.geometry.PrintPoint.to_data"]], "generate_brim() (in module compas_slicer.post_processing)": [[16, "compas_slicer.post_processing.generate_brim"]], "generate_raft() (in module compas_slicer.post_processing)": [[17, "compas_slicer.post_processing.generate_raft"]], "reorder_vertical_layers() (in module compas_slicer.post_processing)": [[18, "compas_slicer.post_processing.reorder_vertical_layers"]], "seams_align() (in module compas_slicer.post_processing)": [[19, "compas_slicer.post_processing.seams_align"]], "seams_smooth() (in module compas_slicer.post_processing)": [[20, "compas_slicer.post_processing.seams_smooth"]], "simplify_paths_rdp() (in module compas_slicer.post_processing)": [[21, "compas_slicer.post_processing.simplify_paths_rdp"]], "sort_into_vertical_layers() (in module compas_slicer.post_processing)": [[22, "compas_slicer.post_processing.sort_into_vertical_layers"]], "sort_paths_minimum_travel_time() (in module compas_slicer.post_processing)": [[23, "compas_slicer.post_processing.sort_paths_minimum_travel_time"]], "spiralize_contours() (in module compas_slicer.post_processing)": [[24, "compas_slicer.post_processing.spiralize_contours"]], "zig_zag_open_paths() (in module compas_slicer.post_processing)": [[25, "compas_slicer.post_processing.zig_zag_open_paths"]], "get_mid_pt_base() (in module compas_slicer.pre_processing)": [[26, "compas_slicer.pre_processing.get_mid_pt_base"]], "move_mesh_to_point() (in module compas_slicer.pre_processing)": [[27, "compas_slicer.pre_processing.move_mesh_to_point"]], "baseprintorganizer (class in compas_slicer.print_organization)": [[28, "compas_slicer.print_organization.BasePrintOrganizer"]], "__init__() (compas_slicer.print_organization.baseprintorganizer method)": [[29, "compas_slicer.print_organization.BasePrintOrganizer.__init__"]], "create_printpoints() (compas_slicer.print_organization.baseprintorganizer method)": [[30, "compas_slicer.print_organization.BasePrintOrganizer.create_printpoints"]], "get_printpoint_neighboring_items() (compas_slicer.print_organization.baseprintorganizer method)": [[31, "compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_neighboring_items"]], "get_printpoint_up_vector() (compas_slicer.print_organization.baseprintorganizer method)": [[32, "compas_slicer.print_organization.BasePrintOrganizer.get_printpoint_up_vector"]], "get_printpoints_attribute() (compas_slicer.print_organization.baseprintorganizer method)": [[33, "compas_slicer.print_organization.BasePrintOrganizer.get_printpoints_attribute"]], "number_of_paths_on_layer() (compas_slicer.print_organization.baseprintorganizer method)": [[34, "compas_slicer.print_organization.BasePrintOrganizer.number_of_paths_on_layer"]], "output_gcode() (compas_slicer.print_organization.baseprintorganizer method)": [[35, "compas_slicer.print_organization.BasePrintOrganizer.output_gcode"]], "output_nested_printpoints_dict() (compas_slicer.print_organization.baseprintorganizer method)": [[36, "compas_slicer.print_organization.BasePrintOrganizer.output_nested_printpoints_dict"]], "output_printpoints_dict() (compas_slicer.print_organization.baseprintorganizer method)": [[37, "compas_slicer.print_organization.BasePrintOrganizer.output_printpoints_dict"]], "printout_info() (compas_slicer.print_organization.baseprintorganizer method)": [[38, "compas_slicer.print_organization.BasePrintOrganizer.printout_info"]], "printpoints_indices_iterator() (compas_slicer.print_organization.baseprintorganizer method)": [[39, "compas_slicer.print_organization.BasePrintOrganizer.printpoints_indices_iterator"]], "printpoints_iterator() (compas_slicer.print_organization.baseprintorganizer method)": [[40, "compas_slicer.print_organization.BasePrintOrganizer.printpoints_iterator"]], "remove_duplicate_points_in_path() (compas_slicer.print_organization.baseprintorganizer method)": [[41, "compas_slicer.print_organization.BasePrintOrganizer.remove_duplicate_points_in_path"]], "interpolationprintorganizer (class in compas_slicer.print_organization)": [[42, "compas_slicer.print_organization.InterpolationPrintOrganizer"]], "__init__() (compas_slicer.print_organization.interpolationprintorganizer method)": [[43, "compas_slicer.print_organization.InterpolationPrintOrganizer.__init__"]], "create_base_boundaries() (compas_slicer.print_organization.interpolationprintorganizer method)": [[44, "compas_slicer.print_organization.InterpolationPrintOrganizer.create_base_boundaries"]], "create_printpoints() (compas_slicer.print_organization.interpolationprintorganizer method)": [[45, "compas_slicer.print_organization.InterpolationPrintOrganizer.create_printpoints"]], "get_layer_ppts() (compas_slicer.print_organization.interpolationprintorganizer method)": [[46, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_layer_ppts"]], "get_printpoint_neighboring_items() (compas_slicer.print_organization.interpolationprintorganizer method)": [[47, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_neighboring_items"]], "get_printpoint_up_vector() (compas_slicer.print_organization.interpolationprintorganizer method)": [[48, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoint_up_vector"]], "get_printpoints_attribute() (compas_slicer.print_organization.interpolationprintorganizer method)": [[49, "compas_slicer.print_organization.InterpolationPrintOrganizer.get_printpoints_attribute"]], "number_of_paths_on_layer() (compas_slicer.print_organization.interpolationprintorganizer method)": [[50, "compas_slicer.print_organization.InterpolationPrintOrganizer.number_of_paths_on_layer"]], "output_gcode() (compas_slicer.print_organization.interpolationprintorganizer method)": [[51, "compas_slicer.print_organization.InterpolationPrintOrganizer.output_gcode"]], "output_nested_printpoints_dict() (compas_slicer.print_organization.interpolationprintorganizer method)": [[52, "compas_slicer.print_organization.InterpolationPrintOrganizer.output_nested_printpoints_dict"]], "output_printpoints_dict() (compas_slicer.print_organization.interpolationprintorganizer method)": [[53, "compas_slicer.print_organization.InterpolationPrintOrganizer.output_printpoints_dict"]], "printout_info() (compas_slicer.print_organization.interpolationprintorganizer method)": [[54, "compas_slicer.print_organization.InterpolationPrintOrganizer.printout_info"]], "printpoints_indices_iterator() (compas_slicer.print_organization.interpolationprintorganizer method)": [[55, "compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_indices_iterator"]], "printpoints_iterator() (compas_slicer.print_organization.interpolationprintorganizer method)": [[56, "compas_slicer.print_organization.InterpolationPrintOrganizer.printpoints_iterator"]], "remove_duplicate_points_in_path() (compas_slicer.print_organization.interpolationprintorganizer method)": [[57, "compas_slicer.print_organization.InterpolationPrintOrganizer.remove_duplicate_points_in_path"]], "topological_sorting() (compas_slicer.print_organization.interpolationprintorganizer method)": [[58, "compas_slicer.print_organization.InterpolationPrintOrganizer.topological_sorting"]], "add_safety_printpoints() (in module compas_slicer.print_organization)": [[59, "compas_slicer.print_organization.add_safety_printpoints"]], "override_extruder_toggle() (in module compas_slicer.print_organization)": [[60, "compas_slicer.print_organization.override_extruder_toggle"]], "override_wait_time() (in module compas_slicer.print_organization)": [[61, "compas_slicer.print_organization.override_wait_time"]], "set_blend_radius() (in module compas_slicer.print_organization)": [[62, "compas_slicer.print_organization.set_blend_radius"]], "set_extruder_toggle() (in module compas_slicer.print_organization)": [[63, "compas_slicer.print_organization.set_extruder_toggle"]], "set_linear_velocity_by_overhang() (in module compas_slicer.print_organization)": [[64, "compas_slicer.print_organization.set_linear_velocity_by_overhang"]], "set_linear_velocity_by_range() (in module compas_slicer.print_organization)": [[65, "compas_slicer.print_organization.set_linear_velocity_by_range"]], "set_linear_velocity_constant() (in module compas_slicer.print_organization)": [[66, "compas_slicer.print_organization.set_linear_velocity_constant"]], "set_linear_velocity_per_layer() (in module compas_slicer.print_organization)": [[67, "compas_slicer.print_organization.set_linear_velocity_per_layer"]], "set_wait_time_based_on_extruder_toggle() (in module compas_slicer.print_organization)": [[68, "compas_slicer.print_organization.set_wait_time_based_on_extruder_toggle"]], "set_wait_time_on_sharp_corners() (in module compas_slicer.print_organization)": [[69, "compas_slicer.print_organization.set_wait_time_on_sharp_corners"]], "baseslicer (class in compas_slicer.slicers)": [[70, "compas_slicer.slicers.BaseSlicer"]], "__init__() (compas_slicer.slicers.baseslicer method)": [[71, "compas_slicer.slicers.BaseSlicer.__init__"]], "close_paths() (compas_slicer.slicers.baseslicer method)": [[72, "compas_slicer.slicers.BaseSlicer.close_paths"]], "find_vertical_layers_with_first_path_on_base() (compas_slicer.slicers.baseslicer method)": [[73, "compas_slicer.slicers.BaseSlicer.find_vertical_layers_with_first_path_on_base"]], "from_data() (compas_slicer.slicers.baseslicer class method)": [[74, "compas_slicer.slicers.BaseSlicer.from_data"]], "generate_paths() (compas_slicer.slicers.baseslicer method)": [[75, "compas_slicer.slicers.BaseSlicer.generate_paths"]], "get_layers_dict() (compas_slicer.slicers.baseslicer method)": [[76, "compas_slicer.slicers.BaseSlicer.get_layers_dict"]], "post_processing() (compas_slicer.slicers.baseslicer method)": [[77, "compas_slicer.slicers.BaseSlicer.post_processing"]], "printout_info() (compas_slicer.slicers.baseslicer method)": [[78, "compas_slicer.slicers.BaseSlicer.printout_info"]], "remove_invalid_paths_and_layers() (compas_slicer.slicers.baseslicer method)": [[79, "compas_slicer.slicers.BaseSlicer.remove_invalid_paths_and_layers"]], "slice_model() (compas_slicer.slicers.baseslicer method)": [[80, "compas_slicer.slicers.BaseSlicer.slice_model"]], "to_data() (compas_slicer.slicers.baseslicer method)": [[81, "compas_slicer.slicers.BaseSlicer.to_data"]], "to_json() (compas_slicer.slicers.baseslicer method)": [[82, "compas_slicer.slicers.BaseSlicer.to_json"]], "interpolationslicer (class in compas_slicer.slicers)": [[83, "compas_slicer.slicers.InterpolationSlicer"]], "__init__() (compas_slicer.slicers.interpolationslicer method)": [[84, "compas_slicer.slicers.InterpolationSlicer.__init__"]], "close_paths() (compas_slicer.slicers.interpolationslicer method)": [[85, "compas_slicer.slicers.InterpolationSlicer.close_paths"]], "find_vertical_layers_with_first_path_on_base() (compas_slicer.slicers.interpolationslicer method)": [[86, "compas_slicer.slicers.InterpolationSlicer.find_vertical_layers_with_first_path_on_base"]], "from_data() (compas_slicer.slicers.interpolationslicer class method)": [[87, "compas_slicer.slicers.InterpolationSlicer.from_data"]], "generate_paths() (compas_slicer.slicers.interpolationslicer method)": [[88, "compas_slicer.slicers.InterpolationSlicer.generate_paths"]], "get_layers_dict() (compas_slicer.slicers.interpolationslicer method)": [[89, "compas_slicer.slicers.InterpolationSlicer.get_layers_dict"]], "post_processing() (compas_slicer.slicers.interpolationslicer method)": [[90, "compas_slicer.slicers.InterpolationSlicer.post_processing"]], "printout_info() (compas_slicer.slicers.interpolationslicer method)": [[91, "compas_slicer.slicers.InterpolationSlicer.printout_info"]], "remove_invalid_paths_and_layers() (compas_slicer.slicers.interpolationslicer method)": [[92, "compas_slicer.slicers.InterpolationSlicer.remove_invalid_paths_and_layers"]], "slice_model() (compas_slicer.slicers.interpolationslicer method)": [[93, "compas_slicer.slicers.InterpolationSlicer.slice_model"]], "to_data() (compas_slicer.slicers.interpolationslicer method)": [[94, "compas_slicer.slicers.InterpolationSlicer.to_data"]], "to_json() (compas_slicer.slicers.interpolationslicer method)": [[95, "compas_slicer.slicers.InterpolationSlicer.to_json"]], "planarslicer (class in compas_slicer.slicers)": [[96, "compas_slicer.slicers.PlanarSlicer"]], "__init__() (compas_slicer.slicers.planarslicer method)": [[97, "compas_slicer.slicers.PlanarSlicer.__init__"]], "close_paths() (compas_slicer.slicers.planarslicer method)": [[98, "compas_slicer.slicers.PlanarSlicer.close_paths"]], "find_vertical_layers_with_first_path_on_base() (compas_slicer.slicers.planarslicer method)": [[99, "compas_slicer.slicers.PlanarSlicer.find_vertical_layers_with_first_path_on_base"]], "from_data() (compas_slicer.slicers.planarslicer class method)": [[100, "compas_slicer.slicers.PlanarSlicer.from_data"]], "generate_paths() (compas_slicer.slicers.planarslicer method)": [[101, "compas_slicer.slicers.PlanarSlicer.generate_paths"]], "get_layers_dict() (compas_slicer.slicers.planarslicer method)": [[102, "compas_slicer.slicers.PlanarSlicer.get_layers_dict"]], "post_processing() (compas_slicer.slicers.planarslicer method)": [[103, "compas_slicer.slicers.PlanarSlicer.post_processing"]], "printout_info() (compas_slicer.slicers.planarslicer method)": [[104, "compas_slicer.slicers.PlanarSlicer.printout_info"]], "remove_invalid_paths_and_layers() (compas_slicer.slicers.planarslicer method)": [[105, "compas_slicer.slicers.PlanarSlicer.remove_invalid_paths_and_layers"]], "slice_model() (compas_slicer.slicers.planarslicer method)": [[106, "compas_slicer.slicers.PlanarSlicer.slice_model"]], "to_data() (compas_slicer.slicers.planarslicer method)": [[107, "compas_slicer.slicers.PlanarSlicer.to_data"]], "to_json() (compas_slicer.slicers.planarslicer method)": [[108, "compas_slicer.slicers.PlanarSlicer.to_json"]], "flattened_list_of_dictionary() (in module compas_slicer.utilities)": [[109, "compas_slicer.utilities.flattened_list_of_dictionary"]], "get_closest_mesh_normal_to_pt() (in module compas_slicer.utilities)": [[110, "compas_slicer.utilities.get_closest_mesh_normal_to_pt"]], "get_closest_pt() (in module compas_slicer.utilities)": [[111, "compas_slicer.utilities.get_closest_pt"]], "get_closest_pt_index() (in module compas_slicer.utilities)": [[112, "compas_slicer.utilities.get_closest_pt_index"]], "get_dict_key_from_value() (in module compas_slicer.utilities)": [[113, "compas_slicer.utilities.get_dict_key_from_value"]], "get_mesh_vertex_coords_with_attribute() (in module compas_slicer.utilities)": [[114, "compas_slicer.utilities.get_mesh_vertex_coords_with_attribute"]], "get_normal_of_path_on_xy_plane() (in module compas_slicer.utilities)": [[115, "compas_slicer.utilities.get_normal_of_path_on_xy_plane"]], "interrupt() (in module compas_slicer.utilities)": [[116, "compas_slicer.utilities.interrupt"]], "load_from_json() (in module compas_slicer.utilities)": [[117, "compas_slicer.utilities.load_from_json"]], "plot_networkx_graph() (in module compas_slicer.utilities)": [[118, "compas_slicer.utilities.plot_networkx_graph"]], "point_list_to_dict() (in module compas_slicer.utilities)": [[119, "compas_slicer.utilities.point_list_to_dict"]], "save_to_json() (in module compas_slicer.utilities)": [[120, "compas_slicer.utilities.save_to_json"]], "smooth_vectors() (in module compas_slicer.utilities)": [[121, "compas_slicer.utilities.smooth_vectors"]], "compas_slicer.geometry": [[122, "module-compas_slicer.geometry"]], "compas_slicer.post_processing": [[123, "module-compas_slicer.post_processing"]], "compas_slicer.pre_processing": [[124, "module-compas_slicer.pre_processing"]], "compas_slicer.print_organization": [[125, "module-compas_slicer.print_organization"]], "compas_slicer.slicers": [[126, "module-compas_slicer.slicers"]], "compas_slicer.utilities": [[127, "module-compas_slicer.utilities"]]}})
\ No newline at end of file