创建 Point 对象

AutoCAD ActiveX/VBA

 
创建 Point 对象
 
 
 

Point 对象非常有用,例如,可将 Point 对象用作捕捉的节点或者偏移对象的参考点。可以相对于屏幕或采用绝对单位来设置点的样式和大小。

PDMODE 和 PDSIZE 系统变量控制 Point 对象的外观。PDMODE 值 0、2、3 和 4 指定要通过点绘制的图形。值为 1 时表示不显示任何图形。

在上述值上加上 32、64 或 96 表示除了绘制通过点的图形以外,还在点的周围绘制形状:

PDSIZE 控制点图形的尺寸(PDMODE 值为 0 和 1 时除外)。如果设置为 0,则点图形的高度是图形区高度的 5%。正的 PDSIZE 值指定点图形的绝对尺寸。负值将解释为视口大小的百分比。重生成图形时将重新计算所有点的大小。

更改 PDMODE 和 PDSIZE 后,现有点的外观将在下次重新生成图形时改变。

要设置 PDMODE 和 PDSIZE,请使用 SetVariable 方法。

创建 Point 对象并更改其外观

下例在模型空间中创建坐标为 (5,5,0) 的 Point 对象,随后将更新 PDMODE 和 PDSIZE 系统变量。

Sub Ch4_CreatePoint()
    Dim pointObj As AcadPoint
    Dim location(0 To 2) As Double
      
    ' 定义点的位置
    location(0) = 5#: location(1) = 5#: location(2) = 0#
      
    ' 创建点
    Set pointObj = ThisDrawing.ModelSpace.AddPoint(location)
    ThisDrawing.SetVariable "PDMODE", 34
    ThisDrawing.SetVariable "PDSIZE", 1
    ZoomAll
End Sub