gitextract_1w_nfn0c/ ├── .gitignore ├── .gitmodules ├── Doc/ │ ├── Makefile │ ├── conf.py │ ├── index.rst │ └── make.bat ├── README.rst ├── pyproject.toml ├── solid2/ │ ├── __init__.py │ ├── config.py │ ├── core/ │ │ ├── __init__.py │ │ ├── builtins/ │ │ │ ├── __init__.py │ │ │ ├── convenience.py │ │ │ ├── implicit.primitives │ │ │ ├── openscad.mutators │ │ │ ├── openscad.primitives │ │ │ ├── openscad_functions.py │ │ │ ├── openscad_primitives.py │ │ │ └── primitives.py │ │ ├── extension_manager.py │ │ ├── object_base/ │ │ │ ├── __init__.py │ │ │ ├── access_syntax_mixin.py │ │ │ ├── object_base_impl.py │ │ │ └── operator_mixin.py │ │ ├── object_factory.py │ │ ├── parse_scad.py │ │ ├── scad_import.py │ │ ├── scad_render.py │ │ └── utils.py │ ├── examples/ │ │ ├── 01-basics.py │ │ ├── 02-vars-and-operators.py │ │ ├── 03-debug-background.py │ │ ├── 04-convenience.py │ │ ├── 05-access-style-syntax.py │ │ ├── 06-functions.py │ │ ├── 07-libs-bosl2-attachable.py │ │ ├── 07-libs-bosl2-logo.py │ │ ├── 07-libs-bosl2.py │ │ ├── 07-libs.x.py │ │ ├── 08-extensions.py │ │ ├── 09-code-attach-extension.py │ │ ├── 10-customizer.py │ │ ├── 11-font/ │ │ │ ├── LICENSE_README │ │ │ └── RichEatin.otf │ │ ├── 11-fonts.x.py │ │ ├── 12-animation.py │ │ ├── 13-animated-bouncing-ball.py │ │ ├── 14-implicitCAD.x.py │ │ ├── 15-implicitCAD2.x.py │ │ ├── 16-mazebox-bosl2.py │ │ ├── 17-greedy-scad-interface.py │ │ └── 18-scad-control-structures.py │ ├── extensions/ │ │ ├── __init__.py │ │ ├── bosl2/ │ │ │ ├── __init__.py │ │ │ ├── affine.py │ │ │ ├── attachments.py │ │ │ ├── ball_bearings.py │ │ │ ├── beziers.py │ │ │ ├── bosl2_access_syntax_mixin.py │ │ │ ├── bosl2_base.py │ │ │ ├── bosl2_patches.py │ │ │ ├── bottlecaps.py │ │ │ ├── color.py │ │ │ ├── comparisons.py │ │ │ ├── constants.py │ │ │ ├── coords.py │ │ │ ├── cubetruss.py │ │ │ ├── distributors.py │ │ │ ├── drawing.py │ │ │ ├── fnliterals.py │ │ │ ├── gears.py │ │ │ ├── geometry.py │ │ │ ├── hinges.py │ │ │ ├── isosurface.py │ │ │ ├── joiners.py │ │ │ ├── linalg.py │ │ │ ├── linear_bearings.py │ │ │ ├── lists.py │ │ │ ├── masks2d.py │ │ │ ├── masks3d.py │ │ │ ├── math.py │ │ │ ├── metric_screws.py │ │ │ ├── miscellaneous.py │ │ │ ├── modular_hose.py │ │ │ ├── mutators.py │ │ │ ├── nema_steppers.py │ │ │ ├── nurbs.py │ │ │ ├── openscad.py │ │ │ ├── partitions.py │ │ │ ├── paths.py │ │ │ ├── polyhedra.py │ │ │ ├── regions.py │ │ │ ├── rounding.py │ │ │ ├── screw_drive.py │ │ │ ├── screws.py │ │ │ ├── shapes2d.py │ │ │ ├── shapes3d.py │ │ │ ├── skin.py │ │ │ ├── sliders.py │ │ │ ├── std.py │ │ │ ├── strings.py │ │ │ ├── structs.py │ │ │ ├── threading.py │ │ │ ├── transforms.py │ │ │ ├── trigonometry.py │ │ │ ├── tripod_mounts.py │ │ │ ├── turtle3d.py │ │ │ ├── utility.py │ │ │ ├── vectors.py │ │ │ ├── version.py │ │ │ ├── vnf.py │ │ │ ├── walls.py │ │ │ └── wiring.py │ │ ├── bosl2_generator.py │ │ ├── greedy_scad_interface/ │ │ │ ├── __init__.py │ │ │ ├── customizer_widgets.py │ │ │ ├── scad_interface.py │ │ │ └── scad_variable.py │ │ ├── openscad_extension_generator.py │ │ └── scad_control_structures.py │ └── libs/ │ └── __init__.py └── tests/ ├── examples_scad/ │ ├── .gitignore │ ├── 01-basics.scad │ ├── 02-vars-and-operators.scad │ ├── 03-debug-background.scad │ ├── 04-convenience.scad │ ├── 05-access-style-syntax.scad │ ├── 06-functions.scad │ ├── 07-libs-bosl2-attachable.scad │ ├── 07-libs-bosl2-logo.scad │ ├── 07-libs-bosl2.scad │ ├── 07-libs.scad │ ├── 08-extensions.scad │ ├── 09-code-attach-extension.scad │ ├── 10-customizer.scad │ ├── 11-fonts.scad │ ├── 12-animation.scad │ ├── 13-animated-bouncing-ball.scad │ ├── 16-mazebox-bosl2.scad │ └── 17-greedy-scad-interface.scad ├── examples_test.py └── run_tests.py