偏移对象

AutoCAD ActiveX/VBA

 
偏移对象
 
 
 

偏移对象可以在距原始对象的指定偏移距离处创建新的对象。可以偏移圆弧、圆、椭圆、直线、优化多段线、多段线、样条曲线和构造线。

要偏移对象,请使用该对象的 Offset 方法。这个方法只需要输入一个值:偏移对象的距离。如果此距离为负,则 AutoCAD 会将其解释为一段用于生成“更小”曲线的偏移;即对于圆弧来说,将偏移到小于起始曲线的半径给定距离的半径。如果“更小”没有意义,则 AutoCAD 将在更小的 X,Y,Z WCS 坐标方向上偏移。如果偏移距离无效,将返回错误。

对于许多对象,此操作的结果是一条新的曲线(可能与原始曲线的类型不同)。例如,偏移椭圆会形成样条曲线,因为结果的确符合椭圆的表达式。在某些情况下,偏移结果可能会形成若干条曲线。因此,该方法会返回新的对象或对象数组(作为变量)。

有关偏移对象的详细信息,请参见《用户手册》中的“复制、偏移或镜像对象”。

偏移多段线

本例创建一条优化多段线,然后偏移该多段线。

Sub Ch4_OffsetPolyline()
    ' 创建多段线
    Dim plineObj As AcadLWPolyline
    Dim points(0 To 11) As Double
    points(0) = 1: points(1) = 1
    points(2) = 1: points(3) = 2
    points(4) = 2: points(5) = 2
    points(6) = 3: points(7) = 2
    points(8) = 4: points(9) = 4
    points(10) = 4: points(11) = 1
    Set plineObj = ThisDrawing.ModelSpace. _
                   AddLightWeightPolyline(points)
    plineObj.Closed = True
    ZoomAll
      
    ' 偏移多段线
    Dim offsetObj As Variant
    offsetObj = plineObj.Offset(0.25)
      
ZoomAll
End Sub