Operation setting support for all pocket ops.

This commit is contained in:
Markus Lampert
2018-08-25 19:51:27 -07:00
parent ea84b18aee
commit 7d8ed6fd70
7 changed files with 27 additions and 16 deletions

View File

@@ -139,9 +139,12 @@ class ObjectFace(PathPocketBase.ObjectPocket):
if len(obj.Base) >= 1:
obj.OpFinalDepth = Part.makeCompound(obj.Base).BoundBox.ZMax
def SetupProperties():
return PathPocketBase.SetupProperties() + [ "BoundaryShape" ]
def Create(name):
def Create(name, obj = None):
'''Create(name) ... Creates and returns a Mill Facing operation.'''
obj = FreeCAD.ActiveDocument.addObject("Path::FeaturePython", name)
if obj is None:
obj = FreeCAD.ActiveDocument.addObject("Path::FeaturePython", name)
proxy = ObjectFace(obj, name)
return obj

View File

@@ -47,7 +47,8 @@ Command = PathOpGui.SetupOperation('MillFace',
TaskPanelOpPage,
'Path-Face',
QtCore.QT_TRANSLATE_NOOP("PathFace", "Face"),
QtCore.QT_TRANSLATE_NOOP("PathFace", "Create a Facing Operation from a model or face"))
QtCore.QT_TRANSLATE_NOOP("PathFace", "Create a Facing Operation from a model or face"),
PathMillFace.SetupProperties)
FreeCAD.Console.PrintLog("Loading PathMillFaceGui... done\n")

View File

@@ -93,8 +93,12 @@ class ObjectPocket(PathPocketBase.ObjectPocket):
obj.StepOver = 100
obj.ZigZagAngle = 45
def Create(name):
def SetupProperties():
return PathPocketBase.SetupProperties()
def Create(name, obj = None):
'''Create(name) ... Creates and returns a Pocket operation.'''
obj = FreeCAD.ActiveDocument.addObject("Path::FeaturePython", name)
if obj is None:
obj = FreeCAD.ActiveDocument.addObject("Path::FeaturePython", name)
proxy = ObjectPocket(obj, name)
return obj

View File

@@ -132,3 +132,12 @@ class ObjectPocket(PathAreaOp.ObjectOp):
params['threshold'] = self.radius * 2
return params
def SetupProperties():
setup = []
setup.append('CutMode')
setup.append('ExtraOffset')
setup.append('StepOver')
setup.append('ZigZagAngle')
setup.append('OffsetPattern')
return setup

View File

@@ -46,6 +46,7 @@ Command = PathOpGui.SetupOperation('Pocket 3D',
TaskPanelOpPage,
'Path-3DPocket',
QtCore.QT_TRANSLATE_NOOP("PathPocket", "3D Pocket"),
QtCore.QT_TRANSLATE_NOOP("PathPocket", "Creates a Path 3D Pocket object from a face or faces"))
QtCore.QT_TRANSLATE_NOOP("PathPocket", "Creates a Path 3D Pocket object from a face or faces"),
PathPocket.SetupProperties)
FreeCAD.Console.PrintLog("Loading PathPocketGui... done\n")

View File

@@ -157,16 +157,9 @@ class ObjectPocket(PathPocketBase.ObjectPocket):
obj.OpStartDepth = bb.ZMax
def SetupProperties():
setup = []
setup.append('CutMode')
setup.append('ExtraOffset')
setup.append('StepOver')
setup.append('ZigZagAngle')
setup.append('OffsetPattern')
setup.append('UseOutline')
return setup
return PathPocketBase.SetupProperties() + [ 'UseOutline' ]
def Create(name, obj=None):
def Create(name, obj = None):
'''Create(name) ... Creates and returns a Pocket operation.'''
if obj is None:
obj = FreeCAD.ActiveDocument.addObject("Path::FeaturePython", name)

View File

@@ -111,7 +111,7 @@ class ObjectContour(PathProfileBase.ObjectProfile):
def SetupProperties():
return [p for p in PathProfileBase.SetupProperties() if p != 'Side']
def Create(name, obj=None):
def Create(name, obj = None):
'''Create(name) ... Creates and returns a Contour operation.'''
if obj is None:
obj = FreeCAD.ActiveDocument.addObject("Path::FeaturePython", name)