A3DAsmModelFileGetUnit
-
A3DStatus
A3DAsmModelFileGetUnit(const A3DAsmModelFile *pModelFile, A3DDouble *pdUnit) Retrieves the unit a model file should be displayed with.
Behavior
When``A3DAsmModelFileGetUnit``finds a suitable unit in the provided model file,``pdUnit``is filled with a floating-point decimal representation of this unit, as stated in
embed:rst:inline :doc:`/guide/units`
.``pdUnit``can then be converted into:c:enum:~A3DEUnitsusing:c:func:~A3DUnitGetFromEnum.
The unit of an entire model file depends on the value of the``m_bUnitFromCAD``field, either in:c:struct:~A3DAsmModelFileDataor:c:struct:~A3DAsmProductOccurrenceData.
A3DAsmModelFileGetUnitrecursively traverses the model file given by``pModelFile``and stops on the first entity (model file or product occurrence) where``m_bUnitFromCAD``is*A3D_TRUE*. The``m_dUnit``field of this entity is then written in``pdUnit``.- If``pdUnit``is*0*, the function returns``A3D_INVALID_DATA_NULL``
- If``pModelFile``is*0*, the function returns``A3D_SUCCESS``and``*pdUnit``is set to*0.0*.
The traversal may complete without finding any unit. In this case, the function returns``A3D_ERROR``.
Memory Management
The caller is reponsible from the memory pointed to by``pdUnit``.
embed:rst:inline :doc:`/guide/units`
,:c:func:~A3DUnitGetFromEnum,:c:func:~A3DUnitGetFromValue,:c:enum:~A3DEUnits
Parameters
pModelFile: A handle to a model file entity
pdUnit: A location to an:c:type:~A3DDouble
Returns
A3D_SUCCESSon success, or an error code on failure