O'Reilly logo

.NET Windows Forms in a Nutshell by Matthew Adams, Ian Griffiths

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Name

GraphicsPath

Synopsis

This class implements a complex graphics path that can be used to encapsulate a number of different drawing elements in a single container. It can be used in conjunction with the System.Drawing.Graphics.DrawPath() and System.Drawing.Graphics.FillPath() members to render outlines or filled shapes. The FillMode specifies the winding mode for filled shapes. If the path is an open shape, the system automatically adds a straight line to close the path if it is to be filled; this does not affect outline drawing.

The path can also be used for hit-testing. The IsOutlineVisible() method will widen the path with the specified pen, and then return a value indicating whether a particular point is to be found under that path. Note that this is non-destructive, whereas the Widen() method followed by IsVisible(), while logically similar, will irreversibly flatten the path first. (See below for information on flattened paths.) In a similar vein, GetBounds() will give you the minimum containing rectangle for the path.

A path consists of one or more figures. A figure is a connected set of drawing objects. A figure is automatically started when the path is created, and you can then use the various AddXXX() methods to insert shapes into the path. Those shapes are not actually inserted as-is, but approximated with a set of straight line or Bezier spline segments.

You then call CloseFigure() if you wish to create a closed shape and start a new figure, or alternatively call StartFigure() ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required