二次开发---Navisworks插件的第一步

2024-03-01 08:08

本文主要是介绍二次开发---Navisworks插件的第一步,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

由于项目需要,近段时间在研究Navisworks插件的创建,现谨以此做一记录。

前提:navisworks软件已安装

navisworks API分为com API和.net API,这里介绍基本插件。

【基本插件】

1、打开VS,新建一项目,在项目模板下选择【Visual C#】-->【类库】,选择.NET Framework的版本(这个与navisworks版本对应,2014---4.0,2016---4.5),起好项目名称,单击确定。


2、添加引用。在【引用】右键添加引用,打开对话框后在【浏览】处找到navisworks软件的安装路径,找到Autodesk.Navisworks.Api.dll并选中,点击确定。

3、打开引用dll的属性,把复制到本地改成“False”。

4、添加基本的命名空间的引用和相关的代码,如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;using Autodesk.Navisworks.Api;
using Autodesk.Navisworks.Api.Plugins;
using Autodesk.Navisworks.Api.DocumentParts;
//using Autodesk.Navisworks.ComApi;//using Autodesk.Navisworks.Api.Interop.ComApi;
//using Autodesk.Navisworks.Api.ComApi;namespace TestTest
{//基本插件[PluginAttribute("Basic", "ADSK", ToolTip = "Popups", DisplayName = "TestTest")]//名字,开发者号(四位字串),提示,用户界面显示名[AddInPluginAttribute(AddInLocation.AddIn)]//设定插件的位置public class Class1 : AddInPlugin{string modelInfo = "";public override int Execute(params string[] parameters){try{//当前文档Document doc = Application.ActiveDocument;//application是运行了之后自动提供的//第一个模型//ModelGeometry first = doc.Models[0].RootItem.FindFirstGeometry();if (first != null){modelInfo += string.Format("ActiveColor = {0}" +"\nActiveTransparency = {1}" +"\nBoundingBox  = {2}" +"\nFragmentCount {3}" +"\nIsSolid {4}" +"\nItem {5}" +"\nOriginalColor {6}" +"\nOriginalTransparency {7}" +"\nPermanentColor {8}" +"\nPermanentTransparency {9}",first.ActiveColor.ToString(),first.ActiveTransparency,first.BoundingBox.ToString(),first.FragmentCount,first.IsSolid.ToString(),first.Item.ToString(),first.OriginalColor.ToString(),first.OriginalTransparency,first.PermanentColor.ToString(),first.PermanentTransparency);//MessageBox.Show(text);}System.Windows.Forms.MessageBox.Show(modelInfo);return 0;}catch (Exception ex){System.Windows.Forms.MessageBox.Show(ex.Message);//输出显示异常信息return 0;}}}
}
上面的案例代码中的DisplayName就是我们会在navisworks软件里面看到的插件名字,AddInLocation.AddIn就是插件的放置位置。

5、编译项目,放置dll。将编好的项目dll复制到navisworks软件的安装路径的Plugins文件夹下,新建一个与DLL同名的文件夹,将DLL移进文件夹中。若插件dll有dll引用,则将引用dll放置到软件安装路径下的Dependencies文件夹下即可。

6、运行插件。打开navisworks软件,找到Add-ins,即可看到插件名称。




这篇关于二次开发---Navisworks插件的第一步的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761748

相关文章

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

maven中的maven-antrun-plugin插件示例详解

《maven中的maven-antrun-plugin插件示例详解》maven-antrun-plugin是Maven生态中一个强大的工具,尤其适合需要复用Ant脚本或实现复杂构建逻辑的场景... 目录1. 核心功能2. 典型使用场景3. 配置示例4. 关键配置项5. 优缺点分析6. 最佳实践7. 常见问题

MyBatis分页插件PageHelper深度解析与实践指南

《MyBatis分页插件PageHelper深度解析与实践指南》在数据库操作中,分页查询是最常见的需求之一,传统的分页方式通常有两种内存分页和SQL分页,MyBatis作为优秀的ORM框架,本身并未提... 目录1. 为什么需要分页插件?2. PageHelper简介3. PageHelper集成与配置3.

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑

Idea插件MybatisX失效的问题解决

《Idea插件MybatisX失效的问题解决》:本文主要介绍Idea插件MybatisX失效的问题解决,详细的介绍了4种问题的解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录一、重启idea或者卸载重装MyBATis插件(无需多言)二、检查.XML文件与.Java(该文件后缀Idea可能会隐藏

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

IDEA常用插件之代码扫描SonarLint详解

《IDEA常用插件之代码扫描SonarLint详解》SonarLint是一款用于代码扫描的插件,可以帮助查找隐藏的bug,下载并安装插件后,右键点击项目并选择“Analyze”、“Analyzewit... 目录SonajavascriptrLint 查找隐藏的bug下载安装插件扫描代码查看结果总结Sona

Maven(插件配置和生命周期的绑定)

1.这篇文章很好,介绍的maven插件的。 2.maven的source插件为例,可以把源代码打成包。 Goals Overview就可以查看该插件下面所有的目标。 这里我们要使用的是source:jar-no-fork。 3.查看source插件的example,然后配置到riil-collect.xml中。  <build>   <plugins>    <pl

jenkins 插件执行shell命令时,提示“Command not found”处理方法

首先提示找不到“Command not found,可能我们第一反应是查看目标机器是否已支持该命令,不过如果相信能找到这里来的朋友估计遇到的跟我一样,其实目标机器是没有问题的通过一些远程工具执行shell命令是可以执行。奇怪的就是通过jenkinsSSH插件无法执行,经一番折腾各种搜索发现是jenkins没有加载/etc/profile导致。 【解决办法】: 需要在jenkins调用shell脚

Jenkins 插件 地址证书报错问题解决思路

问题提示摘要: SunCertPathBuilderException: unable to find valid certification path to requested target...... 网上很多的解决方式是更新站点的地址,我这里修改了一个日本的地址(清华镜像也好),其实发现是解决不了上述的报错问题的,其实,最终拉去插件的时候,会提示证书的问题,几经周折找到了其中一遍博文