该主题提供一个使用PC-DMIS的表达式语言和特定的直线段函数输出扫描中的直线段起始点和终止点数,在构造特征中利用提取到的点创建你需要的直线特征的例子。你可以用本例的方法从扫描创建一段弧。
假定测量例程有一项名称为 SCN1 的扫描特征,该特征类似于:
SCN1=FEAT/SCAN,LINEAROPEN,SHOW HITS=NO,SHOWALLPARAMS=YES
执行模式=重新学习,标称值模式=查找标称值,安全平面=否,单点=否,厚度=0
查找标称值=5,仅选择=否,使用最佳拟合=否,测头补偿=是,避让移动=否,距离=0,CAD补偿=否
方向1=变量
触测点类型=矢量
起始矢量=0,-1,0
方向矢量=1,0,0
剖面矢量=0,0,1
终止矢量=0,-1,0
平面矢量=-1,0,0
点1=100,0,-5
点2=70,0,-5
测量/扫描
基本扫描/直线,显示触测=否,显示所有参数=是
<100,0,-5>,<70,0,-5>,剖面矢量=0,0,1,方向矢量=1,0,0
起始矢量=0,-1,0,终止矢量=0,-1,0,厚度=0
过滤器/NULL过滤器,
执行模式=重新学习
边界/平面,<70,0,-5>,平面矢量=-1,0,0,交叉数=2
触测类型=矢量
标称值模式=查找标称值,5
终止扫描
终止测量/
要从这个扫描创建一行,需使用 LINESEGMENTSTARTINDEX 和 LINESEGMENTENDINDEX 函数提取数据,如:
ASSIGN/LINESTARTINDEX=LINESEGMENTSTARTINDEX("SCN1",1,0.4,0.1)
ASSIGN/LINEENDINDEX=LINESEGMENTENDINDEX("SCN1",1,0.4, 0.1)
这将告诉PC-DMIS找到名为“SCN1”的扫描,并从其第一个直线段获取位于定义的公差范围内的起始和终止索引值。并将索引值赋值线LINESTARTINDEX和LINEENDINDEX变量。
一旦你有了直线段赋值得到的起始和终止点序数,你就可以在构造直线中使用这些变量,如下:
LIN4=FEAT/LINE,RECT,UNBND
理论值/100.225,0,-5.011,1,0,0
实际值/100.225,-0.005,-5.011,1,-0.0000388,0
CONSTR/LINE,BF,2D,SCN1.HIT[LINESTARTINDEX..LINEENDINDEX],,
删除超差点/关,3
FILTER/OFF,WAVELENGTH=0
注意,在上面突出显示的线段特征的代码中,PC-DMIS 使用的是您从扫描中提取出来的起始及终止编号来创建特征的:SCN1.HIT[LINESTARTINDEX..LINEENDINDEX]