Sustainability of Digital Formats: Planning for Library of Congress Collections |
|
Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact |
Full name | 3D Model File Format Family |
---|---|
Description |
The Rhino 3D Model (3DM) is a 3D graphics format family used to exchange mathematical representations of 3D geometry, used in the Rhino 3D software application and other 3D model software. Rhino 3D is a surface modeling software. This format is known as the openNURBS 3D model. These files provide NURBS and analytic surfaces for free-form shapes. NURBS, an acronym for Non-Uniform Rational B-Splines, are "mathematical representations of 3D geometry that can accurately describe any shape from a simple 2D line, circle, arc, or curve to the most complex 3D organic free-form surface or solid. Because of their flexibility and accuracy, NURBS models can be used in any process, from illustration and animation to manufacturing." Spatial says "3DM files are inherently classified as computer-aided design (CAD) files as they can be processed by several CAD applications." The 3DM family has different formats, changing with the versions of the Rhino software, at Version 8 at the time of writing. The current version of Rhino will save to any previous Rhino version files except V1.x. The Rhino import/export page details differences between the formats. Sample files of versions 1-8 are available, hosted on GitHub by the openNURBS initiative. This format is also referred to as Rhino 3DM and openNURBS 3DM. Comments welcome. |
Production phase | Most often an initial-state or middle-state format; may serve as a final-state format. |
Relationship to other formats | |
Affinity to | Rhino backup files (.3dm.bak and .3dmbak): Mentioned in the Rhino documentation and by Spatial. Not described separately at this time. |
LC experience or existing holdings | The Library of Congress has a small number of 3DM files in its collections as of May 2024. |
---|---|
LC preference | See the Library of Congress Recommended Formats Statement for format preferences for Design and 3D formats. |
Disclosure | Partially disclosed. |
---|---|
Documentation | The openNURBS toolkit source code is available, but the 3DM file format lacks an outline or documentation. The file parsing ability, written in C++, is available in these lines of opennurbs_file_utilities.cpp in the source code. openNURBS 7 is behind a login wall. A community member has sought out the file format documentation, to no avail. |
Adoption | According to Rhino, "More than 400 software development teams and applications, including Rhinoceros, exchange 3D models using the openNURBS file format." It is used across a wide range of industries, including architecture, prototyping, engineering, and graphic design. |
Licensing and patents | The openNURBS initiative states that "Neither copyright nor copyleft restrictions apply." Furthermore, "Permission is hereby granted, free of charge, to any person obtaining a copy of the openNURBS SDKs and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software." |
Transparency | A binary format with different versions that requires advanced tools, notably the openNURBS toolkit, although other programs are able to import and export the files as well. |
Self-documentation | 3DM files store name and version number as part of the magic numbers string. The openNURBS code that parses 3DM files seeks for and stores file_size, file_metadata_last_modified_time, and file_contents_last_modified_time. Comments welcome. |
External dependencies | None. |
Technical protection considerations | None. |
Other | |
---|---|
3D Model Geometry | 3DM files contain 3D models along with their dependent elements such as surface, points, and curve information. Contingent on the 3DM version. |
3D Model Appearance | 3DM supports surface or solid forms. Mesh and texture is supported. Contingent on the 3DM version. Comments welcome. |
3D Model Scene | Storage of scene information is limited. Contingent on the 3DM version. Comments welcome. |
3D Model Animation | 3DM is not intended for use in animation. Contingent on the 3DM version. Comments welcome. |
Tag | Value | Note |
---|---|---|
Filename extension | 3dm |
See Rhinoceros. |
Internet Media Type | model/vnd.3dm |
As of May 2024, there is no official IANA media type. In Rhino message board discussions, the proposed media type value is "model/vnd.3dm". Comments welcome. |
Magic numbers | Hex: 33442047656F6D657472792046696C6520466F726D617420 ASCII: 3D Geometry File Format |
Defined in the openNURBS file utility source code. Note the magic number string (in ASCII) includes a trailing space. Version numbers follow this string. The PRONOM entries (see below) document the specific version numbers. |
Pronom PUID | x-fmt/433 |
3DM 1. See https://www.nationalarchives.gov.uk/PRONOM/x-fmt/433. |
Pronom PUID | x-fmt/434 |
3DM 2. See https://www.nationalarchives.gov.uk/PRONOM/x-fmt/434. |
Pronom PUID | /x-fmt/435 |
3DM 3. See https://www.nationalarchives.gov.uk/PRONOM//x-fmt/435. |
Pronom PUID | x-fmt/432 |
3DM 4. See https://www.nationalarchives.gov.uk/PRONOM/x-fmt/432. |
Pronom PUID | fmt/864 |
3DM 5. See https://www.nationalarchives.gov.uk/PRONOM/fmt/864. |
Wikidata Title ID | Q28919152 |
3D Model File Format Family. See https://www.wikidata.org/wiki/Q28919152 |
Wikidata Title ID | Q29945404 |
Rhino 3D Model, version 1. See https://www.wikidata.org/wiki/Q29945404 |
Wikidata Title ID | Q29945408 |
Rhino 3D Model, version 2. See https://www.wikidata.org/wiki/Q29945408 |
Wikidata Title ID | Q29945412 |
Rhino 3D Model, version 3. See https://www.wikidata.org/wiki/Q29945412 |
Wikidata Title ID | Q29945415 |
Rhino 3D Model, version 4. See https://www.wikidata.org/wiki/Q29945415 |
Wikidata Title ID | Q29945416 |
Rhino 3D Model, version 5. See https://www.wikidata.org/wiki/Q29945416 |
General |
openNURBS is an initiative, a toolkit, and also the name of a file format. According to Rhino, the openNURBS initiative provides "CAD, CAM, CAE, and computer graphics software developers the tools to accurately transfer 3-D geometry between applications." This initiative and toolkit allows anyone to read and write the 3DM file format without the need to use Rhino. According to FileFormat.com's 3DM summary page, Rhino provides C++ source code for a library that will read and write 3D models using the openNURBS file format. Fileformat.com continues, "This toolkit also provides NURBS evaluation tools and elementary geometric and 3D view manipulation tools as well as including source code for several example programs." The openNURBS Initiative is funded by Robert McNeel & Associates as an effort to improve 3D file interoperability. |
---|---|
History |
|