The product flags are used to define the specific usages of a product occurrence.
They are set in A3DAsmProductOccurrenceData::m_uiProductFlags. This field can be a combinaison of more than one flag if they describe several usages at once. Such usages can be:
A configuration is a specific arrangement of a product with respect to its whole hierarchy.
With SolidWorks the model data inside the configuration node may be missing. In that case the flag
A3D_PRODUCT_FLAG_CONFIG_NOT_UPDATED is also set.
A container product occurrence acts as a repository of product occurrences that are not necessarily related to each other. This is useful for situations where a single CAD file corresponds to a whole database of parts and assemblies.
When a product occurrence is marked as default, it means the originating CAD environment loads it by default. This flag is applicatble with containers, configurations and view.
When a product occurrence is a prototype with no father it is flagged as internal. It then represents a sub-assembly root or a part root inside the main assembly.
A view refers to its prototype to denote a particular setting of visibilities and positions.
When a product occurrence is marked as suppressed its children are not loaded.
In case of CREO files, this flag is set when the Family Table isn't used or when the geometry contains boolean operations that are not supported by HOOPS Exchange.
External Reference is a specific flag currently used for STEP/XML. It this format when a node initialy refers to an external part it is flagged as External Reference. For more information, see the STEP/XML reader page.
If none of these flags is specified, a product occurrence is regular. If the product occurrence has no father, it is similar to a configuration.
- The flags of a product occurence may contains values that do not correspond to any documented flags. They correspond to internal values that shouldn't be used.
Macro Definition Documentation
|#define A3D_PRODUCT_FLAG_DEFAULT 0x0001|
The product occurrence is the default container, view or configuration.
|#define A3D_PRODUCT_FLAG_INTERNAL 0x0002|
The product occurrence is internal.
|#define A3D_PRODUCT_FLAG_CONTAINER 0x0004|
The product occurrence is a container.
|#define A3D_PRODUCT_FLAG_CONFIG 0x0008|
The product occurrence is a configuration.
|#define A3D_PRODUCT_FLAG_VIEW 0x0010|
The product occurrence is a view.
|#define A3D_PRODUCT_FLAG_SUPPRESSED 0x0040|
The product occurrence is suppressed.
|#define A3D_PRODUCT_FLAG_CONFIG_NOT_UPDATED 0x0100|
The config does not include the model data
|#define A3D_PRODUCT_FLAG_EXTERNAL_REFERENCE 0x2000|
The product occurrence is a external reference.
|#define A3D_PRODUCT_FLAG_BIM_PROJECT 0x4000|
The product occurrence is a BIM project.
|#define A3D_PRODUCT_FLAG_BIM_SITE 0x8000|
The product occurrence is a BIM site.
|#define A3D_PRODUCT_FLAG_BIM_BUILDING 0x10000|
The product occurrence is a BIM building.
|#define A3D_PRODUCT_FLAG_BIM_LEVEL 0x20000|
The product occurrence is a BIM level.
|#define A3D_PRODUCT_FLAG_BIM_CATEGORY 0x40000|
The product occurrence is a BIM category.
|#define A3D_PRODUCT_FLAG_BIM_COMPONENT 0x80000|
The product occurrence is a BIM component.