System.Drawing.Drawing2D.GraphicsPathIterator.HasCurve Method

Indicates whether the path associated with this System.Drawing.Drawing2D.GraphicsPathIterator contains a curve.

Syntax

public bool HasCurve ()

Returns

This method returns true if the current subpath contains a curve; otherwise, false.

Remarks

All curves in a path are stored as sequences of Bézier splines. For example, when you add an ellipse to a path, you specify the upper-left corner, the width, and the height of the ellipse's bounding rectangle. Those numbers (upper-left corner, width, and height) are not stored in the path; instead; the ellipse is converted to a sequence of four Bézier splines. The path stores the endpoints and control points of those Bézier splines.

A path stores an array of data points, each of which belongs to a line or a Bézier spline. If some of the points in the array belong to Bézier splines, then GraphicsPathIterator.HasCurve returns true. If all points in the array belong to lines, then GraphicsPathIterator.HasCurve returns false.

Certain methods flatten a path, which means that all the curves in the path are converted to sequences of lines. After a path has been flattened, GraphicsPathIterator.HasCurve will always return false. Calling the erload:System.Drawing.Drawing2D.GraphicsPath.Flatten, erload:System.Drawing.Drawing2D.GraphicsPath.Widen, or erload:System.Drawing.Drawing2D.GraphicsPath.Warp method of the System.Drawing.Drawing2D.GraphicsPath class will flatten a path.

Requirements

Namespace: System.Drawing.Drawing2D
Assembly: System.Drawing (in System.Drawing.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0