To Set Components Symbology by Pipeline Specification


Applies To 
Product(s):OpenPlant Modeler
Version(s):08.11.09.XXX
Environment: Windows 7 64 bit
Area: Settings/Attribute
Subarea: -
Original Author:Rahul Kumar, Bentley Product Advantage Group

To set Component symbology on Pipeline with respect to pipeline specification in OpenPlant Modeler using Named Expression.

Background

OpenPlant component symbology is managed in the typical MicroStation fashion. It is controlled through a combination of Named Expressions (used to read attributes and assign the Element Templates accordingly) and Element Templates (where symbology is defined for the elements identified by the Named Expression).

During the use of Multiple specification for some component (say Flanges/Valves etc ) in a project, sometimes it is required to recognize those component by just looking in to it, hence its being necessary to set some symbology for those elements which exhibit different symbology. A modification in ‘Named Expression’ should require for changing the components symbology by pipeline specification, which can be found under ‘Utilities’ Menu and to customize ‘Element template’ to define the  name and hence color to it under ‘Element’ option. In OpenPlant, Pipeline specification assigned under SPECIFICATION property, hence it is required to write the Named expression according to it. 

Steps to Accomplish

  1. Go to File from Main Menu option and open DGN library files (dgnlib). See image below :



  2. Under Utility Menu, Select Named expression and click on OP_SYMBOLOGY_PIPING. See image below for reference.



  3. Similarly for OP_SYMBOLOGY expression for Centerline and Insulation is required. Below are the Symbology pasted to copy from here and to get it pasted to its respective Expression’s.  

    OP_SYMBOLOGY_PIPING:

    "BY_LEVEL_AND_TEMPLATE:" & PIPELINE.NAME & ":OpenPlant\Piping\" &
        IIF ((OPITEM.IsOfClass( "GATE_VALVE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION ="mEX-OPM"), "Valve:",
          IIF((OPITEM.IsOfClass( "PIPE_FLANGE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION = "mEX-OPM"), "Flange:",
            IIF ((OPITEM.IsOfClass( "GATE_VALVE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION ="mA1-OPM"), "Valve1:",
              IIF((OPITEM.IsOfClass( "PIPE_FLANGE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION = "mA1-OPM"), "Flange1:",
                IIF( OPITEM.NOMINAL_DIAMETER <= 100 , "DiameterRange1:",
                  IIF( OPITEM.NOMINAL_DIAMETER > 100 AND OPITEM.NOMINAL_DIAMETER <= 200, "DiameterRange2:",
                     IIF( OPITEM.NOMINAL_DIAMETER > 200 AND OPITEM.NOMINAL_DIAMETER <= 300, "DiameterRange3:",
                         IIF( OPITEM.NOMINAL_DIAMETER > 300 AND OPITEM.NOMINAL_DIAMETER <= 400, "DiameterRange4:",
                              IIF( OPITEM.NOMINAL_DIAMETER > 400 AND OPITEM.NOMINAL_DIAMETER <= 500, "DiameterRange5:",
                                    IIF( OPITEM.NOMINAL_DIAMETER > 500, "DiameterRange6:", "Default:" ) ) ) ) ) ) ) ) ) ) & "Model"

    OP_SYMBOLOGY_PIPING_CENTERLINE:

    "BY_LEVEL_AND_TEMPLATE:" & PIPELINE.NAME & ":OpenPlant\Piping\" &
        IIF ((OPITEM.IsOfClass( "GATE_VALVE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION ="mEX-OPM"), "Valve:",
          IIF((OPITEM.IsOfClass( "PIPE_FLANGE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION = "mEX-OPM"), "Flange:",
            IIF ((OPITEM.IsOfClass( "GATE_VALVE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION ="mA1-OPM"), "Valve1:",
              IIF((OPITEM.IsOfClass( "PIPE_FLANGE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION = "mA1-OPM"), "Flange1:",
                IIF( OPITEM.NOMINAL_DIAMETER <= 100 , "DiameterRange1:",
                  IIF( OPITEM.NOMINAL_DIAMETER > 100 AND OPITEM.NOMINAL_DIAMETER <= 200, "DiameterRange2:",
                     IIF( OPITEM.NOMINAL_DIAMETER > 200 AND OPITEM.NOMINAL_DIAMETER <= 300, "DiameterRange3:",
                         IIF( OPITEM.NOMINAL_DIAMETER > 300 AND OPITEM.NOMINAL_DIAMETER <= 400, "DiameterRange4:",
                              IIF( OPITEM.NOMINAL_DIAMETER > 400 AND OPITEM.NOMINAL_DIAMETER <= 500, "DiameterRange5:",
                                    IIF( OPITEM.NOMINAL_DIAMETER > 500, "DiameterRange6:", "Default:" ) ) ) ) ) ) ) ) ) ) & "Centerline"

    OP_SYMBOLOGY_PIPING_INSULATION:

    "BY_LEVEL_AND_TEMPLATE:" & PIPELINE.NAME & "-INS" & ":OpenPlant\Piping\" &
        IIF ((OPITEM.IsOfClass( "GATE_VALVE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION ="mEX-OPM"), "Valve:",
          IIF((OPITEM.IsOfClass( "PIPE_FLANGE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION = "mEX-OPM"), "Flange:",
            IIF ((OPITEM.IsOfClass( "GATE_VALVE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION ="mA1-OPM"), "Valve1:",
              IIF((OPITEM.IsOfClass( "PIPE_FLANGE", "OpenPlant_3D" ) AND OPITEM.SPECIFICATION = "mA1-OPM"), "Flange1:",
                IIF( OPITEM.NOMINAL_DIAMETER <= 100 , "DiameterRange1:",
                  IIF( OPITEM.NOMINAL_DIAMETER > 100 AND OPITEM.NOMINAL_DIAMETER <= 200, "DiameterRange2:",
                     IIF( OPITEM.NOMINAL_DIAMETER > 200 AND OPITEM.NOMINAL_DIAMETER <= 300, "DiameterRange3:",
                         IIF( OPITEM.NOMINAL_DIAMETER > 300 AND OPITEM.NOMINAL_DIAMETER <= 400, "DiameterRange4:",
                              IIF( OPITEM.NOMINAL_DIAMETER > 400 AND OPITEM.NOMINAL_DIAMETER <= 500, "DiameterRange5:",
                                    IIF( OPITEM.NOMINAL_DIAMETER > 500, "DiameterRange6:", "Default:" ) ) ) ) ) ) ) ) ) ) & "Insulation"

    Note: Make sure to copy the strings correctly.

  4. Save each Expression which turns blue. Save option will get enabled once you modify the Expressions: See below for reference.



  5. Open Element Template, and Expand Piping Node. To define the components, say a Flange/Valve, user need to create a separate template group as shown below. Select ‘New Template group’ for a New Line Number and ‘New Template’ option to define 3 nodes Model, Centerline, and Insulation. See image below:



  6. Define component as shown in below for few pipelines. 


    Note - Set colors as desired and levels where you want to define it by clicking on it. Similarly you can create it for centerline and Insulation. 

  7. Launch OpenPlant Modeler and Verify results. See images below: 

    With Spec mEX-OPM

    With Spec mA1-OPM

See Also

communities.bentley.com/.../how-to-set-pipeline-color-by-service-in-openplant-modeler

communities.bentley.com/.../named-expressions-managing-component-symbology-in-openplant-modeler

communities.bentley.com/.../how-to-set-pipeline-color-by-line_5f00_number-name

communities.bentley.com/.../to-set-components-symbology-by-pipeline-specification  

Comments or Corrections?

Bentley's Product Advantage Group requests that you please confine any comments you have on this Wiki entry to this Comments or Corrections?" section. THANK YOU!