Invoking a plugin through automation

Invoking a plugin through automation

Anonymous
Not applicable
1,437 Views
3 Replies
Message 1 of 4

Invoking a plugin through automation

Anonymous
Not applicable

The plugin(shown below) is running when i click the button in Add-ins tab of Navisworks application. But when I try to execute the plugin through automation its not working. 

 

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Text;

//Add two new namespaces
using Autodesk.Navisworks.Api;
using Autodesk.Navisworks.Api.Plugins;
using Autodesk.Navisworks.Api.Interop;
using Autodesk.Navisworks.Api.Timeliner;
using Autodesk.Navisworks.Api.Interop.Timeliner;


namespace BasicPlugIn
{
                [PluginAttribute("BasicPlugIn.ABasicPlugin",                        //Plugin name
                  "ADSK",                                                                              //4 character Developer ID or GUID
                  ToolTip = "BasicPlugIn.ABasicPlugin tool tip",                    //The tooltip for the item in the ribbon
                  DisplayName = "Simulation Play Plugin")]                           //Display name for the Plugin in the Ribbon

 

      public class ABasicPlugin : AddInPlugin //Derives from AddInPlugin
      {
                    public override int Execute(params string[] parameters)
                    {

                                LcTlSimulationHelper.Instance.Play();
                                return 0;
                    }
      }
}
#endregion

 

 

I am trying to execute the above plugin using

 

string aString = "Hello";

Autodesk.Navisworks.Api.Automation.NavisworksApplication navisworksApplication =
                                             new Autodesk.Navisworks.Api.Automation.NavisworksApplication();

navisworksApplication.ExecuteAddInPlugin("BasicPlugIn.ABasicPlugin.ADSK",aString);

 


But this does not help execute the plugin and start the timeliner simulation.

0 Likes
1,438 Views
3 Replies
Replies (3)
Message 2 of 4

xiaodong_liang
Autodesk Support
Autodesk Support

Hi, 

 

Did you mean if LcTlSimulationHelper.Instance.Play(); cannot work when calling from an automation, or any code (like pop out a message box in the plugin)? If it is for LcTlSimulationHelper, sorry as I having said, this is NOT a public API we support now. We cannot guarantee all of its behaviors.

0 Likes
Message 3 of 4

Anonymous
Not applicable

Yes. LcTlSimulationHelper.Instance.Play() is not working when that plugin is called through automation. But it is working perfectly as a plugin in navisworks application.

0 Likes
Message 4 of 4

xiaodong_liang
Autodesk Support
Autodesk Support

Since this is not a public (unsupported) API, things could go wrong.. Sorry for not much helping at this moment.

0 Likes