📄 create-center.grs
字号:
proc/face,facenum,cur,pt1,pt2,intpt
entity/face(50) $$条纹配光纹的曲面
entity/cur $$条纹配光纹的曲面上的曲线
entity/pt1 $$条纹配光纹的曲面上的曲线的第一个点
entity/pt2 $$条纹配光纹的曲面上的曲线的第二个点
entity/ln $$连接点pt1,pt2的直线
entity/centerpt $$点pt1,pt2的中心点
entity/perpcen $$过中心点centerpt且垂直于直线ln的平面
entity/intercurve $$平面perpcen与曲线相交形成的组
entity/unintercurve $$解组之后形成的相交曲线
entity/intpt $$工作坐标系下cur和intercurve的交点
entity/workcsys $$工作坐标系
number/a(3),b(3),c(3)
l10:
$$过点pt1,pt2连接直线ln。
ln=line/pt1,pt2
blank/ln
a(1..3)=&point(pt1)
b(1..3)=&point(pt2)
c(1)=(a(1)+b(1))/2
c(2)=(a(2)+b(2))/2
c(3)=(a(3)+b(3))/2
$$点pt1,pt2的中心点centerpt。
centerpt=point/c(1..3)
$$过中心点centerpt作垂直于直线ln的平面perpcen。
perpcen=plane/perpto,ln,thru,centerpt
blank/perpcen
ifthen/facenum==1
$$若曲线的个数等于1,则调用子程序singleface-create-curve求face(1)与平面perpcen的
$$交线unintercurve。
call/'singleface-create-curve',face(1),perpcen,unintercurve,centerpt
else
$$若曲线的个数大于1,则调用子程序mutiface-create-curve求face(1..faceum)与平面
$$perpcen的交线unintercurve。
call/'mutiface-create-curve',face,facenum,perpcen,unintercurve,$
centerpt
endif
$$调用子程序'set-wcs'生成工作坐标系
call/'create-wcs',cur,unintercurve,workcsys
&wcs=workcsys
$$在工作坐标系下求曲线cur和相交曲线unintercurve的交点intpt。
intpt=point/intof,cur,unintercurve
delete/perpcen,centerpt,ln,unintercurve
trm:
return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -