How to Customise BIM Quantities in BricsCAD BIM
Quick answer: Classifying an entity as a BIM Type (Wall or Slab, for example) adds properties like IFC Common properties and Base quantities to the Properties panel. Which properties display is managed in the BIM Properties dialog, opened with BIMPROPERTIES, the same command covered on this hub’s custom properties page.
The Three Default Namespaces
- IFC: properties defined by the IFC2x3 and IFC4 schemes, merged automatically in the background during IFC import or export. Includes both common properties (Wall Common properties like Fire Rating and Acoustic Rating, for example) and Quantities (Wall Quantities > Nominal Height, for example), themselves based on Core quantities of the underlying solid.
- Quantity: hard-coded quantities of BIM objects, also based on Core quantities. This namespace is deprecated, replaced by the Quantities now found in the IFC namespace, but it stays available for backward compatibility with BricsCAD V20 and older.
- User: where you create your own property definitions, the same namespace covered on this hub’s custom properties page.
Exporting, Importing, and Visibility
Click Export… at the bottom left of the BIM Properties dialog to export every property set (properties or quantities) defined in the drawing to an XML file, importable into another drawing. Click Visibility… to toggle namespaces or attribute sets on or off.
This export method only imports a namespace for that particular project. To have namespaces import across every project automatically, open the Settings dialog and add a new path under BIM > General > Default properties path. By default, this points to C:\Program Files\Bricsys\BricsCAD V26 en_US\Support, worth noting this is a genuinely different location from the AppData\Roaming paths covered on this hub’s BIM Project Info and Classification Codes pages, an installation-level default rather than a per-user copy. That folder contains files like bimproj_IFC.xml, holding the IFC namespace.
Core Quantities
Core quantities are calculated from a solid’s geometric features, and form the basis for both user-defined quantities and the quantities defined in the IFC namespace. For example, a wall’s Nominal Height in the IFC namespace is defined as its ZDimUpBoundingBox Core quantity.
| Core Quantity | Description | Measure | Type |
|---|---|---|---|
| NumberOfPlies | Number of plies in the attached composition | Integer | |
| XDimUpBoundingBox | X dimension of the bounding box, found with global Z axis rotation freedom | Length | Real |
| YDimUpBoundingBox | Y dimension of the bounding box, found with global Z axis rotation freedom | Length | Real |
| ZDimUpBoundingBox | Z dimension of the bounding box, found with global Z axis rotation freedom | Length | Real |
| XDimFreeBoundingBox | X dimension of the bounding box, found with 3D rotation freedom | Length | Real |
| YDimFreeBoundingBox | Y dimension of the bounding box, found with 3D rotation freedom | Length | Real |
| ZDimFreeBoundingBox | Z dimension of the bounding box, found with 3D rotation freedom | Length | Real |
| DistanceBetweenMajorSurfaces | Distance between major surfaces | Length | Real |
| FirstMajorSurfacePerimeter | Perimeter of the first (largest) major surface | Length | Real |
| SecondMajorSurfacePerimeter | Perimeter of the second major surface | Length | Real |
| LinearAxisLength | Length of the linear element’s axis | Length | Real |
| VariablePlyThickness | Thickness of a variable ply | Length | Real |
| FirstMajorSurfaceNetArea | Area of the first major surface, after subtracting openings | Area | Real |
| FirstMajorSurfaceGrossArea | Area of the first major surface, before subtracting openings | Area | Real |
| SecondMajorSurfaceNetArea | Area of the second major surface, after subtracting openings | Area | Real |
| SecondMajorSurfaceGrossArea | Area of the second major surface, before subtracting openings | Area | Real |
| IsMajorSurfacesParallel | Whether the major surfaces are parallel | Boolean | |
| TotalSurfaceNetArea | Area of the solid’s surfaces, after subtracting openings | Area | Real |
| TotalSurfaceGrossArea | Area of the solid’s surfaces, before subtracting openings | Area | Real |
| FootprintNetArea | Area of the bottommost surface, after subtracting openings | Area | Real |
| FootprintGrossArea | Area of the bottommost surface, before subtracting openings | Area | Real |
| ProjectedNetArea | Area projected to the global XY plane, after subtracting openings | Area | Real |
| ProjectedGrossArea | Area projected to the global XY plane, before subtracting openings | Area | Real |
| CrossSectionNetArea | Cross-section area for linear elements, after subtracting openings | Area | Real |
| OuterSurfaceNetArea | Outer surface area for linear elements, after subtracting openings | Area | Real |
| NetVolume | Volume of the solid, after subtracting openings | Volume | Real |
| GrossVolume | Volume of the solid, before subtracting openings | Volume | Real |
User-Defined Quantities
The User namespace’s Property button creates custom properties (see this hub’s custom properties page); its Value button creates user-defined quantities instead. A Value Definition has these attributes:
- Id: a unique identifier.
- Label: the name shown in the Properties panel (can match the Id, but the Id itself must be unique).
- Description: optional.
- Type: typically Real for a quantity.
- Measure: Length, Area, Volume, or Mass.
- Formula: the actual expression, using Core quantities and mathematical expressions in the same syntax covered on this hub’s working with parameters and constraints page.
For example, a user-defined quantity for half a wall’s thickness would use the formula DistanceBetweenMajorSurfaces/2.
Creating a User-Defined Quantity: The Compactness Worked Example
This example defines Compactness for spatial objects like rooms, calculated as a space’s volume divided by the sum of the areas on all its sides.
- Open the BIM Properties dialog by typing
BIMPROPERTIES. - Set User as the current namespace.
- Click Set to create a new Property Set and give it a name.
- Assign the Property Set to one or more categories, spatial elements in this example.
- Click Value to create a new Value Definition.
- Give it an Id and a Label, for example, Compactness.
- Optionally give it a Description.
- Set the Type to Real, since the calculation combines two Real values.
- Set the Measure; since volume divided by area results in a length, use Length.
- Fill in the Formula field: the space’s volume is the
GrossVolumeCore quantity, and the sum of its side areas is theTotalSurfaceGrossAreaCore quantity, so Compactness =GrossVolume/TotalSurfaceGrossArea. - Click OK to close the BIM Properties dialog.
- Create a volume representing a space: build surrounding elements like walls and a slab and define a space inside with
BIMSPACEorBIMIFY, or create a solid and classify it as a Space withBIMCLASSIFY. - Select the space; the Properties panel now shows your user-defined property under its own separate property set.
Frequently Asked Questions
Why is the Quantity namespace marked as deprecated? It’s been replaced by the Quantities now found in the IFC namespace, though it remains available for backward compatibility with BricsCAD V20 and older.
Where do I put an XML properties file so it imports automatically into every new project, not just the current one? Add its path under BIM > General > Default properties path in the Settings dialog.
What syntax does the Formula field for a user-defined quantity actually accept? Core quantities plus mathematical expressions, the same expression syntax covered on this hub’s working with parameters and constraints page.
What’s the Core quantity behind a wall’s Nominal Height property in the IFC namespace? ZDimUpBoundingBox.