[snap] grip 尺寸标注 选择2点测量尺寸并标注

[复制链接]
梅雷工具箱发表于 2015-6-25 10:02:21 | 显示全部楼层 |阅读模式

尺寸标注  选择2点测量尺寸并标注


$$ 尺寸标注  选择2点测量尺寸并标注
gripsw / declrv   $$ 表示变量必须定义不然无法编译
entity / box(2),pt(2),ln
number / mat(12),xf(2),yf(2),cx,cy,cz
number / x1,y1,z1,resp,x2,y2,z2,lnc

&txarr=1    $$ 箭头 自动放置=1 在内=2  在外=3
&aspect=0.5 $$ 文字长宽比
&decpl=3    $$ 设置当前小数位数
&ddecpl=3   $$ 设置尺寸标注的小数位数
&arfldt=0   $$ 箭头距离尺寸
&arrow2=2   $$ 箭头形状
&dunit=1    $$ 单位 毫米=1 米=2 英寸=3 其它略
&filarw=2   $$ 点箭头控制是否填充 填充=1 不填充=2
&ariang=30  $$ 箭头夹角 0-180



l10:
gpos/'梅雷提示!请选择参考点...',x1,y1,z1,resp
jump/l10:,end:,,,resp

l20:
gpos/'梅雷提示!请选择参考点...',x2,y2,z2,resp
jump/l10:,end:,,,resp

pt(1)=point/x1,y1,z1
pt(2)=point/x2,y2,z2

cx=absf(x1-x2)
cy=absf(y1-y2)
cz=absf(z1-z2)

ifthen/cx<>0
xf(1)=minf(x1,x2)+cx/2
yf(1)=maxf(y1,y2)+cx/5

&asize=intf(cx/40)    $$ 箭头大小
&csize=intf(cx/25)    $$ 文字大小

box(1)=ldim/horiz,xf(1),yf(1),pt(1),pt(2),append,'mm'  $$ 平行的标注
mat=matrix/transl,0,0,z1        $$ 生成平移矩阵
box(1)=transf/mat,box(1),move   $$ 变换的实现
endif

ifthen/cy<>0
xf(2)=maxf(x1,x2)+cy/5
yf(2)=minf(y1,y2)+cy/2

&asize=intf(cy/40)    $$ 箭头大小
&csize=intf(cy/25)    $$ 文字大小

box(2)=ldim/vert,xf(2),yf(2),pt(1),pt(2),append,'mm'   $$ 垂直的标注
mat=matrix/transl,0,0,z1        $$ 生成平移矩阵
box(2)=transf/mat,box(2),move   $$ 变换的实现
endif

ln=line/x1,y1,z1,x2,y2,z2
lnc=&length(ln)      $$取直线长
delete/ln

print/'x轴 最小距离 = '+fstr(cx)
print/'y轴 最小距离 = '+fstr(cy)
print/'z轴 最小距离 = '+fstr(cz)
print/'两点最小距离 = '+fstr(lnc)


end:
halt



_____________________________________________________________________________ _

中磊UG二次开发教程 梅雷著 qq1821117007
学UG就上UG网 http://www.9sug.com/
就上UG网淘宝直营店
您需要登录后才可以回帖 登录 | 注册UG网 用百度帐号登录

本版积分规则