3D publishing control
A 3D publishing control specifies which object hierarchies and object attributes to include when publishing a 3D model such as an eBrowser model with Plant Modeller.
-
Object hierarchy defines how the list of objects that the model contains is presented on the Model tab of eBrowser.
The hierarchies that the 3D publishing control is configured to publish are listed in the hierarchy menu of eBrowser, and the user can select a hierarchy, for example "Systems and Lines" or "3D Space", to arrange the object tree according to that setting.
-
Object attributes the user sees in eBrowser when selecting View Details from the context menu of an individual object, or in some other CADMATIC application that retrieves attributes from an eBrowser model.
You can create multiple 3D publishing controls for different kinds of publishing needs; when publishing an eBrowser model you select which publishing control to use for it. One publishing control can create multiple custom hierarchies and add a specific set of attributes for each object type.
When you select to edit a 3D publishing control it opens in the default text editor of your computer. In the publishing control file you can refer to any Plant Modeller object attribute tags to create the required object hierarchies and to add attributes to objects. You can also use some special tags such as .E2 which publishes the import group name of objects that have been added to Plant Modeller via 3D import.
When editing a 3D publishing control, pay special attention to the format and the structure, for example to not remove a field separator character by accident. Also remember to check in the 3D publishing control after editing.
Managing 3D publishing controls
You can create and edit 3D publishing controls in the Project Environment dialog. Note that you must open the Project Environment dialog from Plant Modeller, and not from CADMATIC Desktop.
-
In Plant Modeller, select File > Environment > All Library and Project. When the Project Environment dialog opens, browse to [project database] > 3D Export Settings > 3D Publishing Control.
Usually there is at least a sample 3D publishing control Default.xcf that you can use to publish a few hierarchies and some basic object attributes into eBrowser models. We recommend that you use the default publishing control as a template for creating your own custom publishing control that publishes all the information that you need to see in eBrowser. If Default.xcf does not exist, you can select New > 3D Publishing Control to create a new publishing control that contains the default configuration.
Note: If you have upgraded from version CADMATIC 2014Q4 or older, your current publishing control might be missing some of the latest features. Create a new 3D publishing control file, compare it to your existing publishing control, and copy any new content to your existing publishing control to get full advantage of all supported features.
Note: When converting a project to version 6.3.0 or newer, old *.xcf files at the main site are automatically converted to 3D Publishing Control objects.
In the pane that lists the available 3D publishing controls, you can manage your publishing controls with the following context menu commands.
Command |
Description |
---|---|
Edit |
Opens the 3D publishing control in the default text editor of your system. In the text file, you can edit hierarchy publishing settings and attribute publishing settings, as described in Publishing hierarchies and Publishing attributes, respectively. Make the required changes, save and close the text file, and check it in. |
Edit Attributes |
Allows selecting the attributes to show for the 3D publishing control and editing their values (typically, to rename a publishing control). |
Check In |
Checks in the edited 3D publishing control file. |
Cancel Checkout |
Checks in the 3D publishing control file as it was before you opened it for editing. Any changes you might have made to the publishing control text file will not be included. |
New > 3D Publishing Control |
Creates a new 3D publishing control. You are prompted to define its attributes (Name and Description). |
Copy, Paste |
Copies/pastes a 3D publishing control. |
Property |
Shows the properties of the 3D publishing control. In the properties you can view the text of the publishing control in read-only mode. |
Publishing hierarchies
In a 3D publishing control file you can define the hierarchies to include in eBrowser models that are published with that publishing control. When the user selects a hierarchy from the hierarchy menu of eBrowser, the object tree is structured according to the Plant Modeller attribute (tag) values of the objects in the model, or by using the associations between objects (such as group membership), depending on how the hierarchy is configured.
A hierarchy definition has the following basic structure:
<hierarchy record>
<hierarchy level record>
<2nd level hierarchy record>
...
The hierarchy record row only contains the hie field, and it specifies the name to display in the hierarchy menu of eBrowser. Each level record row starts with the hno field and defines one hierarchy level according to which objects are arranged in the object tree of eBrowser.
Types of hierarchies
-
Tag-based hierarchy – The default hierarchy type. In this case, the object tree is built by placing each published object into the tree branch determined by the Plant Modeller attribute (tag) values of the object. Hierarchy definition specifies which tags are used to create the levels. If groups are published, they are connected to the tree matching tree nodes.
-
Association based hierarchy – Created based on the groups the objects belong to. In this case the object tree is created by adding the top level groups (groups that do not have a parent themselves) to the tree, and then adding objects belonging to each group under the group in the tree. It is also possible to add tag-based levels to the hierarchy, but they will only be used on the top level items and not the later items added in the groups using associations.
Association hierarchies can only be published if groups are included in the publish, otherwise they are removed during publishing.
For example, this very simple hierarchy definition would allow the user to select "By System" from the hierarchy menu of eBrowser, and as a result the object tree would be arranged by the system of the objects:
hie By System;;
hno Systems; que sys;;
To create a hierarchy that uses associations between objects to form the hierarchy, the following line can be used to define it:
hie Default; asc 1; unm 1;;
These fields can be specified in a hierarchy definition:
Field |
Description |
---|---|
hie |
Specifies the name that is displayed in the hierarchy menu of eBrowser. |
asc |
Specifies whether the associations between objects (such as group membership) in Plant Modeller are used to build the hierarchy. Added to hie definition. If not specified, the default is 0. |
unm |
Specifies whether unnamed objects are displayed in the hierarchy or not. Added to hie definition. If not specified, the default is 0. |
ord |
Specifies how the items in the hierarchy are ordered. Available values are: 0 – Use the default value based on hierarchy type. Hierarchies using associations (the asc parameter is 1) default to ordering option 2, while the other hierarchies default to ordering option 3) 1 – Preserve original order 2 – Preserve original order for items and subnodes in Pipelines, Duct lines and Cable Trays. Also preserve the order for objects on the bottom level of the hierarchy. 3 – Sort items on every level alphabetically. |
hno |
Specifies the name of the hierarchy level. (This is just for reference, and the name can be anything.) |
que |
Specifies the tag of the object attribute to use to arrange the objects on this hierarchy level. Note: The associated attribute must be published to the eBrowser model. For example, to create a hierarchy based on import group name, the publishing control must specify the .E2 attribute to be included in equipment and structural components. See Publishing attributes. |
grp |
Specifies the name of a 3D space type displayed on this hierarchy level. The value of grp must be a valid Plant Modeller space type. When grp is defined, que does not need to be defined because the objects are arranged according to their containment in 3D spaces. |
nom |
Specifies the name of the hierarchy that lists any objects that do not have the tag defined in que, or do not belong to the space type defined in grp. |
Defining the objects to the top level
When using association hierarchies, it is possible to configure the item types that get added to the top level of the hierarchy to use specific types instead of, or in addition to the items that do not have a parent. This can be used for example to add ductlines and pipelines as the first level, skipping systems. In such a case, hierarchy levels using attribute values in Pipeline objects can be added as well if needed.
hie Associations for lines; asc 1;;
itm Pipe; typ 15; sub 1;;
itm Duct; typ 15; sub 13;;
hie Associations for objects without parent and lines; asc 1;;
itm toplevel;;
itm Pipe; typ 15; sub 1;;
itm Duct; typ 15; sub 13;;
Field |
Description |
---|---|
itm |
Description given by the user to items that are added to the association-based hierarchies before resolving the associations group membership. Can be specified with "toplevel" to include items without parent (in this case "typ" or "sub" do not need to be defined for the entry), or with "typ" and "sub". The inclusion of "toplevel" is only needed if other types are specified, if nothing is specified the default is to only display "toplevel" items. |
typ |
Object type, same as used for "obt" in the Publishing attributes. |
sub |
Subtype for types that have subtypes, such as groups. See Group types. |
Example hierarchy definitions
The following example hierarchy definition section of a 3D publishing control creates two hierarchies that the user can then select from the hierarchy menu of eBrowser.
< hierarchies;;
hie Systems and Lines;;
hno Systems; que sys;;
hno Pipe, Cable and Duct Lines; que pli; que .qz; que .rR; que obt;;
hie Material;;
hno Material; nom Material not defined; que MC;;
> hierarchies;;
-
The "Systems and Lines" definition arranges the object tree primarily by system and secondarily by line, and at line level the objects are listed based on the values of the following attributes, in order of priority: pli (pipeline name), .qz (cable tray), .rR (duct line), and obt (object type).
-
The "Material" definition arranges the object tree according to material. Objects that do not have the MC tag are listed in the default hierarchy which is renamed as "Material not defined".
The following shows some examples of association-based hierarchies.
< hierarchies;;
hie Default; asc 1; unm 1;;
hie Systems and Lines;;
hno Systems; que sys;;
hno Pipe, Cable and Duct Lines; que pli; que .qz; que .rR; que obt;;
hie Material;;
hno Material; nom Material not defined; que MC;;
> hierarchies;;
Group types
Group type Id Numbers used are listed below.

