DMIS语言简易教程

DMIS 4.0 简单教程
几何元素
F(CIRC3)=FEAT/CIRCLE,INNER,CART,-32.5000,38.3494,-25.0000,0.0000,0.0000,1.0000,10.0000
MEAS/CIRCLE,F(CIRC3),3
PTMEAS/CART,-32.5000,33.3494,-25.0000,0.0000,1.0000,0.0000
PTMEAS/CART,-36.8301,40.8494,-25.0000,0.8660,-0.5000,0.0000
PTMEAS/CART,-28.1699,40.8494,-25.0000,-0.8660,-0.5000,0.0000
ENDMES
F(CIRC3)=FEAT/CIRCLE,INNER,CART,-32.5000,38.3494,-25.0000,0.0000,0.0000,1.0000,10.0000
MEAS指令表示一个测量过程的开始。如果系统处在“MODE/AUTO”状态下,那么系统将自动测量下面的空间点。如果系统的状态是“MODE/PROG”,则PTMEAS将无须干预地将指定的点测量完毕。
MEAS/CIRCLE,F(CIRC3),3
PTMEAS”指令只是指明需要测量的点的坐标和触测的方向。
PTMEAS/CART,-28.1699,40.8494,-25.0000,-0.8660,-0.5000,0.0000
ENDMES”指令将结束点的测量,然后计算结果。
DECL/CHAR,80,TCDIRS
DECL/INTGR,TCNSLT
DECL/DOUBLE,TCDIFX,TCDIFY,TCDIFZ
DECL/CHAR,80,RESULTS[10]
DECL/CHAR,80,RESULTS[10,5]
通过“DECL”指令,可以定义各种变量
DECL/INTGR,IND
DECL/CHAR,80,RESULTS[10]
DO/IND,1,10,1
RESULTS[IND]=ASSIGN/''
ENDDO
可以定义以下类型的变量:
BOOL
CHAR
INTGR
REAL
VECTOR
LONG
这些变量的有效范围可以是:
COMMON
GLOBAL
LOCAL
ASSIGN变量赋值
在DMIS中进行变量赋值并不像只用“=”号那样简单
TCDIRS=ASSIGN/'C:\Programmi\Coord3\ARCO\Data\'
TCNSLT=ASSIGN/6
TEXT提示信息
TEXT/OPER,'MAKE SURE THE PART IS ON THE FIXTURE' text OPER must be closed pressing oK
TEXT/MAN,'MEAS UPPER HOLE' text MAN disappear automatically when you measure the 1st point
数据输入
TEXT/QUERY,(NMVAR),20,A,L,'Write your name'
提取数据
把一个变量赋值为任何一个参数的定义。不要忘了“F”和“FA”、“S”、“SA”的区别:
语句中的序号代表元素定义中数据位置:
F(POI_1)=FEAT/POINT,CART, 1.111,2.222,3.333, 0,0,0
F(POI_2)=FEAT/POINT,CART, 4.444,5.555,6.666, 0,0,0
F(POI_3)=FEAT/POINT,CART, 7.777,8.888,9.999, 0,0,0
FA(POI_1)=FEAT/POINT,CART, 1.111,2.222,3.333, 0,0,0
FA(POI_2)=FEAT/POINT,CART, 4.444,5.555,6.666, 0,0,0
FA(POI_3)=FEAT/POINT,CART, 7.777,8.888,9.999, 0,0,0
DECL/INTGR,i
DECL/CHAR,20,elnm
DECL/DOUBLE,xx,yy,zz
DO/i,1,3
elnm=ASSIGN/CONCAT('poi_',STR(i))
xx=OBTAIN/FA(@elnm),3
yy=OBTAIN/FA(@elnm),4
zz=OBTAIN/FA(@elnm),5
elnm=ASSIGN/CONCAT('newpoi_',STR(i))
F(@elnm)=FEAT/POINT,CART, xx,yy,zz, 0,0,0
FA(@elnm)=FEAT/POINT,CART, xx,yy,zz, 0,0,0
ENDDO
使用“EVAL”而不是使用“OUTPUT”时,可以在不输出该数据的情况下,得到需要的数据。
DECL/DOUBLE,tol_value
T(TP)=TOL/POS,2D,1.0000
EVAL/FA(COORD3),TA(TP)
tol_value=OBTAIN/TA(TP),3
CHAR
定义一个字符函数,返回一个长度为1、包含一个值为1-255的基于‘X’的字符。
CHR(x)
$$ *** to print ALL the ASCII characters ***
DECL/CHAR,50,st
DECL/INTGR,ii
DISPLY/OFF
DISPLY/TERM,V(TEXT)
DO/ii,1,255
st=ASSIGN/CHR(ii)
st=ASSIGN/CONCAT(STR(ii),' ',st)
TEXT/OUTFIL,st
ENDDO
CONCAT
Is used to concatenate more than 1 string
FILENAME=ASSIGN/CONCAT(PART1,NAME,'.TXT')
SCSNS
用来获取实际激活的测头的名字
DECL/DOUBLE,PRDIAM
DECL/CHAR,50,SENSOR_NAME
SENSOR_NAME=ASSIGN/SCSNS()

本文发布于:2024-09-21 15:21:24,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/96061.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:测量   定义   数据   变量   指令   系统   赋值
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议