GEOM, CATTEXT, and CATMOD Special Attributes
- Last UpdatedMay 25, 2022
- 2 minute read
There are three new special attributes ‘GEOM’, ‘CATTEXT’, and CATMOD (previously called ‘CATA’).
GEOM Special Attribute
The GEOM attribute returns true if any aspect of the evaluated geometry has changed.
The definition of evaluated geometry change includes:
-
Any dimension of a primitive has changed
-
Any ppoint changes
-
Pos/ori change
The level information used to determine the geometry is set by the ‘REPRE MASS’ command. The ‘REPRE MASS’ command is also available in Isodraft.
CATTEXT Special Attribute
This will return true if any part of the evaluated detail or material text has changed.
CATMOD Special Attribute
Special attribute CATMOD will return true if any value in the catalog has changed, for example,
-
Specification Reference (SPREF)
-
Changes to a Specific Component (SPCO) element
-
Changes to a Piping Component (COMP) element
-
Changes to any Pointset Element (PTSE), 3D Geomset Element (GMSE)
-
Changes to any dataset elements
-
Changes in DTEXT, Material Text elements (MTEXT) elements
Note that there is a subtle difference between CATMOD and the other two: the CATTEXT and GEOM keywords work on the evaluated values.
Thus it is possible that the geometry element has changed but the GEOM keyword returns false, for example, a User Defined Attributes (UDA) value may have changed, but this has no effect on the evaluated geometry.
The CATMOD keyword on the other hand will return true for any change.
You can use the CATMOD keyword on any element. It will return ‘false’ if the element does not have a SPREF or CATREF reference pointing into the catalog database. It will return ‘true’ if the element has a SPREF or CATREF attribute and either (a) this reference attribute has itself changed in value or (b) the catalog element pointed at, or any catalog element owned by or pointed at by this element, either directly or indirectly, has changed in any way.
The exception is that elements pointed at by UDA’s are not compared, although the value of the UDA itself is checked. Thus if a reference valued UDA has been changed then this will count as a change, but if only the element pointed at has changed, then this will not count.