cam.operators.curve_tools_ops#
Fabex ‘curve_cam_tools.py’ © 2012 Vilem Novak, 2021 Alain Pelletier
Operators that perform various functions on existing curves.
Classes#
Perform Boolean Operation on Two or More Curves |
|
Perform Hull Operation on Single or Multiple Curves |
|
Makes Curve Cuttable Both Inside and Outside, for Intarsion and Joints |
|
Adds Overcuts for Slots |
|
Adds Overcuts for Slots |
|
Curve Remove Doubles |
|
Detect Pockets in a Mesh and Extract Them as Curves |
|
Curve Offset Operation |
|
Object Silhouette |
Module Contents#
- class CamCurveBoolean[source]#
Bases:
bpy.types.Operator
Perform Boolean Operation on Two or More Curves
- class CamCurveConvexHull[source]#
Bases:
bpy.types.Operator
Perform Hull Operation on Single or Multiple Curves
- class CamCurveIntarsion[source]#
Bases:
bpy.types.Operator
Makes Curve Cuttable Both Inside and Outside, for Intarsion and Joints
- diameter: FloatProperty(name='Cutter Diameter', default=0.001, min=0, max=0.025, precision=4, unit='LENGTH')[source]#
- tolerance: FloatProperty(name='Cutout Tolerance', default=0.0001, min=0, max=0.005, precision=4, unit='LENGTH')[source]#
- backlight: FloatProperty(name='Backlight Seat', default=0.0, min=0, max=0.01, precision=4, unit='LENGTH')[source]#
- perimeter_cut: FloatProperty(name='Perimeter Cut Offset', default=0.0, min=0, max=0.1, precision=4, unit='LENGTH')[source]#
- base_thickness: FloatProperty(name='Base Material Thickness', default=0.0, min=0, max=0.1, precision=4, unit='LENGTH')[source]#
- intarsion_thickness: FloatProperty(name='Intarsion Material Thickness', default=0.0, min=0, max=0.1, precision=4, unit='LENGTH')[source]#
- class CamCurveSimpleOvercuts[source]#
Bases:
bpy.types.Operator
Adds Overcuts for Slots
- diameter: FloatProperty(name='Diameter', default=0.003175, min=0, max=100, precision=4, unit='LENGTH')[source]#
- class CamCurveBoneFilletOvercuts[source]#
Bases:
bpy.types.Operator
Adds Overcuts for Slots
- diameter: FloatProperty(name='Tool Diameter', default=0.003175, description='Tool bit diameter used in cut operation', min=0, max=100, precision=4, unit='LENGTH')[source]#
- style: EnumProperty(name='Style', items='OPEDGE', 'opposite edge', 'place corner overcuts on opposite edges', 'DOGBONE', 'Dog-bone / Corner Point', 'place overcuts at center of corners', 'TBONE', 'T-bone', 'place corner overcuts on the same edge', default='DOGBONE', description='style of overcut to use')[source]#
- threshold: FloatProperty(name='Max Inside Angle', default=pi / 2, min=-3.14, max=3.14, description='The maximum angle to be considered as an inside corner', precision=4, step=500, subtype='ANGLE', unit='ROTATION')[source]#
- do_outer: BoolProperty(name='Include Outer Curve', description='Include the outer curve if there are curves inside', default=True)[source]#
- do_invert: BoolProperty(name='Invert', description='invert overcut operation on all curves', default=True)[source]#
- class CamMeshGetPockets[source]#
Bases:
bpy.types.Operator
Detect Pockets in a Mesh and Extract Them as Curves
- threshold: FloatProperty(name='Horizontal Threshold', description='How horizontal the surface must be for a pocket: 1.0 perfectly flat, 0.0 is any orientation', default=0.99, min=0, max=1.0, precision=4)[source]#
- class CamOffsetSilhouete[source]#
Bases:
bpy.types.Operator
Curve Offset Operation
- offset: FloatProperty(name='Offset', default=0.003, min=-100, max=100, precision=4, unit='LENGTH')[source]#
- mitre_limit: FloatProperty(name='Mitre Limit', default=2, min=1e-08, max=20, precision=4, unit='LENGTH')[source]#
- style: EnumProperty(name='Corner Type', items='1', 'Round', '', '2', 'Mitre', '', '3', 'Bevel', '')[source]#
- caps: EnumProperty(name='Cap Type', items='round', 'Round', '', 'square', 'Square', '', 'flat', 'Flat', '')[source]#
- align: EnumProperty(name='Alignment', items='worldxy', 'World XY', '', 'bottom', 'Base Bottom', '', 'top', 'Base Top', '')[source]#