Author: Xiaodong Liang

  • Create Clash Selection with Selection Set

    Navisworks Clash allows the types of SelectionA and SelectionB to be set by Model Items from the standard or compact model tree, by properties, or by selection set. From an API perspective, SelectionA and SelectionB are of type ClashSelection, whose Selection property can hold an explicit selection or a selection source. The model tree items…

  • Navisworks SDK 2022 Change Log

    The SDK of  Navisworks 2022 has been posted on  ADNOpen: https://www.autodesk.com/developer-network/platform-technologies/navisworks The contents are mostly same to the previous releases, while ActiveX redistributable dll is deprecated. The following two are no longer included in the SDK: activex_redistributable_x64.msm  Navisworks ActiveX Redistributable x64 Setup.exe These are based on an old technology. As an alternative solution, we encourage…

  • Navisworks 2021 SDK is posted

    By Xiaodong Liang As usual, SDK of Navisworks 2021 has been posted on ADNOpen:https://www.autodesk.com/developer-network/platform-technologies/navisworks This SDK still keeps the similar contents like previous releases: materials of NET API, NWCreate API and COM API. Each of these materials includes samples and API documents: A few notes: Navisworks 2021 is built against .NET Framework 4.7, which means…

  • Get Roll value of [Edit Current Viewpoint]

    By Xiaodong Liang There is a parameter roll in UI [Edit Current Viewpoint]. It means rotating the camera around its front-to-back axis. A positive value rotates the camera counterclockwise, and a negative value rotates it clockwise. In API perspective, a rotation around world axes (WCS) is configured by Viewpoint.Rotation (Rotation3D) which is in 3D space…

  • Get primitive from solid of Navisworks by Native COM

    By Xiaodong Liang It has been known by how to Get primitive from solid of Navisworks. Because there is not native NET API, we will need to take advantage of COM Interop. While COM Interop means managed-native transitions, which will cause lot of the slowness when the model is huge. So geometry extraction should be faster if…

  • Persistent item ID of Navisworks objects – Update

    By Xiaodong Liang This is an update on Persistent item ID of Navisworks objects: What IDs are available depend on the file format you’re loading into Navisworks. Some file formats don’t have any per objects ids, some have ids but they aren’t stable (edit the file in some unrelated way and the ids change). Most of…

  • Inventor API: Change sketch parameters of draft view in drawing document

    <?xml encoding=”UTF-8″>By Xiaodong Liang In drawing document, draft view also contains sketch with the similar functionalities of genetic sketch in part or assembly. While it looks the dimension constraint of the sketch entities are not managed by Parameter in the document.  With API, we can still access these parameters and manipulate them directly.  The VBA…

  • set layer of sub entities of custom object

    <?xml encoding=”UTF-8″>By Xiaodong Liang Follow @Xiaodong Liang Some customers wanted to set sub entities of custom object to the specific layers. When the corresponding layers changed ( such as visibility, color etc), the entities will update accordingly.  The solution is very straightforward. worldDraw->subEntityTraits().setLayer allows us to specify the specific primitives of the custom object to the…

  • Inventor API: Detect a Content Center part is inserted as standard or custom

    <?xml encoding=”UTF-8″>By Xiaodong Liang When we place a part to the assembly, it could be a common part, or a part from content center yet as standard, or the content center part as custom. Sometimes we would need to know which type part is inserted.  To differentiate the UI >> [Place] or [Place from Content…

  • Batch remove FEA links

    <?xml encoding=”UTF-8″>By Xiaodong Liang In the same time when I tested the code in the other blog, my colleague Henry Huang in product support team shared a code that can batch delete FEA OLE links. The code is provided by the engineer Paul Zeng. The code is well written. I believe it will be help…