SE二次开发-Add-In开发模式

蓝图分享网 2022-10-10 18:51:32 595阅读 0评论
作者:徐涛  审校:倪海

 

适用版本:SolidEdge所有版本

一、概述

 

SolidEdge是SiemensPLM Software旗下的中端三维CAD软件,其支持两种模式:Add-On和Add-In。

 

Add-On模式是一种外部批处理模式,适合无需用户交互的场景,而Add-In开发模式刚好相反。

 

Add-In是SolidEdge的协同COM组件(dll),注册后,可以在SolidEdge启动时自动加载。那么怎么搭建Add-In开发框架?搭建Add-In开发框架涉及开发环境搭建、事件触发、Ribbon菜单、EdgeBar侧边栏四块内容,本篇将详细说明Add-In开发环境的搭建,事件触发以及Ribbon菜单制作等。

 

二、功能说明

 

第一步,创建项目:项目类型如上图所示选择C#类库,框架选择.Net4.0

 

SE二次开发-Add-In开发模式 第1张

图1

 

第二步,下载并安装NutGet程序包SolidEdge.Community.AddIn:

 

SE二次开发-Add-In开发模式 第2张

图2

 

第三步,创建一个继承自SolidEdgeAddIn的类,添加GUID属性,添加ComVisible和ProgId属性(GUID和ProgId必须都唯一,不能和其他程序冲突),如下图所示:

 

SE二次开发-Add-In开发模式 第3张

图3

 

第四步,添加注册回调:title为插件名称,summary为注释,enabled是否允许插件可用,environments设定可用的SE环境。

 

SE二次开发-Add-In开发模式 第4张

图4

 

第五步,设置调试外部环境指向本地SolidEdge的Edge.EXE目录。

三、功能说明

 

事件触发:

插件第一次被加载时,注意使用override关键词。这个回调会在插件第一次被加载时触发,一般当你打开SolidEdge的时候,或者通过插件管理器重新加载时,会先执行这部分函数。(如果需要设置工具条,需要将GuiVersion=1)。

 

SE二次开发-Add-In开发模式 第5张

图5

 

Ribbon菜单制作:

1、创建Ribbon菜单XML文件,创建一个Ribbon.xml,文件属性中的“生成操作”改为“嵌入的资源”。Ribbon.xml中初始创建一个名为NotePad的按钮,文本如下第二张图。(macro为执行的行为)

 

SE二次开发-Add-In开发模式 第6张

SE二次开发-Add-In开发模式 第7张

图6

 

2、创建Ribbon类:

创建一个继承SolidEdgeCommunity.AddIn.Ribbon的类,在构造函数中,添加this.LoadXml(assembly,”MyAddIn.Ribbon.xml”),如下图所示:

 

SE二次开发-Add-In开发模式 第8张

图7

 

3、重写创建Ribbon事件:

需要usingSolidEdgeCommunity.AddIn;

Add后面的尖括号中添加自己定义的Ribbon类;

这个事件使得SolidEdge在创建Ribbon之前能把自定义的Ribbon加入进去。

 

SE二次开发-Add-In开发模式 第9张

图8

 

4、添加图片资源:

创建res文件夹并添加图标png图片;

设置AssemblyInfo.cs,添加如下,001是该资源的id,确保和xml文件中按钮设置的imageId一致。

 

SE二次开发-Add-In开发模式 第10张SE二次开发-Add-In开发模式 第11张

图9

 

5、按钮事件:

除了在xml中直接通过macro指定按钮的行为外,也可以在代码中指定。打开之前的MyRibbon.cs,为按钮添加事件响应。

 

首先通过id获得按钮对象,三种按钮分别为RibbonButton、RibbonRatioButton、RibbonCheckBox。

 

三种类型按钮的事件都是一样的,分为Clip和Help两种事件。

 

SE二次开发-Add-In开发模式 第12张

图10

四、总结

 

详细阐述了如何基于.Net框架搭建SolidEdge Add-In开发环境,内容包括项目类型的选择,框架库的选择,SolidEdge依赖的第三方库如何添加,以及如何创建类添加注册回调;以及如何基于.Net框架搭建SolidEdge Add-In开发框架,内容包括如何触发加载Ribbon菜单,以及Ribbon菜单的设计。

 

免责声明:

1、本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。

2、本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。

3、本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。

4、侵权违法和不良信息举报 举报邮箱:cnddit@qq.com

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
验证码
评论列表 (暂无评论,595人围观)

还没有评论,来说两句吧...