[SUBROUTINE] icon = circle.png name = Helix by Center image = circle.png type = Helix help = Creates a helix around a center order = act pv h1 cx al_x cy al_y h3 opt dir rot s u_s dpt u_dpt h4 maj_d min_d pitch starts h5 teeth lead_clearance cut_depth [PARAM_ACT] name = Active type = bool value = 1 [PARAM_PV] name = Show design type = bool value = 1 [PARAM_H1] name = Coords, size type = sub-header [PARAM_CX] name = cX type = float icon = center.png tool_tip = Center of helix value = 0.0 metric_value = 0.0 header = h1 [PARAM_AL_X] name = X axis align type = combo options = Left=0:Center=1:Right=2 header = h1 value = 1 tool_tip = Define X reference point [PARAM_CY] name = cY type = float icon = center.png tool_tip = Center of helix value = 0.0 metric_value = 0.0 header = h1 [PARAM_AL_Y] name = Y axis align type = combo options = Top=0:Center=1:Bottom=2 header = h1 value = 1 tool_tip = Define Y reference point [PARAM_H3] name = Milling type = sub-header [PARAM_OPT] name = Option type = combo options = Internal=2:External=3 icon = g4x.png tool_tip = Select Helix Side value = 2 header = h3 [PARAM_DIR] name = Direction type = combo options = Clockwise (RH)=3:Counter-Clockwise (LH)=2 icon = cw-ccw.png tool_tip = Direction of path value = 3 header = h3 [PARAM_ROT] name = Rotation type = float digits = 2 icon = angle.png tool_tip = Rotation of start location value = 0.0 header = h3 suffix = ° [PARAM_S] name = Helix Top type = combo-user options = User defined=0:Surface=1:Half=2:One quarter=3:Three quarter=4 icon = surface.png tool_tip = Pre or user defined value = 1 header = h3 links = u_s=0 [PARAM_U_S] name = User Top type = float value = 0.0 metric_value = 0.0 header = h3 hidden = 1 [PARAM_DPT] name = Helix Bottom type = combo-user options = User defined=0:Through=1:Bottom=2:Half=3:One quarter=4:Three quarter=5 icon = depth.png tool_tip = Pre or user defined value = 1 header = h3 links = u_dpt=0 [PARAM_U_DPT] name = User Bottom type = float value = 0.5 metric_value = 12.0 header = h3 hidden = 1 [PARAM_H4] name = Helix type = sub-header [PARAM_MAJ_D] name = Major Diameter type = float minimum_value = 0.0 icon = diameter.png tool_tip = Major Diameter value = 1.5 header = h1 metric_value = 20 no_zero = 1 [PARAM_MIN_D] name = Minor Diameter type = float minimum_value = 0.0 icon = diameter.png tool_tip = Minor Diameter value = 1.5 header = h1 metric_value = 17.5 no_zero = 1 [PARAM_PITCH] name = Pitch type = float minimum_value = 0.0 tool_tip = Helix Pitch value = 0.2 header = h4 metric_value = 2 no_zero = 1 [PARAM_STARTS] name = Starts type = int minimum_value = 1 tool_tip = Number of Helix Starts value = 1 header = h4 metric_value = 1 no_zero = 1 [PARAM_H5] name = Cutter type = sub-header [PARAM_CUT_DEPTH] name = Cutter Engagement type = float minimum_value = 0.1 tool_tip = Depth of cutter engagment (In units) per pass value = 0.2 header = h5 metric_value = 0.5 no_zero = 1 [PARAM_CUT_TEETH] name = Cutter Teeth type = int minimum_value = 1 tool_tip = Number of Cutting Teeth value = 1 header = h5 metric_value = 1 no_zero = 1 [PARAM_LEAD_CLEARANCE] name = Lead-in Clearance type = float tool_tip = Distance from face (In units) before engaging cutter value = 0.010 header = h5 metric_value = 0.25 no_zero = 1 [DEFINITIONS] content = ; self.include_once(file name here) [CALL] content = (begin helix from center) (author : Fernand Veilleux) o<#self_id_active> if [#param_act] (if enabled) o CALL [32] [#param_dpt] [#param_u_dpt] [#] [#] [# - # / 2] [# - # / 4] [# + # / 4] o CALL [34] [#param_al_y] [-#param_maj_d * #<_units_radius> / 2] [0] [#param_maj_d * #<_units_radius> / 2] o CALL [#param_cx + #33] [#param_cy + #34] [#param_maj_d * #<_units_radius>] [#param_min_d * #<_units_radius>] [#param_pitch] [#param_starts] [#param_cut_teeth] [#param_cut_depth] [#param_rot] [#param_opt] [#param_dir] [#31] [#32] [#param_lead_clearance] [#param_pv] [1] o<#self_id_active> endif