明经通道 AutoLISP 函数  
grvecs
 

在图形屏幕上绘制多个矢量

(grvecs vlist [trans]) 

参数

vlist

由一系列的可选颜色代码(整数)和两个点表组成的矢量表。关于设置 vlist 格式的详细信息,请参见矢量表格式。

trans

转换矩阵,用来改变定义在矢量表中的矢量位置或比例。它是由四个子表组成的,每个子表又由四个实数组成。

返回值

nil

矢量表格式

vlist 的格式为:

([color1] from1 to1 [color2] from2 to2 ...) 

颜色值可以作用于随后的所有矢量,直到 vlist 指定另一种颜色为止。
AutoCAD 颜色代码的取值范围是 0 到 255。如果颜色代码值大于 255,则后续矢量会以 XOR(异或)方式显示,也就是以取补颜色生成被该矢量覆盖的对象。而且当矢量被覆盖时,它自身会消失。如果颜色代码小于 0,将亮显后续矢量。亮显方式取决于显示设备,大多数显示设备用虚线表示亮显,但某些显示设备是用一种有区别的颜色来表示。

两个点表 from 和 to 指定矢量的两个端点,它们是以当前 UCS 表示的。这些点可以是二维点或三维点。必须把矢量的两个端点作为一对点(即两个连续的点表)来传送,否则,对 grvecs 函数的调用将会失败。

AutoCAD 会将矢量进行裁剪以适应屏幕。

示例

下列代码在图形屏幕上显示五条垂直矢量,而且每条颜色各不相同:

(grvecs '(1 (1 2)(1 5)       绘制从 (1,2) 到 (1,5) 的红线 
          2 (2 2)(2 5)       绘制从 (2,2) 到 (2,5) 的黄线 
          3 (3 2)(3 5)       绘制从 (3,2) 到 (3,5) 的绿线 
          4 (4 2)(4 5)       绘制从 (4,2) 到 (4,5) 的青线
          5 (5 2)(5 5)       绘制从 (5,2) 到 (5,5) 的蓝线 
) )

以下矩阵表示以 1.0 的比例作统一的比例缩放并作偏移量为 (5.0,5.0,0.0) 的平移。如果将该矩阵作用到上述矢量上,它们将被平移 (5.0,5.0,0.0)。

'((1.0 0.0 0.0 5.0)
   (0.0 1.0 0.0 5.0)
   (0.0 0.0 1.0 0.0)
   (0.0 0.0 0.0 1.0)
)

参阅

关于转换矩阵的详细信息,请参见 nentselp 函数,关于在两点间绘制矢量,请参见 grdraw 函数。

明经通道 版权所有 未经许可 不得传播

 评论