Rhino3D Reader

The Rhino3D Reader provides full access to the Assembly, B-rep and View & PMI Data stored within a particular Rhino file. A file does not need to have a particular extension to be read correctly by HOOPS Exchange however the file extensions of Rhino3D files that you can expect to be loaded by HOOPS Exchange are:

Our readers are updated to the latest released version within 90 days of the release of the authoring software. You can see the exact version supported in the current release here.

Assembly

Incremental load is not supported by our Rhino reader. Datum planes and construction geometry are also supported and accessed through the assembly tree.

B-rep

The Rhino B-rep is pretty simple and only supports geometry in NURBS form. The only types of surface and curve geometry that can be found in a Rhino3D B-rep is:

Visualization

The visualization data for this format is generated by the HOOPS Exchange tessellation engine.

Views

This concept is not supported by Rhino3D.

PMI

This concept is not supported by Rhino3D.

Metadata

Starting from HOOPS Exchange 2022 SP1, our reader can read user-data from Rhino files, including:

Rhino user data are provided through Generic Attributes. This option is available when reading attributes is enabled from general read parameters:

A3DRWParamsLoadData.m_sGeneral.m_bReadAttributes = A3D_TRUE;

Upon reading generic attributes containing Rhino data, A3DMiscAttributeData::m_pcTitle can be any of:

The data themselves are part of the collection of A3DMiscSingleAttribute objects available through A3DMiscAttributeData::m_asSingleAttributesData. Single attribute names are string where each correspond to a specific constant for convenience:

Constant Value
kA3DRhinoAttributeName3DMVersion "3DM version"
kA3DRhinoAttributeNameApplicationUUID "application UUID"
kA3DRhinoAttributeNameArchiveClassUUID "archive class UUID"
kA3DRhinoAttributeNameBufferData "buffer data"
kA3DRhinoAttributeNameModelObjectUUID "model object UUID"
kA3DRhinoAttributeNameOpenNURBSVersion "OpenNURBS version number"
kA3DRhinoAttributeNameRDKMaterialInstanceUUID "RDK material instance UUID"
kA3DRhinoAttributeNameUnknownClassUUID "unknown class UUID"
kA3DRhinoAttributeNameUserDataCopyCount "user data copy count"
kA3DRhinoAttributeNameUserDataUUID "user data UUID"
kA3DRhinoAttributeNameUserDataXForm "user data xform"
kA3DRhinoAttributeNameDocumentUserStrings "document user strings"
top_level:0