From Navisworks 2011 onward, Navisworks offers a .NET programming interface. Using the Navisworks .NET API, you can write custom plug-ins to Navisworks products, drive Navisworks from outside the GUI and automate certain tasks. You can also utilize the new .NET controls by embedding them in your own applications. For example, by creating a Navisworks document viewer.
Assemblies necessary to build your application are included in every Navisworks product. Documentation and samples are available in the product install folder for Autodesk Navisworks Manage and Simulate.
There are three ways of using the .NET API with Navisworks
- Plug-In – allows you to write additional functions that extend the Autodesk Navisworks product. Plug-ins are the main entry point for users working with the .NET API.
- Automation – allows you to drive the product from outside, to automate certain tasks and, crucially, invoke plug-ins.
- Controls – allows you to embed an Autodesk Navisworks file viewer into your own applications or to examine Navisworks Documents without having the full Navisworks program loaded.
Users of the Navisworks .NET API are able to:
- Gain access to Application information
- Gain access to Model / Document information
- Perform simple operations on Navisworks documents (open, save, execute plug‐in) without having to fully load the main application.
- Interoperate with the existing COM API (This is a legacy API. New development should use the .NET API whenever possible. The .NET API provides a COM API Interop interface for when functionality is only available in the COM API.)
NWcreate is for creating Navisworks models. You can use it to write exporters from third-party applications that create NWC files, or use it to write a loader for your own file format that integrates seamlessly into Navisworks. It provides both C and C++ APIs, which means you can use it with any language that supports calling standard C functions. Tried and tested, this is the same API the Naviswork’s team uses to write all the file loaders and exporters that ship with the product.
It supports creation of geometry, properties, text, viewpoints, selection sets, materials and textures, and lights. Geometry support ranges from basic faceted triangle meshes all the way through to support for B-rep entities including basic modeling operations such as union, subtract, intersect, extrude and revolve.