Polyline

The pline() function allows a custom entity to draw graphics primitives using an AcDbPolyline as a template:

virtual Adesk::Boolean 
pline(
    const AcDbPolyline& lwBuf,
    Adesk::UInt32 fromIndex = 0,
    Adesk::UInt32 numSegs = 0) const = 0;

AcDbPolylines are multisegmented and support straight and curved segments with or without width. Using pline() provides the ability to generate contiguous straight and curved segments with width. None of the other AcGi primitive functions support width, so without using pline() it would be necessary to generate many parallel arc and line segments to simulate a filled arc or line segment with width. This is inefficient, and proper display is dependent upon the view (magnification).