【摘要】为提高计算机绘图的精度,提高设计绘图的效率和速度,本文通过对Autocad提供的几何计算器的研究,归纳及总结出几何计算器常用的函数及计算表达式,并介绍了Autocad绘图中最常用的几个利用几何计算器快速定位的方法。达到提高
(主题词)AutoCAD几何计算器函数表达式快速定位方法
在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。
1几何计算器
1.1几何计算器
几何计算器(GeometryCalculator)是集成在AutoCAD中的一个三维计算程序,可以计算矢量表达式(点、矢量和数值的组合)、实数和整数表达式。在命令提示Command:下键入`Cal命令可以启动几何计算器。
1.2几何计算器功能
1.2.1几何计算器常用功能
(1)几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。
(2)几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,在几何计算器的数学表达式中可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。
(3)几何计算器具有计算矢量法线的功能。利用几何计算器这一功能,能够快速确定任一矢量,直线或平面的法线方向及垂线。
1.2.2几何计算器其他功能
几何计算器还提供更多丰富的功能,能够帮助用户在二维和三维空间快速定位所需要的点。主要有:①获取角度;②获取半径;③获取交点;④计算距离等。
2几何计算器表达式
2.1AutoCADOSNAP捕捉模式坐标点表达式
在几何计算器作坐标点和坐标点的加减运算时,数学表达式中可以使用AutoCAD的捕捉模式,捕捉屏幕上的坐标点参与运算。可以捕捉的坐标点表达式见下表:
TANGENT
译文 端点 插入点 交点 中点 圆心 最近点 节点 象限点 垂足 切点
2.2计算表达式
在几何计算器中可使用算术表达式和矢量表达式两种计算表达式。
2.2.1算术表达式
算术表达式可以是整数、实数和具有数值操作的函数构成,并可使用算术运算符进行连接。表达式如:(CEN+END)/2(表示一个圆心和一直线端点之间的中心点)。
算数运算符有:+,-,*,/,^,()等。分别表示加,减,乘,除,指数计算,将表达式编组。
2.2.2矢量表达式
矢量表达式可以由点集、矢量、数字和矢量运算符所组成的函数来构成,并可使用矢量运算符进行连接。表达式如:
①矢量加减[a,b,c]±[x,y,z]=[a±x,b±y,c±z]
②矢量与实数相乘除a*[x,y,z]=[a*x,a*y,a*z]
③矢量的点积[a,b,c]*[x,y,z]=a*x+b*y+c*z
④矢量的矢量积[a,b,c]&[x,y,z]=[(b*z)-(c*y),(c*x)-(a*z),(a*y)-(b*x)]
矢量运算符有:+,-,*,/,&,()等。分别表示加,减,乘(点积),除,矢量积,将表达式编组。
2.3常用函数表达式
在使用AutoCAD绘图时,有时需要通过几何计算器的函数表达式来确定点的平面或空间位置。按照函数表达式使用环境分类,几何计算器提供的函数表达式大致可以分为数值函数,几何计算器定义函数两类。
2.3.1数值函数
几何计算器支持的数值函数有
sin(角度值)—正弦函数cos(角度值)—余弦函数tang(角度值)—正切函数Asin(实数)—反正弦函数Acos(实数)—反余弦函数Atan(实数)—反正切函数ln(实数)—自然对数函数log(实数)¬—以10为底的对数函exp(实数)—自然指数exp10(实数)—10为底的指数函数sqr(实数)—平方函数sqrt(实数)—平方根函数abs(实数)—绝对值函数round(实数)—圆整函数Trunc(实数)—取整函数r2d(角度)—将角度从弧度转换成度d2r(角度)—将角度从度转换成弧度pi—常量π
2.3.2几何计算器定义函数
几何计算器定义函数是几何计算器为方便确定点的平面或空间位置,在AutoCAD环境下定义的几何计算器特有函数。几何计算器定义函数有①矢量函数②获取点的函数③点过滤的函数④计算测量值函数。几何计算器定义的函数表达式多,下面将列举在AutoCAD绘图过程中使用的几个最常用函数。
(1)矢量函数
Vec(p1,p2)—计算从点p1到p2的矢量。
nor(p1,p2)—确定直线(p1,p2)的二维单位法向矢量。
nor(p1,p2,p3)—确定平面(p1,p2,p3)的三维单位法向矢量。
(2)获取点的函数
Cur—使用定点设备获取点。
Pld(p1,p2,dist)—计算通过点p1和p2的直线上的一点,参数dist定义该点到点p1的距离。
Plt(p1,p2,t)—计算通过点p1和p2的直线上的一点,参数t为该点到p1点距离与该点到p2点距离的比值,其中0≦t≦1。
ill(p1,p2,p3,p4)—计算直线(p1,p2)和(p3,p4)的交点
(3)点过滤函数
xof(p1)—获取点p1的x分量,x,y分量设置为0。
xyof(p1)—获取点p1的x,y分量,z分量设置为0。
rxof(p1)—获取点p1的x分量。
(4)计算测量值函数
dpl(p,p1,p2)—确定点p到直线(p1,p2)得最短距离。
ang(p1,p2)—确定X轴和直线(p1,p2)(方向是从p1到p2)之间的夹角。点被认为是二维的,投影在当前用户坐标系的XY平面上。
3几何计算器快速定位实例
3.1在两实体间确定中点
这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:
Command:line
Frompoint:’cal(启动几何计算器)
>>Expression:(cen+end)/2(输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元)
>>SelectentityforCENsnap:(用光标捕捉圆心)
>>SelectentityforENDsnap:(用光标捕捉直线的端点)
Topoint:
3.2确定一条直线上的任意等分点和与直线端点定长的点
使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:
Command:line
Frompoint:’cal
>>Expression:plt(end,end,1/3)
>>SelectentityforENDsnap:(用光标捕捉端点A)
>>SelectentityforENDsnap:(用光标捕捉端点B后即得到距A点为1/3线段长的点)
Topoint:
如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。
3.3用相对坐标来确定点
在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:
Command:line
Frompoint:’cal
>>Expression:end+[2,3](作点和点的相加运算)
>>SelectentityforENDsnap:(捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)
Topoint:
3.4作和一斜线相切的圆以及过圆上一点作圆的切线
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:
Command:circle
3P/2P/TTR/<Centerpoint>:’cal
>>Expression:cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)
>>Enterapoint:nea(用光标在直线上捕捉一个点作为圆和直线的切点)
to>>SelectoneendpointforNEE:(用光标捕捉直线的一个端点)
>>SelectanotherendpointforNEE:(用光标捕捉直线上的另一个端点)
Diameter/<Radius><1.6745>:3(给出圆的半径后即可画出这个圆)
改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。
假设过圆和一直线的交点作圆的切线的操作过程如下:
Command:line
Frompoint:int(捕捉交点)
Topoint:’cal
>>Expression:int+3*nor(cen,int)
>>SelectentityforINTsnap:(用光标捕捉交点)
>>SelectentityforCENsnap:(用光标捕捉圆心)
>>SelectentityforINTsnap:(再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)
Topoint:
3.5过一条斜线上的已知点作斜线的垂线
因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:
Command:line
Frompoint:mid(设过直线的中点作垂线)
Topoint:’cal
>>Expression:mid+5*nee(5是垂线的长度)
>>SelectentityforMIDsnap:(用光标选择斜线捕捉中点)
>>SelectoneendpointforNEE:(用光标捕捉直线的端点)
>>SelectanotherendpointforNEE:(用光标捕捉直线的另一个端点)
topoint:
同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。
4结语
本文通过对AutoCAD几何计算器函数的介绍,归纳,结合在绘图过程中的最常用的几个快速定位实例,全面地认识了几何计算器在AutoCAD绘图过程中快速确定点的位置所起到的作用,对提高绘图效率及精度是十分有帮助的。
参考文献:
1章斌全.AutoCAD进阶教程.中国宇航出版社.2003年7月
2姜勇.AutoCAD机械制图教程.人民邮电出版社.2008年5月
3潘鲁生.AutoCAD辅助建筑设计基础与进阶教程.山东美术出版社.2006年10月