-
0 – Spool
-
1 – Pipeline
-
2 – Isometry
-
3 – Piperack
-
4 – Aggregate
-
5 – Airduct
-
6 – Bom (Bill of Material; used by document management to define the objects to be written to the m-file)
-
7 – Steel structure
-
8 – Support Location Plan
-
9 – Piping Support
-
10 – Prim and Sec Supports
-
11 – ServiceSpace
-
12 – Cable tray
-
13 – HVAC line
-
14 – Tank
-
15 – Tank Connection
-
16 – TaskIncl
-
17 – TaskExcl
-
18 – PipelineBranch
-
19 – Penetration
-
20 – Duct Spool
-
(21–50 – User-definable groups)
-
51 – Duct Main Document
-
52 – Structural Unit
-
53 – Phase in Logistics 3Dspace
-
54 – Weld
-
55 – Pipe Main Document
-
56 – Duct Penetration
-
57 – Pipe Spool Candidate
-
58 – Model Unit
-
59 - Piping isometry
-
60 - System (handled as a group in eBrowser)
Publishing attributes
Important: Starting from 2019T3, attributes for piping parts are published with obt 9 tag records. If using a 3D publishing control file that does not contain obt 9 tag records, the program tries to publish attributes with the old obt 3 tag records.
In a 3D publishing control file you can define the Plant Modeller object attributes to include in eBrowser models that are published with that publishing control. Each attribute to be included must be specified with an object type specific tag record.
For example, this tag record specifies that objects of type Equipment (obt = 1) are to include the System attribute (abr = sys), and the description (attribute name) to show to the user is "System":
obt 1; abr sys; dsc System;;
Note: If you edit the description, use the same description for all object types that publish the attribute. This is because in the model each attribute will have a single display name, taken from the first published object that contains the given attribute.
If the description field is commented out as shown below, eBrowser will show the attribute's default description:
obt 1; abr sys; /*dsc System;*/;
Note: If you comment out fields, make sure you do not delete or comment out any required field separator characters or the terminating character (the extra semicolon at the end).
If the attribute is an enumerated type, eBrowser shows the enumerator string values. For example, if publishing the "Type of object" (obt) attribute for equipment as shown below, eBrowser shows the string value "Equipment" instead of the code value "1":
obt 1; abr obt; /*dsc Type of object;*/;
If an object of the specified type does not have the tag defined in the tag record, then the attribute simply is not shown in eBrowser.
The following table describes the fields that can be defined in the tag record of an object attribute.
Field |
Description |
---|---|
nod |
Node. |
obt |
Plant Modeller object type number.
|
ins |
Set to 1 for attributes that describe insulation properties. Note: This attribute is not supported in publishing of eBrowser models. It only works with 3D exports performed via Model > Export. See Publishing insulation attributes. |
abr |
Plant Modeller attribute's tag. |
dsc (optional) |
The description to show when viewing object details in eBrowser. If description is not defined or is commented out, then the tag's default description is shown. |
cpc (optional) |
Set to 1 for attributes that are defined in the library: in a dimension table, catalog size, or catalog part. |
key (optional) |
Set to 1 for tags which externally identify the object (typically, a position ID string) and whose values can be used in eBrowser search. Must not be defined for tags which are not such identifiers. Note: If an object has several attributes that are defined as key attributes, eBrowser search will only find the object via the last key attribute in the attribute definition. |
Example attribute definitions
The following example attribute definitions specify the attributes to publish for nodes, equipment, and standard components. Each definition code block is followed by an example of object details being displayed in eBrowser.
Example Tag Records for Adding Attributes to Nodes
/* NODES */
nod 0; abr nod; dsc Name;;
nod 0; abr NS; dsc Nominal size;;
nod 0; abr RT; dsc Rating;;
nod 0; abr adw; dsc Width of rectangular connection;;
nod 0; abr adh; dsc Height of rectangular connection;;
nod 0; abr ft1; dsc Description of face;;
nod 0; abr FL; dsc Direction of flow;;
nod 0; abr .rn; dsc Diameter of hole;;
Result in eBrowser:
Example Tag Records for Adding Attributes to Equipment
/* EQUIPMENT */
obt 1; abr obt; dsc Type;;
obt 1; abr nam; dsc Position Id; key 1;;
obt 1; abr sys; dsc System;;
obt 1; abr DES; dsc Description;;
obt 1; abr MAS; dsc Mass;;
obt 1; abr mot; dsc Modification time;;
obt 1; abr obi; dsc Object Id;;
obt 1; abr .rc; dsc Color (RGB);;
obt 1; abr .E2; dsc Import Group Name;;
Result in eBrowser:
Example Tag Records for Adding Attributes to Standard Components
/* STANDARD COMPONENT */
obt 2; abr obt; dsc Type;;
obt 2; abr vpo; dsc Position Id; key 1;;
obt 2; abr ipo; dsc Position Id; key 1;;
obt 2; abr DE; dsc Description; cpc 1;;
obt 2; abr DD; dsc Dimensions; cpc 1;;
obt 2; abr RT; dsc Rating; cpc 1;;
obt 2; abr ST; dsc Standard; cpc 1;;
obt 2; abr MC; dsc Material; cpc 1;;
obt 2; abr sys; dsc System;;
obt 2; abr pli; dsc Pipeline;;
obt 2; abr Idn; dsc Isometric Drawing;;
obt 2; abr mot; dsc Modification time;;
Note: The tag records define two key attributes, vpo and ipo. If an object has both attributes, eBrowser search will only find the object via the value of the last key attribute, ipo.
Result in eBrowser:
Publishing insulation attributes
The 3D publishing control can define attributes to be published to the insulation objects of pipes and ducts.
- The attributes are published to 3D models exported via Model > Export, as described in Export.
- The attributes are not published to eBrowser (.ebmx, .ebm) models.
In the tag records, the field ins 1; indicates that the attribute is published for insulation.
Example Tag Records for Adding Insulation Attributes to Air Ducts
obt 6; ins 1; abr pid;/*dsc Part ID;*/;
obt 6; ins 1; abr MC;/*dsc Material;*/;
obt 6; ins 1; abr DE;/*dsc Description;*/;
obt 6; ins 1; abr ST;/*dsc Standard;*/;
obt 6; ins 1; abr are;/*dsc Area;*/;
obt 6; ins 1; abr MAS;/*dsc Mass;*/;
Example Tag Records for Adding Insulation Attributes to Pipes
obt 9; ins 1; abr pid;/*dsc Part ID;*/;
obt 9; ins 1; abr MC;/*dsc Material;*/;
obt 9; ins 1; abr DE;/*dsc Description;*/;
obt 9; ins 1; abr ST;/*dsc Standard;*/;
obt 9; ins 1; abr are;/*dsc Area;*/;
obt 9; ins 1; abr MAS;/*dsc Mass;*/;