光纤熔接 ERP

弱电论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1255|回复: 0
打印 上一主题 下一主题

[第75讲]几何计算器

[复制链接]
跳转到指定楼层
1#
发表于 2006-9-1 09:25:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
华为代理商

几何计算器

   几何计算器(Geometry Calculator)是集成在AutoCAD中的一个三维计算程序,可以计算矢量表达式(点、矢量和数值的组合)、实数和整数表达式。在计算中可以使用标准的数学函数,以及用于计算点、矢量和AutoCAD几何图形的专门函数。用户可直接在命令行调用“cal”命令,或在其他命令执行过程中透明地调用该命令('cal)来启动该计算程序。其计算结果可作为当前AutoCAD提示的输入或用于为一个AutoLISP变量赋值。
16.6.1 计算表达式
    在几何计算器中可使用算术表达式和矢量表达式两种计算表达式。算术表达式可以是整数、实数和具有数值操作的函数构成,并可使用算术运算符进行连接。可用的算术运算符如表16-1所示。
表16-1 算术运算符

运算符

运算

+, -

加,减

* , /

乘,除

^

指数计算

( )

将表达式编组

    矢量表达式可以由点集、矢量、数字和矢量运算符所组成的函数来构成,并可使用矢量运算符进行连接。可用的矢量运算符如表16-2所示。
表16-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]=ax+by+cz

&

矢量的矢量积

[a,b,c]&[x,y,z]=[(b*z)-(c*y),(c*x)-(a*z),(a*y)-(b*x)]

( )

将表达式编组

    在对表达式进行计算时,将遵照标准数学计算的优先级规则。
16.6.2 标准数值函数
    可以在计算器中使用的数值函数详见表16-3。
表16-3 数值函数一览表

函数

说明

sin(角度值)

正弦函数

cos(角度值)

余弦函数

tang(角度值)

正切函数

Asin(实数)

反正弦函数

Acos(实数)

反余弦函数

Atan(实数)

反正切函数

ln(实数)

自然对数函数

log(实数)

以1 为底的对数函数

exp(实数)

自然指数函数

exp10(实数)

10为底的指数函数

sqr(实数)

平方函数

sqrt(实数)

平方根函数

abs(实数)

绝对值函数

round(实数)

圆整函数

Trunc(实数)

取整函数

r2d(角度)

将角度从弧度转换成度

表16-3 数值函数一览表

函数

说明

d2r(角度)

将角度从度转换成弧度

pi

常量π

16.6.3 矢量函数
    在计算器中可使用如下各种矢量函数,如表16-4所示。
表16-4 矢量函数一览表

函数

说明

vec(p1,p2)

计算从点p1到点p2的矢量

vec1(p1,p2)

计算从点p1到点p2的单位矢量

abs(v)

计算矢量v的长度

nor

确定选定的圆、圆弧或多段线圆弧段的三维单位法向矢量

nor(v)

确定矢量v的二维单位法向矢量

nor(p1,p2)

确定直线(p1,p2)的二维单位法向矢量

nor(p1,p2,p3)

确定平面(p1,p2,p3)的三维单位法向矢量

16.6.4 获取点的函数
    在计算器中可使用如下各种函数来获取一个点,如表16-5所示。
表16-5 获取点函数一览表

函数

说明

cur

使用定点设备获取点

@

获得最后一个指定点

Pld (p1,p2,dist)

计算通过点p1和p2的直线上的一点,参数dist定义该点到点p1的距离

plt(p1,p2,t)

计算通过点p1和p2的直线上的一点,参数t为该点到p1点距离与该点到p2点距离的比值

rot(p,origin,ang)

绕经过点origin的Z轴旋转点p,转角为ang时所得到的点

rot(p,AxP1,AxP2,ang)

以直线(AxP1,AxP2)为轴旋转点p,转角为ang时所得到的点

ill(p1,p2,p3,p4)

计算直线(p1,p2)和(p3,p4)的交点

