Components provide a way to extend the functionality of members using the Parametric API in a dynamic way that can't be recreated with a normal parametric. More...
Data descriptors defined here: | |
def | description |
Text displayed in the model tree and during hover. | |
def | graphical |
True iff the component is graphical. | |
def | member_number |
Number of the member the component is attached to or 0 if unattached. | |
def | ref_point |
Reference point in member coordinates. | |
def | uuid |
Unique id assigned to a component when it is added to a member. |
Data and other attributes defined here: | |
int | __instance_size__ = 40 |
__safe_for_unpickling__ = True |
Data descriptors inherited from Boost.Python.instance: | |
def | __dict__ |
def | __weakref__ |
Data and other attributes inherited from Boost.Python.instance: | |
def | __new__ |
Components provide a way to extend the functionality of members using the Parametric API in a dynamic way that can't be recreated with a normal parametric.
For example a user might use a parametric to cut a dog bone into a wide flange material. The drawback of using a parametric for this purpose is that the cut will turn the material to user material, thus preventing it from dynamically updating on subsequent changes in the job. If the user wants to change the shape of the material they have to regenerate the material without the cut and then run the parametric again.
Components solve this problem by being stored with a member and executing every time the member goes through process. Any material that is created or changed due to the component is treated as a system operation.
Components fall into the more general plugin extenstion framework (other plugins include commands and custom members). As such, the normal plugin rules apply. For SDS2 to recognize the plugin as a component the source code must define a subclass of Component.Component. Use Component.RegisterComponentType to make the component available in the selection dialog of the component add tool.
Components must be pickleable. Keep in mind components work best if all the persistent data is relative to the member. For example, consider storing points in member coordinates rather than global coordinates. Also, consider rotations and other attributes to be relative to the member so that copying the component to other members has the best chance of behaving as the user expects.
Unlike custom members, SDS2 does not expect anything special to happen in the init method except the normal initializing of super classes appropriately.
Most of the Component methods fall into four categories of operations that all components should support.
Before a component will show up as a choice in the selection dialog of the component add tool it must call Component.RegisterComponentType. Components that don't register can still be added parametrically via Component.AddPairsOfComponentsToMember.
There are three methods used in the component add tool:
SDS2 users are used to manually editing a material in a connection or turning a connection graphical and having the current geometry remain unchanged after processing the member. Components provide this functionality by propagating a graphical change on one piece of the component to all the other parts of the component via OnMaterialEvent, OnBoltEvent, and OnWeldEvent. The default implementation of each of these methods is to set the component to graphical. When the component is written to disk SDS2 will call OnGraphicalToggle if the component's graphical flag has changed. By default OnGraphicalToggle will change all the material, bolts, and welds that the component created to user material via AllOrNoneGraphical.SetPluginSystemGenerated(self, False). When a material is user material process will not throw it away. As such components should not recreate new material on top of the existing user material during process. And by default it won't. However, in most cases components will want to recreate holes on main material even when the component is graphical by implementing the appropriate method.
The last point is worth repeating. In general the only things components should create when they are graphical are the holes on any main material that the component did not create. There are two reasons for this. First, holes are different than materials, bolts, and welds in that SDS2 does not store who created the hole. This makes it impossible to have a callback to the component when a hole is edited (materials with holes will fire material events if one of its holes is edited but that only helps if a component created the material). As such the component has no idea if these types of holes have been edited, deleted or should be recreated if the material needs to be regenerated as it goes through process. This leads the the second reason holes are special for main material. SDS2 wants to keep main material as system material when holes are edited, which means the material will be regenerated when it goes through process. Since a component won't know if a hole has been deleted it is left with two choices. 1. create a new hole for the one that was previously deleted, or 2. not add a hole that should be present. See the Process section in the class documentation for more details.
With the exception of adding holes when graphical, components inherit the basic 'all or nothing' graphical behavior (i.e. everything involved with the component is system, or everything is user, but no mix of the two) without writing any special code. However, in order to allow the user to turn the component back to system, the component must provide a way to toggle the graphical attribute on the stand alone edit screen (Edit) and the member edit screen.
Some operations on materials should not result in user material, e.g. changing the color. OnMaterialNonGraphicalEvent will be called in these cases. The default implementation does nothing and is suitable for most cases. This default implementation will be problematic for plugins that do not attempt to reuse material guids during material creation because nongraphical user changes like color and surface finish will be lost. In this case the fix is to reuse material guids during material creation, not to override OnMaterialNonGraphicalEvent to turn the plugin graphical.
See MemberBase.ReuseAllMaterialByCreator to reuse guids. Better yet, inherit from Designable.ProcessableComponent which is able to reuse guids implicitly when used appropriately.
Once a component is added to a member the member will be marked for process. During process there are many methods that could potentially be called and none of them should block process for user input. Beware components are different than custom members in that there is no guarantee the same instance will be used throughout the entire process. Hence, any data that is shared between different methods should be stored as part of the persistent state of the component.
As far as components are concerned there are three phases of process:
Solids creation This is where each component creates the material, bolts, holes, welds, etc. This phase can be broken down into four sub phases: 1 Independent material phase Create materials, bolts, welds, holes, cuts, etc on the components's member (CreateMaterial) and members it modifies (CreateMaterialOther) that don't require other objects to be already in the job. When the component is graphical the GraphicalCreateMaterial and GraphicalCreateMaterialOther versions of these methods will be called. Most components can stick with the default 'all or none' graphical behavior, i.e. everything involved with the component is system, or everything is user, but no mix of the two. This means components won't create any new objects during process when they are graphical. However, if a component adds holes to main material, it will probably need to override CreateHoleOnMainMaterial and CreateHoleOnMainMaterialOther to add those holes even when the component is graphical. See the documentation on GraphicalCreateMaterial for more information.
2 Hole match phase If a component hole matches material on two different members it should be done in CreateHoleMatch or CreateHoleMatchOther. The are GraphicalCreateHoleMatch and GraphicalCreateHoleMatchOther for the same reasons the independent material phase has GraphicalCreateMaterial and GraphicalCreateMaterialOther. The default implementation of the graphical versions will call CreateHoleMatchOnMainMaterial and CreateHoleMatchOnMainMaterialOther.
3 Bolt match phase This is when a component should bolt match any holes that were created in the hole match phase. Implement CreateDependentMaterial and CreateDependentMaterialOther appropriately. When the component is graphical, override GraphicalCreateDependentMaterial and GraphicalCreateDependentMaterialOther. Since all holes should already be created by now the default implementation for graphical is to do nothing.
4 Clean up phase ProcessFinal and ProcessFinalOther are for any last clean up that a component wants to do before process finishes. It is a convient place to reuse guids via MemberBase.ReuseAllMaterialByCreator.
Component
Boost.Python.instance
builtin.object
def Component.Component.__init__ | ( | arg1 | ) |
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, Designable.ProcessableComponent.EndComponent, and HashingComponent.HashingComponent.
def Component.Component.__dict__ | ( | args | ) |
def Component.Component.__getinitargs__ | ( | arg1 | ) |
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.__getstate__ | ( | arg1 | ) |
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, Designable.ProcessableComponent.EndComponent, and HashingComponent.HashingComponent.
def Component.Component.__new__ | ( | args | ) |
T.__new__(S, ...) -> a new object with type S, a subtype of T
__new__ = <built-in method __new__ of Boost.Python.class object>
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.__reduce__ | ( | args | ) |
__reduce__ = <unnamed Boost.Python function>(args)
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.__setstate__ | ( | arg1, | |
arg2 | |||
) |
def Component.Component.__weakref__ | ( | args | ) |
def Component.Component.Add | ( | arg1, | |
member_number | |||
) |
Accept user input before launching the components edit dialog. The default behavior is to call SetReferencePointForMemberUI().
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CanBeCopiedToOtherMembers | ( | arg1 | ) |
Return True iff this component can be copied to other members. By default any component can be copied to any member but components can override this method if that behavior is inappropriate.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.Clone | ( | arg1 | ) |
Return a deep copy of the component. The default implementation is suitable for most components.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CreateDependentMaterial | ( | arg1 | ) |
Called when the component is *not* graphical during the third material creation phase of process (also referred to as the 'bolt match phase'). This method should bolt match any holes on the component's member that were created during the hole match. See the Process section in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.CreateDependentMaterialOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is *not* graphical during the third material creation phase of process (also referred to as the 'bolt match phase'). This method should bolt match any holes on the specified member that were created during the hole match phase. See the Process section in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CreateHoleMatch | ( | arg1 | ) |
Called when the component is *not* graphical during the second material creation phase of process. This method should create holes on the component's member by matching them to holes created on a different member. See the Process section in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.CreateHoleMatchOnMainMaterial | ( | arg1 | ) |
Called from the default implementation of GraphicalCreateHoleMatch. Graphical components should still create holes on main material. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.CreateHoleMatchOnMainMaterialOther | ( | arg1, | |
other_member_number | |||
) |
Called from the default implementation of GraphicalCreateHoleMatchOther. Graphical components should still create holes on main material. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CreateHoleMatchOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is *not* graphical during the second material creation phase of process. This method should create holes on the specified member by matching them to holes created on a different member. See the Process section in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CreateHoleOnMainMaterial | ( | arg1 | ) |
Called as part of the default implementation for GraphicalCreateMaterial.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.CreateHoleOnMainMaterialOther | ( | arg1, | |
other_member_number | |||
) |
Called from the default implementation of GraphicalCreateMaterialOther when the component is graphical during the first material creation phase of process. Components should still create holes on material they did not create even when the component is graphical.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CreateMaterial | ( | arg1 | ) |
Called when the component is *not* graphical during the first material creation phase of process (also referred to as the 'independent material phase'). This method should create all the material, bolts, holes, and welds on the component's member that don't require other materials to already exist in the job. See the Process section in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.CreateMaterialOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is *not* graphical in the first material creation phase of process (also referred to as the 'independent material phase'). This method should create all the material, bolts, holes, and welds on the specified member that don't require other materials to already exist in the job. See the Process section in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.CreateUI | ( | arg1, | |
arg2 | |||
) |
A method that must be provided by the implementer of the component. Called by Member Edit framework to build the component's edit controls on the Member Edit screen.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.CreateViews | ( | arg1 | ) |
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.Description | ( | arg1 | ) |
Return the text used in the model tree and during hover.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, HashingComponent.HashingComponent, UnreadableComponentProxy.UnreadableComponentProxy, and Designable.ProcessableComponent.EndComponent.
def Component.Component.description | ( | args | ) |
Text displayed in the model tree and during hover.
Components can customize the description by implementing Description.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.Design | ( | arg1 | ) |
Called during process when the component's member is marked for process. Design will be called before any of the material creation methods. The component should know all the material that will be created upon completion. Beware, it is possible for the component to create material on other members without process explicitly calling Design first. See the Process section in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.Edit | ( | arg1 | ) |
Prompt the user with a stand alone single edit screen. Return Trueto indicate the user closed the screen by choosing the 'OK' button.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, HashingComponent.HashingComponent, Designable.ProcessableComponent.EndComponent, and UnreadableComponentProxy.UnreadableComponentProxy.
def Component.Component.EditBeforeAddingToMember | ( | self, | |
member_number | |||
) |
The edit screen before a component is actually added to the member during the component add tool. The default implementation is to call the normal Edit method.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.Finalize | ( | arg1 | ) |
A method that must be provided by the implementer of the component. Perform any clean-up required by the component during Member Edit. (E.g. del the User Interface.)
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GetGraphical | ( | arg1 | ) |
See the graphical property
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GetMemberNumber | ( | arg1 | ) |
See the member_number property
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GetReferencePoint | ( | arg1 | ) |
See the ref_point property
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GetState | ( | arg1 | ) |
A method that must be provided by the implementer of the component. This method should always return a different instance of the same object type. That object must provide a __eq__ method which returns True when compared with an object that has the same state as far as process is concerned.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, HashingComponent.HashingComponent, UnreadableComponentProxy.UnreadableComponentProxy, and Designable.ProcessableComponent.EndComponent.
def Component.Component.graphical | ( | args | ) |
True iff the component is graphical.
By default a graphical component will not recreate new solids during process.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.GraphicalCreateDependentMaterial | ( | arg1 | ) |
Called when the component is graphical during the third material creation phase of process (also referred to as the 'bolt match phase'). This method should bolt match any holes on the component's member that were created during the hole match phase when the component is graphical. The defaul implementation does nothing which should be suitable for most components. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.GraphicalCreateDependentMaterialOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is graphical during the third material creation phase of process (also referred to as the 'bolt match phase'). The default implementation does nothing and is likely the correct behavior for most components. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GraphicalCreateHoleMatch | ( | arg1 | ) |
Called when the component is graphical during the second material creation phase of process. This method should create holes on the component's member by matching them to holes created on a different member. The default implementation calls CreateHoleMatchOnMainMaterial because graphical components should still create holes on main material. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.GraphicalCreateHoleMatchOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is graphical during the second material creation phase of process. This method should create holes on the specified member by matching them to holes created on a different member. The default implementation calls CreateHoleMatchOnMainMaterialOther because graphical components should still create holes on main material. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GraphicalCreateMaterial | ( | arg1 | ) |
Called when the component is graphical during the first material creation phase of process (also referred to as the 'independent material phase'). This method should create all the material, bolts, holes, and welds on the component's member when the component is graphical. The default implementation calls CreateHoleOnMainMaterial because graphical components should still create holes on main material. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.GraphicalCreateMaterialOther | ( | arg1, | |
other_member_number | |||
) |
Called when when the component is graphical during the first material creation phase of process. The default implementation simply calls CreateHoleOnMainMaterialOther. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.GraphicalProcessFinal | ( | arg1 | ) |
Called when the component is graphical as the last phase of process. The default implementation does nothing which should be suitable for most components. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.GraphicalProcessFinalOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is graphical as the last phase of process. The default implementation does nothing which should be suitable for most components. See the Graphical and Process sections in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.Hash | ( | arg1 | ) |
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.IsAllowedOnMember | ( | arg1, | |
member_number | |||
) |
Return True iff this component is allowed on the specified member. By default any component is allowed on any member but if a component should only be added to beams this method should be overridden to return True iff the specified member is a beam.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.IsEraseable | ( | arg1 | ) |
Returns a boolean which determines whether the component is removed from the member on erase or turned graphical
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, Designable.ProcessableComponent.EndComponent, and HashingComponent.HashingComponent.
def Component.Component.IsValid | ( | arg1 | ) |
Indicates whether the state of input to the component's user interface is in a valid state. Default implementation always returns true.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.Load | ( | arg1 | ) |
A method that must be provided by the implementer of the component. Initializes the user interface elements created in CreateUI with values from the component.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.member_number | ( | args | ) |
Number of the member the component is attached to or 0 if unattached.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.Modifies | ( | arg1 | ) |
Return a list of member numbers that this custom member adds materials, holes, bolts, or welds to. This list has a number of important uses including ensuring members are processed, graphical flags are propagated, and locks are handled correctly. This method is called regularly, and as such, should return quickly. Components that take a linear amount of time to compute this list should consider caching the return value as part of the stored state of the component and validating this cache on subsequent calls.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.MultiEdit | ( | arg1, | |
list_of_other_components_to_edit | |||
) |
Prompt the user with a stand alone multi edit screen. Return True to indicate the user closed the screen by choosing the 'OK' button. Components do not support multi edit by default.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, Designable.ProcessableComponent.EndComponent, and HashingComponent.HashingComponent.
def Component.Component.OnBoltEvent | ( | arg1, | |
bolt_guid, | |||
bolt_event_id | |||
) |
Called when one of the bolts that the component created generates an Event.BoltEvent. This method plays an important part in managing the graphical state of a component. The default implementation is AllOrNoneGraphical.SetPluginSystemGenereated(self, False) It should not perform any user interaction
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.OnErase | ( | arg1 | ) |
Called before a component is removed from the job
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.OnGraphicalToggle | ( | arg1 | ) |
Propogate the component's graphical state change to all the objects that the component created. The default implementation is AllOrNoneGraphical.SetPluginSystemGenerated(self, not self.graphical) The method must normally be explicilty invoked from python for it to fire. It should not perform any user interaction.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.OnMaterialEvent | ( | arg1, | |
mtrl_guid, | |||
material_event_id | |||
) |
Called when one of the materials that the component created generates an Event.MaterialEvent. This method plays an important part in managing the graphical state of a component. The default implementation is AllOrNoneGraphical.SetPluginSystemGenereated(self, False) It should not perform any user interaction
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.OnMaterialNonGraphicalEvent | ( | arg1, | |
mtrl_guid, | |||
material_event_id | |||
) |
Called when one of the component created materials is changed in a way that does not typically result in user material, e.g a user changes the color. The default implementation does nothing.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, Designable.ProcessableComponent.EndComponent, and HashingComponent.HashingComponent.
def Component.Component.OnMemberCopy | ( | arg1 | ) |
Called after a component is copied to a new member. This method should update any state that might change based on being copied to a new member. It should not perform any user interaction.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.OnMemberMirrorCopy | ( | arg1, | |
original_member_to_mirrored_member_transform | |||
) |
Called when a member is copied and mirrored. This method should mirror any other atrributes appropriately given the specified transform. The default implementation mirrors ref_point attribute. It should not perform any user interaction.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, Designable.ProcessableComponent.EndComponent, and HashingComponent.HashingComponent.
def Component.Component.OnWeldEvent | ( | arg1, | |
weld_guid, | |||
weld_event_id | |||
) |
Called when one of the welds that the component created generates an Event.WeldEvent. This method plays an important part in managing the graphical state of a component. The default implementation is AllOrNoneGraphical.SetPluginSystemGenereated(self, False) It should not perform any user interaction
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.ProcessFinal | ( | arg1 | ) |
Called when the component is *not* graphical as the last phase of process. Components could use this method to erase temporary material used for fitting, resuing material guids, or any other clean up that needs to be done but wasn't in the other phases of process. See the Process section in the class documentation for more details.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.ProcessFinalOther | ( | arg1, | |
other_member_number | |||
) |
Called when the component is *not* graphical as the last phase of process. Components could use this method to erase temporary material used for fitting, resuing material guids, or any other clean up that needs to be done but wasn't in the other phases of process. See the Process section in the class documentation for more details.
Reimplemented in UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.ref_point | ( | args | ) |
Reference point in member coordinates.
When the component is hovered in modeling this point will be visualized with an indicator.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.Reset | ( | arg1 | ) |
A method that must be provided by the implementer of the component. Restores the values in the UI elements created in CreateUI to their initial values.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.Save | ( | arg1 | ) |
A method that must be provided by the implementer of the component. Extracts the values in the UI elements created in CreateUI and sets them in the component.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, Designable.ProcessableComponent.EndComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.SetGraphical | ( | arg1, | |
arg2 | |||
) |
See the graphical property
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.SetReferencePoint | ( | arg1, | |
arg2 | |||
) |
See the ref_point property
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
def Component.Component.SetReferencePointForMemberUI | ( | arg1, | |
member_number | |||
) |
Set the ref_point given the specified member and return True iff the operation should not be cancelled after any potential user input. This method is called when copying or moving a component and is also called in the default implementation of Add(). The default behavior is to prompt the user for an arbitrary point in global coordinates and then convert that point to a point in the specified member's coordinate system.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, and HashingComponent.HashingComponent.
def Component.Component.uuid | ( | args | ) |
Unique id assigned to a component when it is added to a member.
Reimplemented in Designable.ProcessableComponent.ProcessableComponent, UnreadableComponentProxy.UnreadableComponentProxy, HashingComponent.HashingComponent, and Designable.ProcessableComponent.EndComponent.
|
staticprivate |
|
staticprivate |