首页 关于

C#开发SpaceClaim插件

C#开发SpaceClaim插件SpaceClaim APISCDM文件结构与文档对象一个用于隐藏所选对象的插件

SpaceClaim中常用的操作就那么几个,软件提供了各种方便的快捷键,可以极大的提高操作效率,而唯独使用频率极高的隐藏命令没有快捷键,非常恼火。瞎点的时候,发现它还提供插件支持。除了官网提供的几个官方插件以外,还可以自己开发插件。

SpaceClaim API

ANSYS安装完成后,在安装目录下可以找到插件开发所需的API文档,默认路径是C:\Program Files\ANSYS Inc\v182\scdm,在该目录下,可以看到历代版本的API文档文件夹。

安装目录

每个版本的文件夹内容大致相同,主要文件包括:

SCDM文件结构与文档对象

一个SCDM文件包含如下对象:

Document
Parts
Drawing
Layers
Document Materials
Windows

其中,最常接触到的是Parts对象。一个文件通常包含至少一个Part,这个Part为 main part,part下面通常包含组件、体、线等文档对象。Part的结构如下所示:

Part
Components
Design Bodies
Design Curves
Datum Planes
Coordinates Systems
Sheet Metal Bends
Beams
Spot Weld Joints
Images
Design Faces
Design Edges
Design Curves
Notes
Coordinate Axes

其中,component下面又可以包含components和组件、体、线等文档对象,因此是一个树形结构。

这里Part和Component对象貌似有点冲突,文档中说,A component is an instance of a template part,我理解为每一个Part都是独立的,而Component就是它的容器,代替Part组成文档树的结点,每一个Component的content就是一个part。它自带一个转换矩阵,它的作用就像一个中间件和粘合剂,将所有的的Part拼接起来,显示出一个完整的场景视图。当存在多级结构时,自然也就存在多级的转换,如下图所示:

Part

一个用于隐藏所选对象的插件

生成的插件被SpaceClaim识别后,会在Ribbon菜单里面多生成一个tab,然后在里面再生成一个Group,Group里面新增一个按钮,点击按钮会执行相应的Command,同时可以给该Command绑定想要的快捷键,以实现最初的需求。

插件

SpaceClaim_API.chm中的Getting Started章节描述了开发插件所需的基本要素:

这些基本要素可以自行编写,也可以用SpaceClaim提供的模板生成,然后直接编写要实现的Command即可。