CAD Dynamic Component


A Dynamic Component output field allows a configurator to dynamically add a part or sub-assembly to another assembly. The component being added can be an existing file from the hard drive, template storage, or can even be another CAD file that was created by Epicor CPQ during the current build. You can position the newly added component by adding mates & other constraints.

Depending on the CAD platform you use, some properties of this feature or the feature itself may not be available.

Properties

Property Datatype Description
Name text The name of the output field. Used for referring to this output field in snap rules.

Source

text

Specifies where the dynamically added file comes from. Options are:

  • Output: The file to be added is a previous output in the same configurator.  
  • Nested: The file to be added is an output from a nested configurator
  • Template: The file will be added from the template storage in the cloud if a relative path is provided in the Filepath property, or from a local filepath if an absolute path is provided in the Filepath property.
Nested Configurator Type text If source is "Nested Configurator", select the appropriate nested configurator from the drop down field.
Nested Configurator Name text If source is "Nested Configurator", enter the appropriate nested configurator name.
Source Output text If source is "Output" or "Nested Configurator", should be set to the ID of the output you want to dynamically add to this one as a component.
File Path text

If source is "Template", then the file path property should be set to the relative path of the template in the template library. You can use the "browse" button to navigate to the desired file.

If you want to use a file from the local file system of an output builder machine as opposed to a file in the cloud template library, then provide an absolute path to this file.

Part Family Name text Set to the name of a part family / configuration (different CAD systems have different names for this) to have the component added as that configuration. Note that this is the name of they component configuration, not the name of a parent configuration. Leave empty to use the default configuration for the component.
Suppressed boolean Set to true to suppress the component after adding it.
Fixed boolean Set to true to fix the component after adding it.
New Name text When a new name is specified, the dynamic component file will be copied into the results folder using the new name as its filename. Then it will be added to the parent assembly.


Available Mates & Constraints

You can position the dynamically added component by adding mates and constraints to the dynamic component either in the configurator tree or through snap rules.  The following mates / constraints are available:

  • Angle Mate

    Used to mate a dynamic component to another component at a specific angle.

  • Coincident Mate

    Used to mate a dynamic component to another component with a set of planes, axes, or points.

  • Coordinate System Mate

    Used to mate a dynamic component to another component with a set of coordinate systems. The coordinate system origins will be coincident with an option to align the major axes.

  • Distance Mate

    Used to mate a dynamic component to another component with a set of planes at a specific distance apart.

  • Position Constraint

    Used to place a component at a specific location and orientation in 3D space.

 

Adding a Dynamic Component in the Configurator Tree

If you know the specific dynamic component and its properties at design time, you can add it directly to the configurator tree. 

For example, you may have a car configurator, and you want to add a wheel component 4 times to the chassis.  The count of wheels does not change, and their positions do not change, regardless of what a user selects in the configurator.  The "wheel" is therefore a dynamic component to add in the Configurator Tree at design time.

To add a dynamic component to the configurator tree, expand the CAD output node in the tree, then

  1. select the 'Fields' node, and click on the '+' button.  
  2. Select dynamic component from the dropdown menu.

 

Once you have added the dynamic component, you can add mates & constraints by selecting the dynamic component in the tree and clicking the '+' button.  Mates added this way will show up as children of the dynamic component in the tree.

An example of adding a dynamic component at design time 

Adding a Dynamic Component in a Snap Rule

If you do not know the specific dynamic component and its properties at design time, you can add it as a Snap rule.  This rule will be calculated when the CAD output is generated, and can be based on parameters in the configurator.

For example, you may have a frame configurator, where a user can select the shape of the frame.  The frame may be a square with 4 sides, or a hexagon with 6 sides, etc.  Since you don't know how many sides your user will select, you don't know at design time the count or length of sides to your custom frame.  The "side" is therefore a dynamic component to add in Snap rules, so it's calculated at run time.

To add a dynamic component in a Snap rule, add an output rule to your CAD output by expanding the output in the tree, selecting the 'Rules' node, and clicking the '+' button.  Open the Snap rule workspace then, then

  • in the 1) configurator > 2) output fields category of the Snap toolbox,
  • find the 'Add dynamic component' 3) Snap block .

Drag the block to the rule workspace, select a source, and set the required properties.  The selections in the snap block are identical to those properties detailed above.

You can also add mates & constraints to your dynamic component in the snap rule by dragging out the 'Add constraint of type' block, selecting the type of constraint, and selecting the dynamic component you want to add the mate to.

Was this article helpful?