2.3 - Modules
A module is a Configurable Product π with some extra data.
BMAβ
A module will always be an assembly (BMA). Modules are attached using anchors, and anchors must be configured in a BMA.
Anchorsβ
Anchors inside the BMA are used to attach modules together. Without them, a module cannot be attached to another one.
Naming conventionβ
When creating an anchor, you will have to set tags and receive tags. On linear products the configurator uses anchor receive tags to compute the module order from left to right. The convention is that receive tags must start with "left" or "right".
If you face a module, the anchor on the left of it must have receive tags starting with "right". The anchor on the right must have a receive tag starting with "left".
Compatibilityβ
When building a modular product, the Product Configurator will use anchors to add modules.
When the user clicks an anchor, the list of modules that can be added on it will be the list of modules from the modular context, filtered by anchor tags / receive tags compatible with the clicked anchor. If the clicked anchor has a receive tag named "right_test", the configurator will only display the modules having at least one anchor with a tag "right_test".
As an example, if all modules can be added next to any module, you can do this on every module:
- Anchor on the left (when facing the module):
- receiveTags: ["right"]
- tags: ["left"]
- Anchor on the right (when facing the module):
- receiveTags: ["left"]
- tags: ["right"]
Positionβ
The position of the anchor is where the modules will attach themselves. It's also where the Product Configurator will display a clickable icon. It's recommended to place the anchor where it's most natural to click. So choose a height and use it on every module. For example on a sofa, 20cm seems to be a good choice.
If you use polylines for dimensions (see below), you must place the anchor exactly on the same vertical axis than the lines. If you do not use polylines, you must place the anchor exactly on the edge of the 3D. See below.
Dimensionsβ
Depending on the product, you may have to take some extra step to display the correct dimensions of a modular composition to the user.
There are two cases:
- The size of your 3D module is exactly the commercial size.
- In this case, just make sure to place the anchors exactly on the edge of the 3D. This way the composition size will give the correct dimensions.
- The size of your 3D module is not the commercial one. This happens if you have some overflowing foam on the edge of the model.
- In this case, you will have to create polylines. Anchors must be placed exactly on the same vertical axis than the lines.
The image below illustrate the difference between "real" dimensions (the thin blue box) and the "commercial" dimensions to display to the user (the red box).
To create the red box in the previous image, you will have to create polylines in the assembly editor. This is also where you create the anchors, so you can use relations to place them on the exact same vertical axis.
- In the "Output Set" category of the assembly editor, add a new "Polyline Set".
- Name of the polyline set : "Dimensions"
- Then create the polylines by placing points where the commercial dimensions should be. You can place only 3 lines for the three axes (X, Y, Z), you do not have to create a full box.
Parametersβ
Reserved parametersβ
ID | Type | Mandatory |
---|---|---|
startingModule π | Boolean | NO |
index π | Integer | NO |
startingModuleβ
If you do not want the module to be displayed as a choice when replacing the first module in the 3D, add this parameter with a default value set to "false". This way the user will not be able to start his composition with this module.
indexβ
If you create this parameter on a module, the Product Configurator will automatically fill it with the index of the module from left to right.
The first module on the left will have its index
parameter filled with 1, the second module will have its index
parameter filled with 2, etc.
This only works if you followed the naming convention for anchors. π
Other parametersβ
You can add other parameters that will be used to configure the module, like any other product. See Parameters π for more information about the parameter's behavior.