Edit Polylines

AutoCAD ActiveX

 
Edit Polylines
 
 
 

2D and 3D polylines, rectangles, polygons, and 3D polygon meshes are all polyline variants and are edited in the same way.

AutoCAD recognizes both fit polylines and spline-fit polylines. A spline-fit polyline uses a curve fit, similar to a B-spline. There are two kinds of spline-fit polylines: quadratic and cubic. Both polylines are controlled by the SPLINETYPE system variable. A fit polyline uses standard curves for curve fit and utilizes any tangent directions set on any given vertex.

To edit a polyline, use the properties and methods of the LightweightPolyline or Polyline object. Use the following properties and methods to open or close a polyline, change the coordinates of a polyline vertex, or add a vertex:

Closed property

Opens or closes the polyline.

Coordinates property

Specifies the coordinates for each vertex in the polyline.

AddVertex method

Adds a vertex to a lightweight polyline.

Use the following methods to update the bulge or width of a polyline:

SetBulge

Sets the bulge of a polyline, given the segment index.

SetWidth

Sets the start and end width of a polyline, given the segment index.

For more information about editing polylines, see “Modify or Join Polyline” in the User's Guide.

Edit a polyline

This example creates a lightweight polyline. It then adds a bulge to the third segment of the polyline, appends a vertex to the polyline, changes the width of the last segment, and finally closes the polyline.

Sub Ch4_EditPolyline()
    Dim plineObj As AcadLWPolyline
    Dim points(0 To 9) As Double
      
    ' Define the 2D polyline points
    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
      
    ' Create a light weight Polyline object
    Set plineObj = ThisDrawing.ModelSpace. _
 AddLightWeightPolyline(points)
      
    ' Add a bulge to segment 3
    plineObj.SetBulge 3, -0.5
      
    ' Define the new vertex
    Dim newVertex(0 To 1) As Double
    newVertex(0) = 4: newVertex(1) = 1
      
    ' Add the vertex to the polyline
    plineObj.AddVertex 5, newVertex
      
    ' Set the width of the new segment
    plineObj.SetWidth 4, 0.1, 0.5
      
    ' Close the polyline
    plineObj.Closed = True
    plineObj.Update
End Sub