2847657989 发表于 2014-3-19 12:00:33

老叶 发表于 2014-3-14 21:51 static/image/common/back.gif
非常感谢楼主的分享,有源码就好了。

源码来了:


$$定义变量
ENTITY/pt1,pt2,LBL1,cs1,cs2
NUMBER/P(3),M,N,L(1),AA
NUMBER/X1,Y1,Z1
NUMBER/C,B,MAT(22),S,D
STRING/SX(20),SY(20),SZ(20)

$$选取查询点
MASK/2
L30:
gpos/'PICK A Point',p(1),p(2),p(3),RESP
JUMP/L30:,L90:,,RESP
pt1=point/p(1),p(2),p(3)
&DECPL=3

$$取点坐标并转换成小数点后两位数的字符串
SX='X='+blstr(1)+FSTRL(P(1))
SY='Y='+blstr(1)+FSTRL(P(2))
SZ='Z='+blstr(1)+FSTRL(P(3))

cs1=&wcs
&wcsdrw=2
cs2=csys/&wcs,origin,pt1
delete/pt1
&wcs=cs2
l50:
$$定位label引线坐标
POS/'Pick the next point',x1,y1,z1,resp
JUMP/L50:,L90:,,,RESP

$$设定字符大小,箭头样式
&ENSITE=5
C=&CSIZE
&CSIZE=2
B=&ARROW
&ARROW=1
&FILARW=1 $$箭头充满显示
p(1)=0
p(2)=0

$$判断label字符放置左右方位
IF/P(1)<X1,JUMP/L70:
L60:
LBL1 =LABEL/right,x1,y1,p(1),p(2),SX,SY,SZ
JUMP/L80:
L70:
LBL1 =LABEL/LEFT,x1,y1,p(1),p(2),SX,SY,SZ

l80:
l90:
$$恢复系统设定
MASK/ALL
&CSIZE=C
&ARROW=B

$$程序结束
TERM:
&wcsdrw=1
&wcs=cs1
HALT

TAROU 发表于 2014-3-19 12:09:52

非常感謝,放出源碼更好

Akill_king 发表于 2014-3-29 16:09:02

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:05

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:07

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:08

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:09

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:09

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:09

DGH DFHG 直接趧夺得 二中国是的

Akill_king 发表于 2014-3-29 16:09:10

DGH DFHG 直接趧夺得 二中国是的
页: 1 [2] 3 4 5 6 7 8 9 10 11
查看完整版本: UG GRIP一个非常实用的标注小程序