Making a Panel Type as an Adaptive Building Component

You can create your own panel type as an Adaptive Building Component to include in the Panel Definition list as a selectable panel type.


Before you begin: To expose parameters for your users to enter in the Panel Wall dialog box for your panel type or to define rules for the panel, you must have a valid license for Engineering Rules Capture.
  1. Set the preferences as follows:
    1. From the top bar, click Me > Preferences.
    2. From the Preferences dialog box, click General > Parameters and Measure.
    3. From the Knowledge tab, select the:

      • With value check box.
      • With formula check box.

    4. From the dialog box tree, click Preferences > Infrastructure > 3D Shape Infrastructure.
    5. From the Display tab, select these check boxes:

      • External References.
      • Constraints.
      • Parameters.
      • Relations.
      • Bodies under operations.
      • Expand sketch-based feature nodes at creation.

    Note: You only have to set the preferences once. Thereafter, they are your default preferences.

  2. Create an AEC type 3D part as follows:
    1. From the top bar, click Add > Content.
    2. From the New Content dialog box, expand Types.
    3. From Building & Civil Architecture, right-click Window and select the Set attributes at creation check box .

      Tip: You may have to expand the selection to see Window.

    4. Click Window.
    5. From the new part type dialog box, in Title, enter the new catalog part name.
    6. From the 3D Part tab, select the Create 3D Part check box.
    7. Click OK.
    The system creates a new tab with your new part name and adds the appropriate IFC property set to the part.
  3. On the new part tab, create a part.

    You may create a parametric part or a part that contains multiple bodies.

  4. To control the position of the component relative to the host object, add a publication containing an axis system

    The axis system is composed of an origin point and three orthogonal axes.

    1. From Part Design, from the Model section of the action bar, click Axis System .

      For instructions on setting the axis system, see the user assistance for Part Design: Defining an Axis System.

    2. In the tree, double-click the top node.
    3. From the Tools section of the action bar, click Create a Publication .
    4. In the tree, select the axis system node.
    5. From the Publication dialog box, from the Publication tab, in Function Name, enter the Position for the name of the publication.
    6. Click OK.
      In the tree, the system adds the publication under the Publication node.

    The system uses the Position publication to position the component relative to the host. The y axis is vertical relative to the host. For example, for a glazed panel, the x axis is parallel to the sill; the y axis is parallel to the jamb or reveal; the z axis is perpendicular to the wall in a positive direction pointing out or away.

  5. To limit the type of host for the component, create and publish a string parameter as follows:
    1. From the Tools section of the action bar, click Formula .
    2. Create a new parameter of type string.
      In the tree, the system adds the publication under the Parameters node.
    3. Rename the parameter to Host.
    4. Set the parameter value to either Wall or Floor.

      For information about creating a formula, see Knowledge Basics: Formulas.

    5. In the tree, double-click the top node.
    6. From the action bar, click Create a Publication .
    7. Select the Host parameter.
    8. From the Publication dialog box, from the Publication tab, in Function Name, enter Host for the publication name.
      In the tree, the system adds the publication under the Publication node.

    If the host is the floor, users can only insert the component on horizontal surfaces. If the host is the wall, users can only insert the component on non-vertical surfaces.

  6. To provide alignment elements:
    1. From the Manage section of the action bar, click Body.
    2. Rename the body to AlignmentElements.
    3. Create one or more planes or points in the body.

      Tip: AlignmentElements facilitates the placement of building components. Alignment planes snap to align with similar alignment planes in other components. Alignment points snap to similar alignment points in other components. Consider adding top, bottom, left, and right alignment planes and alignment points with the four corners of your component.

    4. In the tree, double-click the top node.
    5. From the Tools section of the action bar, click Create a Publication .
    6. In the tree, click the Alignment Element body.
    7. From the Publications dialog box, from the Publication tab, in Function Name, enter AlignmentElement for the publication name.
      In the tree, the system adds the publication under the Publication node.
  7. To provide sill height:
    1. From the Tools section of the action bar click Formula .
    2. Create a length parameter.

      See Knowledge Basics: Formulas.

    3. Rename the parameter to SillHeight.
    4. In the tree, double-click the top node.
    5. From the Tools section of the action bar, click Create a Publication .
    6. Select the SillHeight parameter.
    7. From the Publications dialog box on the Publication, tab, in Function Name, enter SillHeight for the publication name.
      In the tree, the system adds the publication under the Publication node.

    If the host is a wall, the system uses SillHeight to define a line for the component snap elevation. The system places the snap line at the specified SillHeight distance from the story elevation.

  8. To remove or add geometry to the building:
    1. From the Manage section of the action bar, click Body .
    2. Add the desired solid bodies in the new body.

      For instructions on inserting a new body, see the Part Design user assistance.

    3. In the tree, double-click the top node.
    4. From the Tools section of the action bar, click Create a Publication .
    5. In the tree, click the Body node.
    6. From the Publications dialog box, from the Publication tab, in Function Name, enter Internal.
    7. Click OK.
      In the tree, the system adds the publication under the Publication node.
  9. To expose parameters that your users can select in the Position Component dialog box:
    1. Open Engineering Rules Capture, which is accessible from the Compass.
    2. To set the parameters, from the Engineering Rules Capture section of the action bar, click Parameter Set .
    3. In the tree, click 3D Shape.
      The system adds the parameter set in the tree.
    4. To create another parameter set inside the first parameter set, from the action bar, click Parameter Set again.
    5. In the tree, click the new parameter set.

      For instructions on setting a parameter, see in the user assistance Knowledge Basics: Creating Sets of Parameters.

      In the tree, the system adds a parameter set underneath the first parameter set.
    6. On a right-click of the second parameter set, click Properties.
    7. Change the name of the parameter set to TemplateParameters.
    8. Add the desired parameters under the TemplateParamters parameter set.
    9. In the tree, double-click the top node.
    10. To create a publication, from the Tools section of the action bar, click Create a Publication .
    11. In the tree, click the TemplateParamters parameter set.
    12. From the Publications dialog box, from the Publication tab, in Function Name, enter TemplateParamters for the publication name.
    13. Click OK.
      In the tree, the system adds the publication under the Publication node.

    Parameters under the TemplateParameters parameter set in Publication appear in the Position Component dialog box. Users can edit the parameters while selecting and placing the component. Supported parameter types include length, combo, scalar, angle, and integer.

  10. To provide alternate graphics for use instead of the model graphics when exporting to DXF/DWG:
    1. From the Manage section of the action bar, click Body .
    2. Add the desired geometry in the new body.
    3. In the tree, double-click the top node.
    4. To create a publication, from the Tools section of the action bar, click Create a Publication .
    5. In the tree, click the Body node.
    6. From the Publications dialog box, from the Publication tab, in Function Name, enter 2D_Top for the publication name.
    7. Click OK.
      In the tree, the system adds the publication under the Publication node.

    If the 2D_Top publication is present in a component, the system uses the geometry in the publication to generate the graphics while exporting the top view to DWF/DWG.

  11. To have a component reference a dimension in the host object:
    1. From the Tools section of the action bar, click Create a Publication .
    2. In the tree, select the parameter.
    3. From the Publications dialog box from the Publication tab, in Function Name, enter one of the following for the publication name.

      • WallThickness
      • StoryHeight
      • GrossStoryHeight

    4. Click OK.
      In the tree, the system adds the publication under the Publication node.

    When a user inserts the component, the parameter value equals the corresponding dimension from the host object.

  12. To include dimension settings in attribute extensions and to include glazed panel dimensions in the Door Window Schedule:
    1. Open Engineering Rules Capture.
    2. From the action bar, click Rule .

      For instructions on setting a parameter, see in the user assistance Knowledge Basics: Creating Sets of Parameters.

      The system adds the rule in the tree and displays the Edit Rule dialog box.
    3. Add the following:

      /* Find the reference where the properties are stored. */
      let repRef(VPMRepReference)
      let repInst(VPMRepInstance)
      let ref3DPart(VPMReference)
      let listOfInstances(List)
      repRef = GetPLMOwner(Relations)
      listOfInstances = repRef->ListInstances(NULL)
      repInst = listOfInstances[1]
      ref3DPart = repInst.Owner:VPMReference
      
      /* Compute necessary dimensions. */
      let OverallHeight(LENGTH)
      let OverallWidth(LENGTH)
      OverallHeight = 'Picture\TemplateParameters\Window Height'
      +2*Picture\Dimensions\LiningThickness
      OverallWidth=`Picture\TemplateParameters\Window Height`
      +2*Picture\Dimensions\LiningThickness
      
      /* Set values for the WindowBaseQuantities */
      let QTO(IfcQto_WindowBaseQuantities)
      set QTO = ref3DPart
      
      QTO.IfcQto_WindowBaseQuantities_MethodOfMeasurement="3D-Driven"
      
      QTO.IfcQto_WindowBaseQuantities_Width=`Picture\TemplateParameters\Window Height`  +2*Picture\Dimensions\LiningThickness 
      QTO.IfcQto_WindowBaseQuantities_Height=OverallHeight 
      
      QTO.IfcQto_WindowBaseQuantities_Perimeter=OverallHeight + OverallHeight + OverallWidth + OverallWidth 
      QTO.IfcQto_WindowBaseQuantities_Area=OverallHeight * OverallWidth 
      
      /* Set values for IFC Window */
      let WINDOWTYPE(IfcWindow)
      set WINDOWTYPE = ref3DPart
      WINDOWTYPE.IfcWindow_OverallWidth=OverallWidth
      WINDOWTYPE.IfcWindow_OverallHeight=OverallHeight
      
      Note: Variables and equations on the right-hand side of the equations beginning with OveralHeight= and OverallWidth= need to be customized to suite the individual components you are creating

    4. Click OK.
  13. Export the component to 3DXML as follows:
    1. From the top bar from Share, click Export.
    2. From the Export dialog box, ensure Format is set to with authoring (*.3dxml).
    3. Set Location to win_b64\resources\StandardContent\VersionV1.
    4. Click OK.
  14. To add the panel component to the catalog, use a text editor to add an <Item> to win_64\resources\StandardContent\AECPanelsIndex.xml
    For example:
    <Item TranslationMsgID="S-Granite">S-Granite.3dxml</Item>
    The catalog includes your new component.
  15. To add a display name for the Panel Definition, use a text editor to add a line for the new panel type to win_b64\resources\msgcatalog\AECPanelsIndex.CATNIs.
    For example:
    S-Granite = "S-Granite";
    When you create or edit a panel wall, the Panel Wall dialog box Panel Definition list includes your new panel type.
    Tip: To force a re-import of the new panel type, CTRL + select the panel definition in the Panel Wall dialog box.