/NavisAddinManager

Navisworks AddinManager update .NET assemblies without restart Navisworks for developer.

Primary LanguageC#MIT LicenseMIT

Navisworks Add-in Manager

Navis API Platform License: MIT

ReSharper Rider Visual Studio 2022 .NET Framework

Publish Github All Releases HitCount follow on Twitter

Summary

AddinManager

Usually, when developing and debugging an add-in with Navisworks API, user has to close & re-open Navisworks each time he/she modifies the add-in code and wants to re-compile. But with Add-In Manager, user can modify and run the Addin. directly without closing & re-opening Navisworks again and again.This tool enables users to test plugin code within Navisworks without having to create an entire plugin first.This is a next branch from Revit Addin Manager to support multiple platform API for developer. With current technology, you can use Hot Reload to speed it up.But try this project it will be faster with any Addin.

Some feature include:

  • A newbie can create a new Add-in and explore Navisworks API easy with Add-in manager.
  • Add-in tester(use Debug and Trace to test your add-in).
  • Debug / Trace : Support Show result use Debug or Trace to show result in Navisworks.
  • Add-in manager
    • AddInManager Manual : Use for normal process load/unload addin
    • AddInManager Faceless : use for load last process before addin without UI
  • Allow user know whether plugin can load successfully or not.
  • No depend on any library from outside Navisworks API.
  • F5 - Load fresh plugin don't need load again.
  • F1 - Go link open source report some error,bug or feature request.
  • Delete - Quick remove by use right click or use from keyboard.
  • Crt + MouseWheel - Zoom in/out by use mouse wheel in command plugin.
  • Arrow Up - Move from TreeView to search.
  • Arrow Down - Move from search to TreeView.
  • Esc - Quick Close Add-in Manager.
  • Enter - Quick Run Execute a command selected in Add-in Manager.

Add-In Manager

Command

  • AddInManagerManual
  • AddInManagerFaceless

Trace/Debug

  • Show/Hide result inside Dockpanel Navisworks.
  • Show Result history inside Navis Addin Manager.
  • Clear Result.
  • Show Result by color.

A sample command to execute:

  • Way one : use full with Add-in Manager
[Plugin("HelloWorld", "ChuongMep",DisplayName = "HelloWorld", ToolTip = "HelloWorld Navisworks AddinManager")]
    [AddInPlugin(AddInLocation.AddIn)]
    public class HelloWorld : AddInPlugin
    {
        public override int Execute(params string[] parameters)
        {
            //Code Here
            MessageBox.Show("Hello World",Application.Title);
            return 0;
        }
    }
   
  • Way two : use one quick run with Add-in Manager
    /// <summary>
    /// Only work for in AddinManager
    /// </summary>
    public class TestDontNeedUseAttClass : AddInPlugin
    {
        public override int Execute(params string[] parameters)
        {
            //Code Here
            MessageBox.Show("Hello World",Application.Title);
            return 0;
        }
    }

  • Quick Example to Debug or Trace result output :
using System.Diagnostics;
using Autodesk.Navisworks.Api.Plugins;
public class DebugTrace : AddInPlugin
{
    public override int Execute(params string[] parameters)
    {
        Trace.WriteLine($"Warning: This is a warning");
        Trace.WriteLine($"Error: This is a error");
        Trace.WriteLine($"Add: This is a add");
        Trace.WriteLine($"Modify: This is a modify");
        Trace.WriteLine($"Delete: This is a delete");
        return 0;
    }
}

Installation

Please follow last release at section Release

Support Navisworks Version : 2020, 2021, 2022, 2023,2024.

Guideline

You can visit to wiki and read document or access by this link.


Author

Originally implemented by ChuongHo with platform WPF and add more feature to fit with the progressive development of modern technology. His focus is to work smarter and achieve the most effective practices to enhance data utilization and digital collaboration among AEC parties.


License

This sample is licensed under the terms of the MIT License. Please see the License file for full details.


Contribute

Add-In Manager is an open-source project and would be nothing without its community. You can make suggestions or track and submit bugs via Github issues. You can submit your own code to the Add-In Manager project via a Github pull request .

Many Thanks all contributors for this repository. Feel free to contribute! Please refer to the CONTRIBUTING for details.


Sponsors

Thanks for providing a free All product IDE for this project


Credits


Open Source Recommend

  • NavisLookup : Allow user snoop properties, method, track event. Easy to explore Navsiworks.

Learning Resources