更新“文档”窗口中的几何图形

AutoCAD ActiveX/VBA

 
更新“文档”窗口中的几何图形
 
 
 

通过 AutoCAD ActiveX Automation 执行的许多操作都会修改 AutoCAD 图形中显示的内容。但并不是所有这些操作都会立即更新图形的显示。这样设计的目的是使用户可以进行多次图形更改,而无需在每次更改后都等待显示更新;相反,用户可以将更改操作捆绑在一起进行,并仅在完成时进行一次调用以更新显示。

更新显示的方法有 Update 和 Regen。

Update 方法只更新单个对象的显示。Regen 方法将重生成整个图形,并重新计算所有对象的屏幕坐标和视图分辨率,同时还可以重新生成图形数据库的索引,以优化显示和对象选择性能。

更新单个对象的显示

本例创建一个圆。然后使用 Update 方法更新该圆,这样该圆就在 AutoCAD 中可见。

Sub Ch3_UpdateDisplay()
    Dim circleObj As AcadCircle
    Dim center(0 To 2) As Double
    Dim radius As Double
    center(0) = 1: center(1) = 1: center(2) = 0
    radius = 1
      
    ' 创建圆
    Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius)
      
    ' 更新圆
    circleObj.Update
End Sub