Public Member Functions | |
def | attach (self, obj) |
def | execute (self, obj) |
def | get_wire_from_subelements (self, subelements) |
def | get_wires (self, path_object, subelements) |
def | linkSetup (self, obj) |
def | migrate_properties_0v19 (self, obj) |
def | onChanged (self, obj, prop) |
def | onDocumentRestored (self, obj) |
def | set_align_properties (self, obj, properties) |
def | set_general_properties (self, obj, properties) |
def | set_properties (self, obj) |
def | show_and_hide (self, obj, prop) |
Public Member Functions inherited from draftobjects.draftlink.DraftLink | |
def | buildShape (self, obj, pl, pls) |
def | canLinkProperties (self, _obj) |
def | getViewProviderName (self, _obj) |
def | migrate_attributes (self, obj) |
Additional Inherited Members | |
Public Attributes inherited from draftobjects.draftlink.DraftLink | |
use_link | |
Public Attributes inherited from draftobjects.base.DraftObject | |
Type | |
Detailed Description
The Draft Path Array object. The object distributes copies of an object along a path like a polyline, spline, or bezier curve. Attributes ---------- Align: bool It defaults to `False`. It sets whether the object will be specially aligned to the path. AlignMode: str It defaults to `'Original'`. Indicates the type of alignment that will be calculated when `Align` is `True`. `'Original'` mode is the historic `'Align'` for old (v0.18) documents. It is not really the Fernat alignment. It uses the normal parameter from `getNormal` (or the default) as a constant, it does not calculate curve normal. `X` is curve tangent, `Y` is normal parameter, `Z` is the cross product `X` x `Y`. `'Tangent'` mode is similar to `Original`, but includes a pre-rotation (in execute) to align the `Base` object's `X` to `TangentVector`, then `X` follows curve tangent, normal input parameter is the Z component. If `ForceVertical` is `True`, the normal parameter from `getNormal` is ignored, and `X` is curve tangent, `Z` is `VerticalVector`, and `Y` is the cross product `X` x `Z`. `'Frenet'` mode orients the copies to a coordinate system along the path. `X` is tangent to curve, `Y` is curve normal, `Z` is curve binormal. If normal cannot be computed, for example, in a straight line, the default is used. ForceVertical: bool It defaults to `False`. If it is `True`, and `AlignMode` is `'Original'` or `'Tangent'`, it will use the vector in `VerticalVector` as the `Z` axis.
Member Function Documentation
◆ attach()
def draftobjects.patharray.PathArray.attach | ( | self, | |
obj | |||
) |
Set up the properties when the object is attached. Note: we don't exactly know why the properties are added in the `attach` method. They should probably be added in the `__init__` method. Maybe this is related to the link behavior of this class. For PathLinkArray, DraftLink.attach creates the link to the Base. Realthunder: before the big merge, there was only the attach() method in the view object proxy, not the object proxy. I added that to allow the proxy to override the C++ view provider type. The view provider type is normally determined by object's C++ API getViewProviderName(), and cannot be overridden by the proxy. I introduced the attach() method in proxy to allow the core to attach the proxy before creating the C++ view provider.
Reimplemented from draftobjects.draftlink.DraftLink.
References draftobjects.array.Array.set_properties(), and draftobjects.patharray.PathArray.set_properties().
◆ execute()
def draftobjects.patharray.PathArray.execute | ( | self, | |
obj | |||
) |
Execute when the object is created or recomputed.
Reimplemented from draftobjects.base.DraftObject.
References draftobjects.draftlink.DraftLink.buildShape(), DraftVecUtils.equals(), draftobjects.patharray.PathArray.get_wires(), and draftobjects.patharray.placements_on_path().
Referenced by PathScripts.PathDressupDogbone.ObjectDressup.boneStateList(), ArchSite.Compass.buildCoordinates(), PathScripts.PathDressupHoldingTags.ObjectTagDressup.generateTags(), ArchSchedule.CommandArchSchedule.IsActive(), Mod.PartDesign.Scripts.Spring.MySpring.onChanged(), Mod.PartDesign.Scripts.Epitrochoid.Epitrochoid.onChanged(), Mod.PartDesign.Scripts.Parallelepiped.Parallelepiped.onChanged(), Mod.PartDesign.Scripts.DistanceBolt.DistanceBolt.onChanged(), Mod.PartDesign.Scripts.Parallelepiped.BoxCylinder.onChanged(), PathScripts.PathStock.StockFromBase.onChanged(), PathScripts.PathStock.StockCreateBox.onChanged(), PathScripts.PathStock.StockCreateCylinder.onChanged(), and FeaturePython.DistanceBolt.onChanged().
◆ get_wire_from_subelements()
def draftobjects.patharray.PathArray.get_wire_from_subelements | ( | self, | |
subelements | |||
) |
Make a wire from the path object subelements.
Referenced by draftobjects.patharray.PathArray.get_wires().
◆ get_wires()
def draftobjects.patharray.PathArray.get_wires | ( | self, | |
path_object, | |||
subelements | |||
) |
Get wires from the path object.
References draftobjects.patharray.PathArray.get_wire_from_subelements().
Referenced by draftobjects.patharray.PathArray.execute().
◆ linkSetup()
def draftobjects.patharray.PathArray.linkSetup | ( | self, | |
obj | |||
) |
Set up the object as a link object.
Reimplemented from draftobjects.draftlink.DraftLink.
◆ migrate_properties_0v19()
def draftobjects.patharray.PathArray.migrate_properties_0v19 | ( | self, | |
obj | |||
) |
Migrate properties of this class, not from the parent class.
Referenced by draftobjects.pointarray.PointArray.onDocumentRestored(), and draftobjects.patharray.PathArray.onDocumentRestored().
◆ onChanged()
def draftobjects.patharray.PathArray.onChanged | ( | self, | |
obj, | |||
prop | |||
) |
Execute when a property is changed.
Reimplemented from draftobjects.draftlink.DraftLink.
References draftobjects.array.Array.show_and_hide(), and draftobjects.patharray.PathArray.show_and_hide().
Referenced by draftviewproviders.view_base.ViewProviderDraft.attach(), ArchSite.Compass.buildCoordinates(), ArchAxis.CommandArchGrid.IsActive(), draftviewproviders.view_wpproxy.ViewProviderWorkingPlaneProxy.updateData(), and draftviewproviders.view_label.ViewProviderLabel.updateData().
◆ onDocumentRestored()
def draftobjects.patharray.PathArray.onDocumentRestored | ( | self, | |
obj | |||
) |
Execute code when the document is restored. Add properties that don't exist.
Reimplemented from draftobjects.draftlink.DraftLink.
References draftobjects.draftlink.DraftLink.buildShape(), ArchFence._Fence.execute(), App::FeaturePythonImp.execute(), importIFCHelper.ProjectImporter.execute(), ArchPrecast._Precast.execute(), App::FeatureCustomT< FeatureT >.execute(), App::InventorObject.execute(), App::VRMLObject.execute(), App::MeasureDistance.execute(), ArchPrecast._PrecastBeam.execute(), draftobjects.base.DraftObject.execute(), DraftLayer.Layer.execute(), ArchFrame._Frame.execute(), App::PropertyExpressionEngine.execute(), ArchReference.ArchReference.execute(), App::FeatureTest.execute(), App::FeatureTestException.execute(), ArchSchedule._ArchSchedule.execute(), App::Origin.execute(), ArchMaterial._ArchMaterialContainer.execute(), App::FeaturePythonT< FeatureT >.execute(), ArchPipe._ArchPipe.execute(), ArchTruss.Truss.execute(), ArchPrecast._PrecastIbeam.execute(), ArchAxis._Axis.execute(), ArchComponent.Component.execute(), ArchProfile._ProfileC.execute(), ArchFloor._Floor.execute(), ArchCurtainWall.CurtainWall.execute(), ArchProfile._ProfileH.execute(), ArchPrecast._PrecastPillar.execute(), ArchRebar._Rebar.execute(), ArchSpace._Space.execute(), ArchProfile._ProfileR.execute(), ArchEquipment._Equipment.execute(), ArchProfile._ProfileRH.execute(), draftobjects.array.Array.execute(), ArchMaterial._ArchMaterial.execute(), ArchProfile._ProfileU.execute(), ArchPipe._ArchPipeConnector.execute(), DraftLayer.LayerContainer.execute(), ArchBuildingPart.BuildingPart.execute(), ArchStairs._Stairs.execute(), ArchPrecast._PrecastPanel.execute(), ArchPanel._Panel.execute(), ArchPrecast._PrecastSlab.execute(), ArchRoof._Roof.execute(), App::DocumentObject.execute(), ArchStructure._Structure.execute(), ArchPrecast._PrecastStairs.execute(), ArchSite._Site.execute(), ArchWall._Wall.execute(), ArchWindow._Window.execute(), ArchAxis._AxisSystem.execute(), ArchPanel.PanelView.execute(), ArchSectionPlane._SectionPlane.execute(), ArchPanel.PanelCut.execute(), ArchAxis.ArchGrid.execute(), ArchSectionPlane._ArchDrawingView.execute(), ArchStructure._StructuralSystem.execute(), ArchPanel.PanelSheet.execute(), draftobjects.draftlink.DraftLink.linkSetup(), draftobjects.array.Array.linkSetup(), draftobjects.draftlink.DraftLink.migrate_attributes(), draftobjects.patharray.PathArray.migrate_properties_0v19(), draftobjects.array.Array.set_properties(), draftobjects.patharray.PathArray.set_properties(), draftobjects.draftlink.DraftLink.use_link, draftguitools.gui_array_simple.Array.use_link, and draftguitools.gui_patharray.PathArray.use_link.
◆ set_align_properties()
def draftobjects.patharray.PathArray.set_align_properties | ( | self, | |
obj, | |||
properties | |||
) |
Set general properties only if they don't exist.
Referenced by draftobjects.patharray.PathArray.set_properties().
◆ set_general_properties()
def draftobjects.patharray.PathArray.set_general_properties | ( | self, | |
obj, | |||
properties | |||
) |
Set general properties only if they don't exist.
References draftobjects.draftlink.DraftLink.use_link, draftguitools.gui_array_simple.Array.use_link, and draftguitools.gui_patharray.PathArray.use_link.
Referenced by draftobjects.patharray.PathArray.set_properties().
◆ set_properties()
def draftobjects.patharray.PathArray.set_properties | ( | self, | |
obj | |||
) |
Set properties only if they don't exist.
References draftobjects.patharray.PathArray.set_align_properties(), draftobjects.array.Array.set_general_properties(), and draftobjects.patharray.PathArray.set_general_properties().
Referenced by draftobjects.patharray.PathArray.attach(), draftobjects.pointarray.PointArray.onDocumentRestored(), and draftobjects.patharray.PathArray.onDocumentRestored().
◆ show_and_hide()
def draftobjects.patharray.PathArray.show_and_hide | ( | self, | |
obj, | |||
prop | |||
) |
Show and hide the properties depending on the touched property.
Referenced by draftobjects.patharray.PathArray.onChanged().
The documentation for this class was generated from the following file:
- src/Mod/Draft/draftobjects/patharray.py