def buildpathlibarea(self, obj, a): """Build the face path using libarea algorithm""" import PathScripts.PathAreaUtils as PathAreaUtils from PathScripts.PathUtils import depth_params FreeCAD.Console.PrintMessage( translate("PathFace", "Generating toolpath with libarea offsets.\n")) depthparams = depth_params(obj.ClearanceHeight.Value, obj.SafeHeight.Value, obj.StartDepth.Value, obj.StepDown, obj.FinishDepth.Value, obj.FinalDepth.Value) extraoffset = 1 - obj.PassExtension.Value stepover = (self.radius * 2) * (float(obj.StepOver) / 100) use_zig_zag = obj.UseZigZag zig_angle = obj.ZigZagAngle from_center = (obj.StartAt == "Center") keep_tool_down = obj.KeepToolDown zig_unidirectional = obj.ZigUnidirectional start_point = None cut_mode = obj.CutMode PathAreaUtils.flush_nc() PathAreaUtils.output('mem') PathAreaUtils.feedrate_hv(self.horizFeed, self.vertFeed) if obj.UseStartPoint: start_point = (obj.StartPoint.x, obj.StartPoint.y) PathAreaUtils.pocket(a, self.radius, extraoffset, stepover, depthparams, from_center, keep_tool_down, use_zig_zag, zig_angle, zig_unidirectional, start_point, cut_mode) return PathAreaUtils.retrieve_gcode()
def buildpathlibarea(self, obj, a): """Build the pocket path using libarea algorithm""" import PathScripts.PathAreaUtils as PathAreaUtils from PathScripts.PathUtils import depth_params PathLog.debug("Generating toolpath with libarea offsets.\n") depthparams = depth_params(obj.ClearanceHeight.Value, obj.SafeHeight.Value, obj.StartDepth.Value, obj.StepDown, obj.FinishDepth.Value, obj.FinalDepth.Value) extraoffset = obj.MaterialAllowance.Value stepover = (self.radius * 2) * (float(obj.StepOver) / 100) use_zig_zag = obj.UseZigZag zig_angle = obj.ZigZagAngle from_center = (obj.StartAt == "Center") keep_tool_down = obj.KeepToolDown zig_unidirectional = obj.ZigUnidirectional start_point = None cut_mode = obj.CutMode PathAreaUtils.flush_nc() PathAreaUtils.output('mem') PathAreaUtils.feedrate_hv(self.horizFeed, self.vertFeed) if obj.UseStartPoint: start_point = (obj.StartPoint.x, obj.StartPoint.y) # print "a," + str(self.radius) + "," + str(extraoffset) + "," + str(stepover) + ",depthparams, " + str(from_center) + "," + str(keep_tool_down) + "," + str(use_zig_zag) + "," + str(zig_angle) + "," + str(zig_unidirectional) + "," + str(start_point) + "," + str(cut_mode) PathAreaUtils.pocket(a, self.radius, extraoffset, stepover, depthparams, from_center, keep_tool_down, use_zig_zag, zig_angle, zig_unidirectional, start_point, cut_mode) return PathAreaUtils.retrieve_gcode()
def buildpathlibarea(self, obj, a): """Build the face path using libarea algorithm""" import PathScripts.PathAreaUtils as PathAreaUtils from PathScripts.PathUtils import depth_params PathLog.track() for p in a.getCurves(): PathLog.debug(p.text()) FreeCAD.Console.PrintMessage(translate("PathMillFace", "Generating toolpath with libarea offsets.\n")) depthparams = depth_params( obj.ClearanceHeight.Value, obj.SafeHeight.Value, obj.StartDepth.Value, obj.StepDown, obj.FinishDepth.Value, obj.FinalDepth.Value) extraoffset = - obj.PassExtension.Value stepover = (self.radius * 2) * (float(obj.StepOver)/100) use_zig_zag = obj.UseZigZag zig_angle = obj.ZigZagAngle from_center = (obj.StartAt == "Center") keep_tool_down = obj.KeepToolDown zig_unidirectional = obj.ZigUnidirectional start_point = None cut_mode = obj.CutMode PathAreaUtils.flush_nc() PathAreaUtils.output('mem') PathAreaUtils.feedrate_hv(self.horizFeed, self.vertFeed) if obj.UseStartPoint: start_point = (obj.StartPoint.x, obj.StartPoint.y) PathAreaUtils.pocket( a, self.radius, extraoffset, stepover, depthparams, from_center, keep_tool_down, use_zig_zag, zig_angle, zig_unidirectional, start_point, cut_mode) return PathAreaUtils.retrieve_gcode()
def buildpathlibarea(self, obj, a): """Build the pocket path using libarea algorithm""" import PathScripts.PathAreaUtils as PathAreaUtils from PathScripts.PathUtils import depth_params FreeCAD.Console.PrintMessage(translate("PathPocket", "Generating toolpath with libarea offsets.\n")) depthparams = depth_params( obj.ClearanceHeight.Value, obj.SafeHeight.Value, obj.StartDepth.Value, obj.StepDown, obj.FinishDepth.Value, obj.FinalDepth.Value) extraoffset = obj.MaterialAllowance.Value stepover = (self.radius * 2) * (float(obj.StepOver)/100) use_zig_zag = obj.UseZigZag zig_angle = obj.ZigZagAngle from_center = (obj.StartAt == "Center") keep_tool_down = obj.KeepToolDown zig_unidirectional = obj.ZigUnidirectional start_point = None cut_mode = obj.CutMode PathAreaUtils.flush_nc() PathAreaUtils.output('mem') PathAreaUtils.feedrate_hv(self.horizFeed, self.vertFeed) if obj.UseStartPoint: start_point = (obj.StartPoint.x, obj.StartPoint.y) # print "a," + str(self.radius) + "," + str(extraoffset) + "," + str(stepover) + ",depthparams, " + str(from_center) + "," + str(keep_tool_down) + "," + str(use_zig_zag) + "," + str(zig_angle) + "," + str(zig_unidirectional) + "," + str(start_point) + "," + str(cut_mode) PathAreaUtils.pocket( a, self.radius, extraoffset, stepover, depthparams, from_center, keep_tool_down, use_zig_zag, zig_angle, zig_unidirectional, start_point, cut_mode) return PathAreaUtils.retrieve_gcode()