A-A+

CATIA VBA(VBS) 二次开发中的选择过滤器

2019年07月14日 CAD 阅读 1,209 views 次

在文章《CATIA使用VBA(VBS)二次开发时用户的交互选择》中介绍了在CATIA中使用SelectElement2方法进行用户交互选择。在使用SelectElement2进行选择时需要设置选择过滤器,CATIA CAA Visual Basic中提供了如下两类选择过滤器:

  1. 直接使用对象名称作为过滤器关键字,如HybridBody、HybridShape、Body、Plane、Point、Line等;
  2. 使用枚举类CATSelectionFilter中提供的通用选择过滤器,此枚举类的定义如下:

enum CATSelectionFilter {

 ZeroDim,

 MonoDim,

 MonoDimInfinite,

 RectilinearMonoDim,

 RectilinearMonoDimInfinite,

 BiDim,

 BiDimInfinite,

 PlanarBiDim,

 PlanarBiDimInfinite,

 CylindricalBiDim,

 TriDim

}

各枚举值的含义:

  • ZeroDim:0-D元素,如Point2D;
  • MonoDim:一维元素,但是不能是无穷元素;
  • MonoDimInfinite:一维元素,可以是无穷元素;
  • RectilinearMonoDim:一维线性元素,但是不能是无穷元素;
  • RectilinearMonoDimInfinite:一维线性元素,可以是无穷元素;
  • BiDim:二维元素,但是不能是无穷元素;
  • BiDimInfinite:二维元素,可以是无穷元素;
  • PlanarBiDim:平面二维元素,但是不能是无穷元素;
  • PlanarBiDimInfinite:平面二维元素,可以是无穷元素;
  • CylindricalBiDim:圆柱二维元素,但是不能是无穷元素;
  • TriDim:三维元素;

在使用选择过滤器时可以使用多个过滤器进行组合,例如:

Dim Doc, Slct, Status, lType(1)

Set Doc = CATIA.ActiveDocument

Set Slct = Doc.Selection

lType(0) = "Plane"

lType(1) = "BiDim"

Status = Slct.SelectElement2(lType,"Select the surface", False)

If Status = "Redo" Or Status ="Undo" Or Status = "Cancel" Then

   Exit Sub

End If

个人公众号“数字化设计CAX联盟”,欢迎关注,共同交流
为您推荐:

给我留言

© 坐倚北风 版权所有 严禁镜像复制 苏ICP备15034888号. 基于 Ality 主题定制 AliCMS
联系邮箱:leanwind@163.con,微信公众号:数字化设计CAX联盟

用户登录

分享到: