CAD坐标里怎么输入公式?
前几天有网友问在输入坐标或长度的时候是否能输入公式,比如20/3或7*8这样简单的算式。CAD虽然在定位点或长度时不能直接输入算式,但利用计算器功能不仅可以输入数字的算式,还可以输入点之前的算式,点可以是直接拾取的点,也可以是捕捉图形的特征点。
一、在CAD绘图中如何利用计算器
CAD当前版本提供了两种计算器,一种是快速计算器,是一个跟WINDOWS计算器类似的一个对话框,输入QCAL命令回车或按CTRL+8可以打开,如下图所示。
还有一种是在命令行使用的计算器,这个功能在早期的CAD版本就提供了,命令是CAL。我们在命令行输入CAL后回车,软件就会提示让我们输入表达式,我们输入3000/18后回车,就可以得到需要的结果,如下图所示。
通常我们都是在绘图的过程需要利用这类的计算值,也就是在执行绘图或编辑命令的过程中进行这类的计算,此时如果要调用计算器,我们就需要在CAL命令前输入一个单引号‘,这种在执行命令过程中可调用的命令叫做透明命令,比如我们可以在指定直线第一点后在提示指定第二点的时候输入'cal回车,然后输入算式得到直线的长度值,如下图所示。
虽然说需要多输入'cal,然后回车,但如果我们对计算器能输入的表达式有了充分的了解的话,就不会觉得多输入一个'cal麻烦了,下面就给大家介绍计算器可输入的表达式的类型。
二、计算器可以支持的表达式
前面提到过CAD的表达式不仅支持简单的数字间的算式,还可以支持点坐标、捕捉特征点等,下面我们就简单列举一下计算器可以列举的各种表达式。
1、基本算式
基本算式包括简单的加减乘除运算,在算式还可以使用括号,比如图中标注的直线尺寸是两个185和10加上一个20,我们要一次性将这条直线绘制出来,就可以利用计算器输入:(185+10)*2+20,我们就不需要心算了,如下图所示。
2、利用捕捉点来进行计算
有时在绘图的时候无法直接捕捉点来定位,比如我们需要捕捉一个圆心到直线端点两点间的中点位置,我们有几种方法可以实现,方法一,可以先用直线线将圆心和直线的端点连接上,然后捕捉直线的中点。假如这条直线是图中不需要的,在定位完点我们还需要将直线删除;方法二,针对这类需求其实CAD已经提供了一个捕捉选项:MTP(两点之间的中点),我们可以直接输入MTP,或者按SHIFT+鼠标右键,在右键菜单中选择:两点之间的中点,前提是我们需要事先打开圆心和端点的捕捉;方法三,就是利用计算器,输入'cal回车,可以输入算式(CEN+END)/2,然后拾取圆和直线就可以完成点的定位。
3、利用图形的参数进行计算
我们绘制完一个圆后,假如要绘制一个此圆半径2倍或3倍的圆,我们可以利用计算器中输入rad,然后可以根据提示在途中获取之前绘制的圆的半径,如下图所示。
4、利用计算器的函数来计算点、距离、角度等
CAD的计算器中提供了一些用于计算距离、交点、角度、方向(矢量)的函数,有一些也可以用在我们的绘图过程中,下面简单列举几种。
可以用pld函数和plt函数在一条线上定位一个点。例如:
表达式:pld(P1,P2,distance)
表示在P1P2两点的直线上距离P1为distance的点,比如表达式输入pld(END,END,58)将P1和P2设置成一条直线的两个端点,然后我们定位到距离其中一个端点58的点,如下图所示。
当然上述操作用CAD的FROM或TK捕捉,或者用浩辰CAD中的距端点捕捉都可以实现。但这个函数中P1和P2可以是图中图形的特征点,也可以直接输入坐标值,比如我们可以直接取坐标20,20到800,600两点连线上距离60的点,就可以输入pld([20,20],[800,600],60)。
表达式:plt(P1,P2,SCALE)
可以算出两点连线上一定比例的点,比如我们利用plt(END,END,0.3)可以定位到两个图形端点连线上距离第一端点30%距离的点,如下图所示。
用这个表达式也可以获取直线的等分点,例如输入plt(END,END,1/7).
表达式: ang(P0,P1,P2)
返回一个顶点为P0 ,起点为P1 ,终点为P2的夹角。
表达式:ill(P1,P2,P3,P4)
返回P1、P2连线与连线P3、P4的交点。另外ille是函数ill(end,end,end,end)的简写。也就是说在表达式里输入ille,就可以直接拾取四个端点,计算两条连线的交点。
表达式:mee
函数mee表示两点连线的中点,实际是(end+end)/2的简写。前面讲过用捕捉现在也可以实现了。
表达式:nee
函数nee表示垂直一直线的单位矢量,是函数nor(end,end)的简写,矢量简单理解就是方向或角度,网上有一个样例,就是我们可以通过表达式来获取与直线在指定点相切且已知半径的圆,如下图所示。
在这个例子中在指定位置绘制了一个点对象,在算式中输入的nod+200*nee,nod是利用节点捕捉来获取点对象的坐标,然后我们在这个点的坐标基础上加上200*直线的垂直矢量,就找到我们需要绘制圆的圆心。
表达式:dee
函数dee表示的是两点之间的距离,是函数dist(end,end)的简写。表达式: dee =表达式:dist (end,end)。
坐标过滤器
xyof(p1)获取点p1的X、Y分量,Z分量设置为0.0;xof(p1)获取点p1的X分量,Y、Z分量设置为0.0;rxof(p1)获取点p1的X分量;其他方向类推。
这些表达式有些已经在捕捉选项里已经可以使用了,按住SHIFT键+鼠标右键调出来的捕捉快捷菜单中,可以选择点过滤器,跟这些函数的作用类似。
不过在表达式中可以在获取的坐标进基础上加上一定的数值或者对坐标进行其他运算,可以实现点过滤器无法完成的操作,下面也是网上找到的一个小视频,大家可以看一下。
一些在低版本需要用算式去获取的点,如两点间的中点、点过滤器、跟踪等都已经被添加到捕捉选项中,到现在的版本已经可以捕捉就可以直接完成。