!Array is the name of the array that will be created to contain the elements selected.
Class is essentially a list of element types (or possibly of actual elements). This list can be optionally qualified to indicate whether members should be included, or whether only ‘items’ (that is, the lowest level components in the hierarchy below a given element) should be included.
Would create the array !PIPECOMPS and set it to contain the reference numbers of every piping component in the
MDB.
Logical expressions, which return TRUE or
FALSE, can be used. They are most likely to be used to check the value of an attribute for collection. The
WITH or
WHERE options introduce the expression. For example:
would collect all elements for which the attributes XLEN,
YLEN and
ZLEN match the criteria in the array
!LENGTHS.
A volume is defined by the
WITHIN keyword. You can define the volume either in terms of two diagonally opposite points of an enclosing box, or as a volume around an element (with an optional clearance around the box which contains the element). For example:
collects all piping components within the volume defined by a box ‘drawn’ 1500 mm around /PUMP1 and puts them into the array
!P. The
EXCLUSIVE keyword indicates that only the chosen elements exclusively within the given volume are to be selected.
In Plant there are structural design data, termed MODEL, and detailed design data, termed PRODUCTION. These two sets of data represent the same model and occupy the same 3D space. For a volumetric query you only want one of the sets of data returned.
Hierarchy criteria can be defined by the
FOR keyword. It identifies a list of elements below which all selected elements must occur. You can also include an exclusion list. For example:
You can append the results of such a collection to an existing array using the
APPEND keyword. For example:
You can also overwrite elements in the array by specifying the first index in the array which you want to be overwritten. The specified index, and the indexes following it, will be overwritten by the results. For example:
Would place the reference for the first ELBOW selected at position 99 in the array
!BENDS, overwriting any existing data, and subsequent selections in the array elements that follow.