Close

Relief for ODA Team in Ukraine

Learn more
ODA BimRv SDK
Overview of Parameters

Concept of Parameters

Each element parameter structurally consists of a name (identifier) and a value. The name (identifier) of a parameter allows to distinguish the appropriate parameter from other parameters of the element. The value reflects the property of a concrete element instance.

Overall, the element parameters classification is represented at the schema below. If you want to get details about each parameter type, you can click on appropriate element of the schema.

Parameters Classification

Data Types of Values

A parameter can store values of the following data types:

  • String.
  • Double.
  • Integer.
  • Element identifier, represented with an OdObjectId class instance.

Calculated Parameters

Values of some parameters can be calculated from other parameter values (for example, such parameter as the volume of a wall).

If a parameter value can not be calculated using other parameter values, it should be classified as a non-calculated parameter.

Variability of Parameters

Parameters can be read-only or can allow editing their values, therefore they can be classified into two groups:

  • Read-only parameters — Area, length, volume, etc.
  • Writable parameters — Comments, mark, base offsets, top offsets, etc.

Applicability of Parameters

Parameters store values as different types for specific elements or for entire categories of elements. They can be already built into the project or customized by a user.

Considering the applicability to projects and families, parameters can be on of file types:

  • Project parameters.
  • Family parameters.
  • Shared parameters.
  • Global parameters.
  • Built-in (system) parameters.
Parameter type Description
Project parameters Project parameters are specific to a single project file. They can be added to elements by assigning them to a separate element directly or to an element's categories. Data from these parameters can't be shared with other projects. They are used for scheduling, sorting, and filtering elements and objects within a project.
Family parameters Family parameters are used to define and control values of a specific family. They are also used to control parameters in a nested family by associating a parameter in the host family with a parameter in the nested family.
Shared parameters Shared parameters define values that can be used in several families or projects. After their creation, they can be used as family or project parameters. Shared parameters are stored in a separate text file, which is not recommended for manual editing.
Global parameters Global parameters are specific to a single project file (like project parameters), but they are used to define global values for an entire project. For example, they can be used to define the value of a dimension or a constraint and associate it with a category of elements or with some specific element.
Built-in (system) parameters System parameters are built in to ODA BimRv SDK. They can be associated with properties of elements. See Built-in (System) Parameters to get an example of buil-in parameters for a wall entity.

Built-in (System) Parameters

ODA BimRv SDK has a set of more than 3,000 built-in parameters. The built-in parameters can be read-only or writable. For example, you can see several built-in parameters for a wall entity:

Name Type Responsible Property Description
ALL_MODEL_IMAGE ObjectId m_paramValueSetElementId Identity data
ALL_MODEL_INSTANCE_COMMENTS String m_paramValueSetAString
ALL_MODEL_MARK String m_paramValueSetAString
CLEAR_COVER_EXTERIOR OdObjectId OdBmCoverSettingsCell Rebar cover
CLEAR_COVER_INTERIOR
CLEAR_COVER_OTHER
SYMBOL_ID_PARAM m_wallAttributesId Id of the OdBmBasicWallType object
ELEM_TYPE_PARAM
ELEM_FAMILY_PARAM
ELEM_FAMILY_AND_TYPE_PARAM
CLEAR_COVER_EXTERIOR double Calculated parameters. They represent the length of a curve that underlies a wall, the area of one wall's side and the volume of a wall respectively. Implemented in the OdBmSWall and OdBmArcWall
HOST_AREA_COMPUTED
HOST_VOLUME_COMPUTED
CURVE_ELEM_ARC_RADIUS m_cucrveDriver.m_curve A radius, a start angle, an end angle and a range between these angles of an arc that underlies a wall. Non zero for an OdBmArcWall
CURVE_ELEM_ARC_END_ANGLE
CURVE_ELEM_ARC_START_ANGLE
CURVE_ELEM_ARC_RANGE
CURVE_ELEM_LINE_ANGLE An angle between the direction vector of an OdBmGLine and a vector from a surface from a Level, on which the wall is placed. Could be non zero for OdBmGline
WALL_ATTR_ROOM_BOUNDING Int32 m_roomBounding To indicate that a wall should be used to define the boundaries of a room for room area and volume computations, this wall must be specified as room-bounding
WALL_BASE_CONSTRAINT ObjectId m_assocLevelId A constraint that affects the position of a wall. It is set during the creation of a wall and may be changed in properties palette
WALL_KEY_REF_PARAM Int32 m_wallKeyRef Specifies which of its vertical planes is used to position the wall in relation to the path is sketched or it is specified in the drawing area
WALL_USER_HEIGHT_PARAM double m_paramValueSetDouble The height of a wall

The full list of built-in parameter names is represented with the OdBm::BuiltInParameter::Enum enumerator (Its definition you can find in the BimRv/Include/Database/BmBuiltInParameter.h header file).

See Also

How to Retrieve Element Parameters and Parameter Values
Work with Parameters
Copyright © 2002 – 2022. Open Design Alliance. All rights reserved.