cam.operators.curve_equation_ops#
Fabex ‘curve_cam_equation.py’ © 2021, 2022 Alain Pelletier
Operators to create a number of geometric shapes with curves.
Classes#
Object Sine |
|
Lissajous |
|
Hypotrochoid |
|
Object Custom Curve |
Module Contents#
- class CamSineCurve[source]#
Bases:
bpy.types.Operator
Object Sine
- axis: EnumProperty(name='Displacement Axis', items='XY', 'Y to displace X axis', 'Y constant; X sine displacement', 'YX', 'X to displace Y axis', 'X constant; Y sine displacement', 'ZX', 'X to displace Z axis', 'X constant; Y sine displacement', 'ZY', 'Y to displace Z axis', 'X constant; Y sine displacement', default='ZX')[source]#
- wave: EnumProperty(name='Wave', items='sine', 'Sine Wave', 'Sine Wave', 'triangle', 'Triangle Wave', 'triangle wave', 'cycloid', 'Cycloid', 'Sine wave rectification', 'invcycloid', 'Inverse Cycloid', 'Sine wave rectification', default='sine')[source]#
- amplitude: FloatProperty(name='Amplitude', default=0.01, min=0, max=10, precision=4, unit='LENGTH')[source]#
- period: FloatProperty(name='Period', default=0.5, min=0.001, max=100, precision=4, unit='LENGTH')[source]#
- beat_period: FloatProperty(name='Beat Period Offset', default=0.0, min=0.0, max=100, precision=4, unit='LENGTH')[source]#
- shift: FloatProperty(name='Phase Shift', default=0, min=-360, max=360, precision=4, step=100, unit='ROTATION')[source]#
- offset: FloatProperty(name='Offset', default=0, min=-1.0, max=1, precision=4, unit='LENGTH')[source]#
- max_t: FloatProperty(name='Wave Ends at X', default=0.5, min=-3.0, max=3, precision=4, unit='LENGTH')[source]#
- min_t: FloatProperty(name='Wave Starts at X', default=0, min=-3.0, max=3, precision=4, unit='LENGTH')[source]#
- wave_distance: FloatProperty(name='Distance Between Multiple Waves', default=0.0, min=0.0, max=100, precision=4, unit='LENGTH')[source]#
- class CamLissajousCurve[source]#
Bases:
bpy.types.Operator
Lissajous
- amplitude_a: FloatProperty(name='Amplitude A', default=0.1, min=0, max=100, precision=4, unit='LENGTH')[source]#
- wave_a: EnumProperty(name='Wave X', items='sine', 'Sine Wave', 'Sine Wave', 'triangle', 'Triangle Wave', 'triangle wave', default='sine')[source]#
- amplitude_b: FloatProperty(name='Amplitude B', default=0.1, min=0, max=100, precision=4, unit='LENGTH')[source]#
- wave_b: EnumProperty(name='Wave Y', items='sine', 'Sine Wave', 'Sine Wave', 'triangle', 'Triangle Wave', 'triangle wave', default='sine')[source]#
- period_a: FloatProperty(name='Period A', default=1.1, min=0.001, max=100, precision=4, unit='LENGTH')[source]#
- period_b: FloatProperty(name='Period B', default=1.0, min=0.001, max=100, precision=4, unit='LENGTH')[source]#
- period_z: FloatProperty(name='Period Z', default=1.0, min=0.001, max=100, precision=4, unit='LENGTH')[source]#
- amplitude_z: FloatProperty(name='Amplitude Z', default=0.0, min=0, max=100, precision=4, unit='LENGTH')[source]#
- shift: FloatProperty(name='Phase Shift', default=0, min=-360, max=360, precision=4, step=100, unit='ROTATION')[source]#
- max_t: FloatProperty(name='Wave Ends at X', default=11, min=-3.0, max=1000000, precision=4, unit='LENGTH')[source]#
- class CamHypotrochoidCurve[source]#
Bases:
bpy.types.Operator
Hypotrochoid
- typecurve: EnumProperty(name='Type of Curve', items='hypo', 'Hypotrochoid', 'Inside ring', 'epi', 'Epicycloid', 'Outside inner ring')[source]#
- R: FloatProperty(name='Big Circle Radius', default=0.25, min=0.001, max=100, precision=4, unit='LENGTH')[source]#
- r: FloatProperty(name='Small Circle Radius', default=0.18, min=0.0001, max=100, precision=4, unit='LENGTH')[source]#
- d: FloatProperty(name='Distance from Center of Interior Circle', default=0.05, min=0, max=100, precision=4, unit='LENGTH')[source]#
- class CamCustomCurve[source]#
Bases:
bpy.types.Operator
Object Custom Curve
- z_string: StringProperty(name='Z Equation', description='Equation z=F(t)', default='0.05*sin(2*pi*4*t)')[source]#
- max_t: FloatProperty(name='Wave Ends at X', default=0.5, min=-3.0, max=10, precision=4, unit='LENGTH')[source]#