:orphan:

##########################
Autodesk Navisworks Reader
##########################

.. rst-class:: format-title-block

+----------------------------------------------------------------------+
|                        **Autodesk Navisworks**                       |
+-----------------------------------------+----------------------------+
| **File Extension**                      | NWD                        |
+-----------------------------------------+----------------------------+
| **Supported Versions**                  | From 2012 to 2026          |
+-----------------------------------------+----------------------------+
| **Platforms**                           | |wy| |ly| |mn| |an| |iy|   | 
+-----------------------------------------+----------------------------+
| **Assembly**                            | |c_green|                  | 
+-----------------------------------------+----------------------------+
| **Tessellation**                        | |t_green|                  | 
+-----------------------------------------+----------------------------+
| **B-rep**                               | |c_red|                    | 
+-----------------------------------------+----------------------------+
| **PMI**                                 | |c_red|                    | 
+-----------------------------------------+----------------------------+

The Navisworks Reader provides full access to the Assembly and B-rep data stored within a particular Navisworks file. A file does not need to have a particular extension to be read correctly by HOOPS Exchange however the file extension of Navisworks files that you can expect to be loaded by HOOPS Exchange is:

* `.NWD`

How to Import From Autodesk Navisworks 
======================================

To load an autodesk navisworks file, use :cpp:func:`A3DAsmModelFileLoadFromFile`.
The :cpp:struct:`A3DParamsLoadData` structure is used to customize the loading behavior:

.. code-block:: c

   A3DAsmModelFile* pModelFile = 0;

   A3DRWParamsLoadData sReadParam;
   A3D_INITIALIZE_DATA(A3DRWParamsLoadData, sReadParam);
   sReadParam.m_sGeneral.m_bReadSolids = true;

   // ... set other A3DRWParamsLoadData fields as necessary

   A3DAsmModelFileLoadFromFile("path/to/file.nwd", &sReadParam, &pModelFile);

See :doc:`/guide/basic_operations/load_model` for more about loading model files.

Assembly
========

The full assembly tree definition is supported. Incremental load is not supported by our Navisworks reader.

B-Rep
=====

The list of supported entity types is:

* parametric cylinder
* parametric circle

Visualization
=============

The full assembly tree definition is supported. Incremental load is not supported by our Navisworks reader.

Views
=====

All view types are supported by HOOPS Exchange. However, there are some known limitations regarding default views and zoom factors.

Markups
=======

Markups aren't currently supported by the HOOPS Exchange Navisworks reader.

Materials and Colors
====================

HOOPS Exchange supports materials with Navisworks.
Also, imported and overridden colors and transparencies on wires, faces, and tessellation are supported.

Metadata
========

HOOPS Exchange fully support Navisworks metadata (properties) with their units.

Animations
==========

Animations aren't currently supported by the HOOPS Exchange Navisworks reader.