ilp(p1,p2,p3,p4,p5)

计算直线(p1,p2)和平面(p3,p4,p5)的交点

w2u(p1)

将世界坐标系中的点p1转换到当前用户坐标系中

u2w(p1)

将当前用户坐标系中的点p1转换到世界坐标系中

    此外,还可以在计算器中使用AutoCAD的点捕捉模式来获取点,如表16-6所示。
表16-6 计算器中可用的捕捉模式

缩写

捕捉模式

END

ENDPOINT(端点)

INS

INSERT(插入点)

INT

INTERSECTION(插入点)

MID

MIDPOINT(中点)

CEN

CENTER(圆心)

NEA

NEAREST(最近点)

NOD

NODE(节点)

QUA

QUADRANT(象限点)

PER

PERPENDICULAR(垂足)

TAN

TANGENT(切点)

16.6.5 点过滤函数
    在计算器中可使用点过滤函数来获取点的各个分量,如表16-7所示。
表16-7 点过滤函数

函数

说明

xyof(p1)

获取点p1的X、Y分量,Z分量设置为0.0

xzof(p1)

获取点p1的X、Z分量,Y分量设置为0.0

yzof(p1)

获取点p1的Y、Z分量,X分量设置为0.0

xof(p1)

获取点p1的X分量,Y、Z分量设置为0.0

yof(p1)

获取点p1的Y分量,X、Z分量设置为0.0

zof(p1)

获取点p1的Z分量,X、Y分量设置为0.0

rxof(p1)

获取点p1的X分量

ryof(p1)

获取点p1的Y分量

rzof(p1)

获取点p1的Z分量

16.6.6 计算测量值函数
     在计算器中可使用如下函数的来计算测量值,如表16-8所示。
表16-8 计算测量值的函数

函数

说明

dist(p1,p2)

确定两点 p1 和 p2 之间的距离。此函数相当于矢量表达式 abs(p1-p2)

dpl(p,p1,p2)

确定点 p 到直线 (p1,p2) 的最短距离

dpp(p,p1,p2,p3)

确定点 p 到平面 (p1,p2,p3) 的距离

表16-8 计算测量值的函数

函数

说明

dist(p1,p2)

确定两点 p1 和 p2 之间的距离。此函数相当于矢量表达式 abs(p1 - p2)

rad

确定选定对象的半径。对象可以是圆、圆弧或二维多段线的圆弧段

ang(v)

确定 X 轴和矢量 v 之间的夹角。矢量 v 被当作是二维的,投影在当前用户坐标系的 XY 平面上

ang(p1,p2)

确定 X 轴和直线 (p1,p2)(方向是从 p1 到 p2)之间的夹角。点被认为是二维的,投影在当前用户坐标系的 XY 平面上

ang(apex,p1,p2)

确定直线 (apex, p1) 和 (apex, p2) 之间的夹角。点被认为是二维的,投影在当前用户坐标系的 XY 平面上

ang(apex,p1,p2,p)

确定直线 (apex, p1) 和 (apex, p2) 之间的夹角。直线被认为是三维的。最后一个参数(点 p)用来定义角度的方向。此角度以顶点 apex 到点 p 的直线为轴按逆时针度量

cvunit(值,原测量单位,新测量单位)

AutoLISP 函数 cvunit 将数字或点从一种测量单位转换为另一种测量单位。关于可转换的测量单位列表,请参见Support/acad.unt 文件

16.6.7 使用变量
    几何计算器允许在数学表达式中使用AutoLISP变量,也可以用计算器为一个AutoLISP变量赋值,该变量可以是整数、实数或一个2D或3D点。
    此外,几何计算器也可以通过函数getvar(变量名)来获得AutoCAD系统变量的值。

 

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|广告咨询|VIP注册|关于我们|联系我们|积分规则|手机版|Archiver|弱电之家论坛 ( 京ICP备11008917号-3 )

GMT+8, 2024-5-18 00:03 , Processed in 0.158124 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表