#include <graphics_path.h>
Defines an object used to draw lines and curves. This class cannot be inherited.
Constructors  
graphics_path ()  
Initializes a new instance of the xtd::drawing::drawing2d::graphics_path class with a xtd::drawing::drawing2d::graphics_path::fill_mode value of xtd::drawing::drawing2d::fill_mode::alternate. More...  
graphics_path (xtd::drawing::drawing2d::fill_mode mode)  
Initializes a new instance of the xtd::drawing::drawing2d::graphics_path class with the specified xtd::drawing::drawing2d::fil_mode enumeration. More...  
Properties  
intptr_t  handle () const noexcept 
Gets the handle of the graphics path. More...  
xtd::drawing::drawing2d::fill_mode  fill_mode () const noexcept 
Gets a xtd::drawing::drawing2d::fill_mode enumeration that determines how the interiors of shapes in this xtd::drawing::drawing2d::graphics_path are filled. More...  
graphics_path &  fill_mode (xtd::drawing::drawing2d::fill_mode value) noexcept 
Sets a xtd::drawing::drawing2d::fill_mode enumeration that determines how the interiors of shapes in this xtd::drawing::drawing2d::graphics_path are filled. More...  
Methods  
void  add_arc (const xtd::drawing::rectangle &rect, float start_angle, float sweep_angle) 
Appends an elliptical arc to the current figure. More...  
void  add_arc (const xtd::drawing::rectangle_f &rect, float start_angle, float sweep_angle) 
Appends an elliptical arc to the current figure. More...  
void  add_arc (int32_t x, int32_t y, int32_t width, int32_t height, float start_angle, float sweep_angle) 
Appends an elliptical arc to the current figure. More...  
void  add_arc (float x, float y, float width, float height, float start_angle, float sweep_angle) 
Appends an elliptical arc to the current figure. More...  
void  add_bezier (const xtd::drawing::point &pt1, const xtd::drawing::point &pt2, const xtd::drawing::point &pt3, const xtd::drawing::point &pt4) 
Adds a cubic Bézier curve to the current figure. More...  
void  add_bezier (const xtd::drawing::point_f &pt1, const xtd::drawing::point_f &pt2, const xtd::drawing::point_f &pt3, const xtd::drawing::point_f &pt4) 
Adds a cubic Bézier curve to the current figure. More...  
void  add_bezier (int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t x3, int32_t y3, int32_t x4, int32_t y4) 
Adds a cubic Bézier curve to the current figure. More...  
void  add_bezier (float x1, float y1, float x2, float y2, float x3, float y3, float x4, float y4) 
Adds a cubic Bézier curve to the current figure. More...  
void  add_beziers (const std::vector< xtd::drawing::point > &points) 
Adds a sequence of connected cubic Bézier curves to the current figure. More...  
void  add_beziers (const std::vector< xtd::drawing::point_f > &points) 
Adds a sequence of connected cubic Bézier curves to the current figure. More...  
void  add_closed_curve (const std::vector< xtd::drawing::point > &points) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array. More...  
void  add_closed_curve (const std::vector< xtd::drawing::point_f > &points) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array. More...  
void  add_closed_curve (const std::vector< xtd::drawing::point > &points, float tension) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array. More...  
void  add_closed_curve (const std::vector< xtd::drawing::point_f > &points, float tension) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array. More...  
void  add_curve (const std::vector< xtd::drawing::point > &points) 
Adds a spline curve to the current figure. More...  
void  add_curve (const std::vector< xtd::drawing::point_f > &points) 
Adds a spline curve to the current figure. More...  
void  add_curve (const std::vector< xtd::drawing::point > &points, float tension) 
Adds a spline curve to the current figure. More...  
void  add_curve (const std::vector< xtd::drawing::point_f > &points, float tension) 
Adds a spline curve to the current figure. More...  
void  add_curve (const std::vector< xtd::drawing::point > &points, size_t offset, size_t number_of_segments, float tension) 
Adds a spline curve to the current figure. More...  
void  add_curve (const std::vector< xtd::drawing::point_f > &points, size_t offset, size_t number_of_segments, float tension) 
Adds a spline curve to the current figure. More...  
void  add_ellipse (const xtd::drawing::rectangle &rect) 
Adds an ellipse to the current path. More...  
void  add_ellipse (const xtd::drawing::rectangle_f &rect) 
Adds an ellipse to the current path. More...  
void  add_ellipse (int32_t x, int32_t y, int32_t width, int32_t height) 
Adds an ellipse to the current path. More...  
void  add_ellipse (float x, float y, float width, float height) 
Adds an ellipse to the current path. More...  
void  add_line (const xtd::drawing::point &pt1, const xtd::drawing::point &pt2) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path. More...  
void  add_line (const xtd::drawing::point_f &pt1, const xtd::drawing::point_f &pt2) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path. More...  
void  add_line (int32_t x1, int32_t y1, int32_t x2, int32_t y2) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path. More...  
void  add_line (float x1, float y1, float x2, float y2) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path. More...  
void  add_lines (const std::vector< xtd::drawing::point > &points) 
Appends a series of connected line segments to the end of this xtd::drawing::drawing2d::graphics_path. More...  
void  add_lines (const std::vector< xtd::drawing::point_f > &points) 
Appends a series of connected line segments to the end of this xtd::drawing::drawing2d::graphics_path. More...  
void  add_path (const graphics_path &adding_path, bool connect) 
Appends the specified xtd::drawing::drawing2d::graphics_path to this path. More...  
void  add_pie (const xtd::drawing::rectangle &rect, float start_angle, float sweep_angle) 
Adds the outline of a pie shape to this path. More...  
void  add_pie (const xtd::drawing::rectangle_f &rect, float start_angle, float sweep_angle) 
Adds the outline of a pie shape to this path. More...  
void  add_pie (int32_t x, int32_t y, int32_t width, int32_t height, float start_angle, float sweep_angle) 
Adds the outline of a pie shape to this path. More...  
void  add_pie (float x, float y, float width, float height, float start_angle, float sweep_angle) 
Adds the outline of a pie shape to this path. More...  
void  add_polygon (const std::vector< xtd::drawing::point > &points) 
Adds a polygon to this path. More...  
void  add_polygon (const std::vector< xtd::drawing::point_f > &points) 
Adds a polygon to this path. More...  
void  add_rectangle (const xtd::drawing::rectangle &rect) 
Adds a rectangle to this path. More...  
void  add_rectangle (const xtd::drawing::rectangle_f &rect) 
Adds a rectangle to this path. More...  
void  add_rectangle (int32_t x, int32_t y, int32_t width, int32_t height) 
Adds a rectangle to this path. More...  
void  add_rectangle (float x, float y, float width, float height) 
Adds a rectangle to this path. More...  
void  add_rectangles (const std::vector< xtd::drawing::rectangle > &rects) 
Adds a series of rectangles to this path. More...  
void  add_rectangles (const std::vector< xtd::drawing::rectangle_f > &rects) 
Adds a series of rectangles to this path. More...  
void  add_rounded_rectangle (const xtd::drawing::rectangle &rect, float radius) 
Adds a rounded rectangle to this path. More...  
void  add_rounded_rectangle (const xtd::drawing::rectangle_f &rect, float radius) 
Adds a rounded rectangle to this path. More...  
void  add_rounded_rectangle (int32_t x, int32_t y, int32_t width, int32_t height, float radius) 
Adds a rounded rectangle to this path. More...  
void  add_rounded_rectangle (float x, float y, float width, float height, float radius) 
Adds a rounded rectangle to this path. More...  
void  add_string (const xtd::ustring &s, const xtd::drawing::font_family &family, xtd::drawing::font_style style, float em_size, const xtd::drawing::point &origin, const xtd::drawing::string_format &format) 
Adds a text string to this path. More...  
void  add_string (const xtd::ustring &s, const xtd::drawing::font_family &family, xtd::drawing::font_style style, float em_size, const xtd::drawing::point_f &origin, const xtd::drawing::string_format &format) 
Adds a text string to this path. More...  
void  add_string (const xtd::ustring &s, const xtd::drawing::font_family &family, xtd::drawing::font_style style, float em_size, const xtd::drawing::rectangle &layout_rect, const xtd::drawing::string_format &format) 
Adds a text string to this path. More...  
void  add_string (const xtd::ustring &s, const xtd::drawing::font_family &family, xtd::drawing::font_style style, float em_size, const xtd::drawing::rectangle_f &layout_rect, const xtd::drawing::string_format &format) 
Adds a text string to this path. More...  
void  close_all_figures () 
Closes all open figures in this path and starts a new figure. It closes each open figure by connecting a line from its endpoint to its starting point. More...  
void  close_figure () 
Closes the current figure and starts a new figure. If the current figure contains a sequence of connected lines and curves, the method closes the loop by connecting a line from the endpoint to the starting point. More...  
void  flatten () 
Converts each curve in this path into a sequence of connected line segments. More...  
xtd::drawing::rectangle_f  get_bounds () const 
Returns a rectangle that bounds this xtd::drawing::drawing2d::graphics_path. More...  
xtd::drawing::point_f  get_lat_point () const 
Gets the last point of this xtd::drawing::drawing2d::graphics_path. More...  
bool  is_vsible (const xtd::drawing::point &point) const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path. More...  
bool  is_vsible (const xtd::drawing::point_f &point) const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path. More...  
bool  is_vsible (int32_t x, int32_t y) const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path. More...  
bool  is_vsible (float x, float y) const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path. More...  
void  reset () 
Empties the xtd::drawing::drawing2d::graphics_path::path_points and xtd::drawing::drawing2d::graphics_path::path_types arrays and sets the xtd::drawing::drawing2d::graphics_path::fill_mode to xtd::drawing::drawing2d::fill_mode::alternate. More...  
void  reverse () 
Reverses the order of points in the xtd::drawing::drawing2d::graphics_path::path_points array of this xtd::drawing::drawing2d::graphics_path. More...  
void  start_figure () 
Starts a new figure without closing the current figure. All subsequent points added to the path are added to this new figure. More...  
xtd::ustring  to_string () const noexcept override 
Returns a sxd::ustring that represents the current object. More...  
Additional Inherited Members  
Public Member Functions inherited from xtd::object  
object ()=default  
Create a new instance of the ultimate base class object. More...  
virtual bool  equals (const object &obj) const noexcept 
Determines whether the specified object is equal to the current object. More...  
virtual size_t  get_hash_code () const noexcept 
Serves as a hash function for a particular type. More...  
template<typename object_t >  
std::unique_ptr< object_t >  memberwise_clone () const 
Gets the type of the current instance. More...  
Static Public Member Functions inherited from xtd::object  
static bool  equals (const object &object_a, const object &object_b) noexcept 
Determines whether the specified object instances are considered equal. More...  
static bool  reference_equals (const object &object_a, const object &object_b) noexcept 
Determines whether the specified object instances are the same instance. More...  
xtd::drawing::drawing2d::graphics_path::graphics_path  (  ) 
Initializes a new instance of the xtd::drawing::drawing2d::graphics_path class with a xtd::drawing::drawing2d::graphics_path::fill_mode value of xtd::drawing::drawing2d::fill_mode::alternate.

explicit 
Initializes a new instance of the xtd::drawing::drawing2d::graphics_path class with the specified xtd::drawing::drawing2d::fil_mode enumeration.
mode  The xtd::drawing::drawing2d::fill_mode enumeration that determines how the interior of this xtd::drawing::drawing2d::graphics_path is filled. 
void xtd::drawing::drawing2d::graphics_path::add_arc  (  const xtd::drawing::rectangle &  rect, 
float  start_angle,  
float  sweep_angle  
) 
Appends an elliptical arc to the current figure.
rect  A xtd::drawing::rectangle that represents the rectangular bounds of the ellipse from which the arc is taken. 
start_angle  The starting angle of the arc, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the arc. 
void xtd::drawing::drawing2d::graphics_path::add_arc  (  const xtd::drawing::rectangle_f &  rect, 
float  start_angle,  
float  sweep_angle  
) 
Appends an elliptical arc to the current figure.
rect  A xtd::drawing::rectangle_f that represents the rectangular bounds of the ellipse from which the arc is taken. 
start_angle  The starting angle of the arc, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the arc. 
void xtd::drawing::drawing2d::graphics_path::add_arc  (  int32_t  x, 
int32_t  y,  
int32_t  width,  
int32_t  height,  
float  start_angle,  
float  sweep_angle  
) 
Appends an elliptical arc to the current figure.
x  The xcoordinate of the upperleft corner of the rectangular region that defines the ellipse from which the arc is drawn. 
y  The ycoordinate of the upperleft corner of the rectangular region that defines the ellipse from which the arc is drawn. 
width  The width of the rectangular region that defines the ellipse from which the arc is drawn. 
height  The height of the rectangular region that defines the ellipse from which the arc is drawn. 
start_angle  The starting angle of the arc, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the arc. 
void xtd::drawing::drawing2d::graphics_path::add_arc  (  float  x, 
float  y,  
float  width,  
float  height,  
float  start_angle,  
float  sweep_angle  
) 
Appends an elliptical arc to the current figure.
x  The xcoordinate of the upperleft corner of the rectangular region that defines the ellipse from which the arc is drawn. 
y  The ycoordinate of the upperleft corner of the rectangular region that defines the ellipse from which the arc is drawn. 
width  The width of the rectangular region that defines the ellipse from which the arc is drawn. 
height  The height of the rectangular region that defines the ellipse from which the arc is drawn. 
start_angle  The starting angle of the arc, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the arc. 
void xtd::drawing::drawing2d::graphics_path::add_bezier  (  const xtd::drawing::point &  pt1, 
const xtd::drawing::point &  pt2,  
const xtd::drawing::point &  pt3,  
const xtd::drawing::point &  pt4  
) 
Adds a cubic Bézier curve to the current figure.
pt1  A xtd::drawing::point that represents the starting point of the curve. 
pt2  A xtd::drawing::point that represents the first control point for the curve. 
pt3  A xtd::drawing::point that represents the second control point for the curve. 
pt4  A xtd::drawing::point that represents the endpoint of the curve. 
void xtd::drawing::drawing2d::graphics_path::add_bezier  (  const xtd::drawing::point_f &  pt1, 
const xtd::drawing::point_f &  pt2,  
const xtd::drawing::point_f &  pt3,  
const xtd::drawing::point_f &  pt4  
) 
Adds a cubic Bézier curve to the current figure.
pt1  A xtd::drawing::point_f that represents the starting point of the curve. 
pt2  A xtd::drawing::point_f that represents the first control point for the curve. 
pt3  A xtd::drawing::point_f that represents the second control point for the curve. 
pt4  A xtd::drawing::point_f that represents the endpoint of the curve. 
void xtd::drawing::drawing2d::graphics_path::add_bezier  (  int32_t  x1, 
int32_t  y1,  
int32_t  x2,  
int32_t  y2,  
int32_t  x3,  
int32_t  y3,  
int32_t  x4,  
int32_t  y4  
) 
Adds a cubic Bézier curve to the current figure.
x1  The xcoordinate of the starting point of the curve. 
y1  The ycoordinate of the starting point of the curve. 
x2  The xcoordinate of the first control point for the curve. 
y2  The ycoordinate of the first control point for the curve. 
x3  The xcoordinate of the second control point for the curve. 
y3  The ycoordinate of the second control point for the curve. 
x4  The xcoordinate of the endpoint of the curve. 
y4  The ycoordinate of the endpoint of the curve. 
void xtd::drawing::drawing2d::graphics_path::add_bezier  (  float  x1, 
float  y1,  
float  x2,  
float  y2,  
float  x3,  
float  y3,  
float  x4,  
float  y4  
) 
Adds a cubic Bézier curve to the current figure.
x1  The xcoordinate of the starting point of the curve. 
y1  The ycoordinate of the starting point of the curve. 
x2  The xcoordinate of the first control point for the curve. 
y2  The ycoordinate of the first control point for the curve. 
x3  The xcoordinate of the second control point for the curve. 
y3  The ycoordinate of the second control point for the curve. 
x4  The xcoordinate of the endpoint of the curve. 
y4  The ycoordinate of the endpoint of the curve. 
void xtd::drawing::drawing2d::graphics_path::add_beziers  (  const std::vector< xtd::drawing::point > &  points  ) 
Adds a sequence of connected cubic Bézier curves to the current figure.
points  An array of xtd::drawing::point structures that represents the points that define the curves. 
void xtd::drawing::drawing2d::graphics_path::add_beziers  (  const std::vector< xtd::drawing::point_f > &  points  ) 
Adds a sequence of connected cubic Bézier curves to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curves. 
void xtd::drawing::drawing2d::graphics_path::add_closed_curve  (  const std::vector< xtd::drawing::point > &  points  ) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
points  An array of xtd::drawing::point structures that represents the points that define the curve. 
void xtd::drawing::drawing2d::graphics_path::add_closed_curve  (  const std::vector< xtd::drawing::point_f > &  points  ) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
void xtd::drawing::drawing2d::graphics_path::add_closed_curve  (  const std::vector< xtd::drawing::point > &  points, 
float  tension  
) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
tension  A value between from 0 through 1 that specifies the amount that the curve bends between points, with 0 being the smallest curve (sharpest corner) and 1 being the smoothest curve. 
void xtd::drawing::drawing2d::graphics_path::add_closed_curve  (  const std::vector< xtd::drawing::point_f > &  points, 
float  tension  
) 
Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
tension  A value between from 0 through 1 that specifies the amount that the curve bends between points, with 0 being the smallest curve (sharpest corner) and 1 being the smoothest curve. 
void xtd::drawing::drawing2d::graphics_path::add_curve  (  const std::vector< xtd::drawing::point > &  points  ) 
Adds a spline curve to the current figure.
Adds a spline curve to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
void xtd::drawing::drawing2d::graphics_path::add_curve  (  const std::vector< xtd::drawing::point_f > &  points  ) 
Adds a spline curve to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
void xtd::drawing::drawing2d::graphics_path::add_curve  (  const std::vector< xtd::drawing::point > &  points, 
float  tension  
) 
Adds a spline curve to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
tension  A value that specifies the amount that the curve bends between control points. Values greater than 1 produce unpredictable results. 
void xtd::drawing::drawing2d::graphics_path::add_curve  (  const std::vector< xtd::drawing::point_f > &  points, 
float  tension  
) 
Adds a spline curve to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
tension  A value that specifies the amount that the curve bends between control points. Values greater than 1 produce unpredictable results. 
void xtd::drawing::drawing2d::graphics_path::add_curve  (  const std::vector< xtd::drawing::point > &  points, 
size_t  offset,  
size_t  number_of_segments,  
float  tension  
) 
Adds a spline curve to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
offset  he index of the element in the points array that is used as the first point in the curve. 
number_of_segments  The number of segments used to draw the curve. A segment can be thought of as a line connecting two points. 
tension  A value that specifies the amount that the curve bends between control points. Values greater than 1 produce unpredictable results. 
void xtd::drawing::drawing2d::graphics_path::add_curve  (  const std::vector< xtd::drawing::point_f > &  points, 
size_t  offset,  
size_t  number_of_segments,  
float  tension  
) 
Adds a spline curve to the current figure.
points  An array of xtd::drawing::point_f structures that represents the points that define the curve. 
offset  he index of the element in the points array that is used as the first point in the curve. 
number_of_segments  The number of segments used to draw the curve. A segment can be thought of as a line connecting two points. 
tension  A value that specifies the amount that the curve bends between control points. Values greater than 1 produce unpredictable results. 
void xtd::drawing::drawing2d::graphics_path::add_ellipse  (  const xtd::drawing::rectangle &  rect  ) 
Adds an ellipse to the current path.
rect  A xtd::drawing::rectangle that represents the bounding rectangle that defines the ellipse. 
void xtd::drawing::drawing2d::graphics_path::add_ellipse  (  const xtd::drawing::rectangle_f &  rect  ) 
Adds an ellipse to the current path.
rect  A xtd::drawing::rectangle_f that represents the bounding rectangle that defines the ellipse. 
void xtd::drawing::drawing2d::graphics_path::add_ellipse  (  int32_t  x, 
int32_t  y,  
int32_t  width,  
int32_t  height  
) 
Adds an ellipse to the current path.
x  The xcoordinate of the upperleft corner of the bounding rectangle that defines the ellipse. 
y  The ycoordinate of the upper left corner of the bounding rectangle that defines the ellipse. 
width  The width of the bounding rectangle that defines the ellipse. 
height  The height of the bounding rectangle that defines the ellipse. 
void xtd::drawing::drawing2d::graphics_path::add_ellipse  (  float  x, 
float  y,  
float  width,  
float  height  
) 
Adds an ellipse to the current path.
x  The xcoordinate of the upperleft corner of the bounding rectangle that defines the ellipse. 
y  The ycoordinate of the upper left corner of the bounding rectangle that defines the ellipse. 
width  The width of the bounding rectangle that defines the ellipse. 
height  The height of the bounding rectangle that defines the ellipse. 
void xtd::drawing::drawing2d::graphics_path::add_line  (  const xtd::drawing::point &  pt1, 
const xtd::drawing::point &  pt2  
) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path.
pt1  A xtd::drawing::point that represents the starting point of the line. 
pt2  A xtd::drawing::point that represents the endpoint of the line. 
void xtd::drawing::drawing2d::graphics_path::add_line  (  const xtd::drawing::point_f &  pt1, 
const xtd::drawing::point_f &  pt2  
) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path.
pt1  A xtd::drawing::point_f that represents the starting point of the line. 
pt2  A xtd::drawing::point_f that represents the endpoint of the line. 
void xtd::drawing::drawing2d::graphics_path::add_line  (  int32_t  x1, 
int32_t  y1,  
int32_t  x2,  
int32_t  y2  
) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path.
x1  The xcoordinate of the starting point of the line. 
y1  The ycoordinate of the starting point of the line. 
x2  The xcoordinate of the endpoint of the line. 
y2  The ycoordinate of the endpoint of the line. 
void xtd::drawing::drawing2d::graphics_path::add_line  (  float  x1, 
float  y1,  
float  x2,  
float  y2  
) 
Appends a line segment to this xtd::drawing::drawing2d::graphics_path.
x1  The xcoordinate of the starting point of the line. 
y1  The ycoordinate of the starting point of the line. 
x2  The xcoordinate of the endpoint of the line. 
y2  The ycoordinate of the endpoint of the line. 
void xtd::drawing::drawing2d::graphics_path::add_lines  (  const std::vector< xtd::drawing::point > &  points  ) 
Appends a series of connected line segments to the end of this xtd::drawing::drawing2d::graphics_path.
points  An array of xtd::drawing::point structures that represents the points that define the line segments to add. 
void xtd::drawing::drawing2d::graphics_path::add_lines  (  const std::vector< xtd::drawing::point_f > &  points  ) 
Appends a series of connected line segments to the end of this xtd::drawing::drawing2d::graphics_path.
points  An array of xtd::drawing::point_f structures that represents the points that define the line segments to add. 
void xtd::drawing::drawing2d::graphics_path::add_path  (  const graphics_path &  adding_path, 
bool  connect  
) 
Appends the specified xtd::drawing::drawing2d::graphics_path to this path.
adding_path  The xtd::drawing::drawing2d::graphics_path to add. 
connect  A bool value that specifies whether the first figure in the added path is part of the last figure in this path. A value of true specifies that (if possible) the first figure in the added path is part of the last figure in this path. A value of false specifies that the first figure in the added path is separate from the last figure in this path. 
void xtd::drawing::drawing2d::graphics_path::add_pie  (  const xtd::drawing::rectangle &  rect, 
float  start_angle,  
float  sweep_angle  
) 
Adds the outline of a pie shape to this path.
rect  A xtd::drawing::rectangle that represents the bounding rectangle that defines the ellipse from which the pie is drawn. 
start_angle  The starting angle for the pie section, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the pie section, measured in degrees clockwise from start_angle. 
void xtd::drawing::drawing2d::graphics_path::add_pie  (  const xtd::drawing::rectangle_f &  rect, 
float  start_angle,  
float  sweep_angle  
) 
Adds the outline of a pie shape to this path.
rect  A xtd::drawing::rectangle_f that represents the bounding rectangle that defines the ellipse from which the pie is drawn. 
start_angle  The starting angle for the pie section, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the pie section, measured in degrees clockwise from start_angle. 
void xtd::drawing::drawing2d::graphics_path::add_pie  (  int32_t  x, 
int32_t  y,  
int32_t  width,  
int32_t  height,  
float  start_angle,  
float  sweep_angle  
) 
Adds the outline of a pie shape to this path.
x  The xcoordinate of the upperleft corner of the bounding rectangle that defines the ellipse from which the pie is drawn. 
y  The ycoordinate of the upperleft corner of the bounding rectangle that defines the ellipse from which the pie is drawn. 
width  The width of the bounding rectangle that defines the ellipse from which the pie is drawn. 
height  The height of the bounding rectangle that defines the ellipse from which the pie is drawn. 
start_angle  The starting angle for the pie section, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the pie section, measured in degrees clockwise from start_angle. 
void xtd::drawing::drawing2d::graphics_path::add_pie  (  float  x, 
float  y,  
float  width,  
float  height,  
float  start_angle,  
float  sweep_angle  
) 
Adds the outline of a pie shape to this path.
x  The xcoordinate of the upperleft corner of the bounding rectangle that defines the ellipse from which the pie is drawn. 
y  The ycoordinate of the upperleft corner of the bounding rectangle that defines the ellipse from which the pie is drawn. 
width  The width of the bounding rectangle that defines the ellipse from which the pie is drawn. 
height  The height of the bounding rectangle that defines the ellipse from which the pie is drawn. 
start_angle  The starting angle for the pie section, measured in degrees clockwise from the xaxis. 
sweep_angle  The angle between start_angle and the end of the pie section, measured in degrees clockwise from start_angle. 
void xtd::drawing::drawing2d::graphics_path::add_polygon  (  const std::vector< xtd::drawing::point > &  points  ) 
Adds a polygon to this path.
points  An array of xtd::drawing::point structures that defines the polygon to add. 
void xtd::drawing::drawing2d::graphics_path::add_polygon  (  const std::vector< xtd::drawing::point_f > &  points  ) 
Adds a polygon to this path.
points  An array of xtd::drawing::point_f structures that defines the polygon to add. 
void xtd::drawing::drawing2d::graphics_path::add_rectangle  (  const xtd::drawing::rectangle &  rect  ) 
Adds a rectangle to this path.
rect  A xtd::drawing::rectangle that represents the rectangle to add. 
void xtd::drawing::drawing2d::graphics_path::add_rectangle  (  const xtd::drawing::rectangle_f &  rect  ) 
Adds a rectangle to this path.
rect  A xtd::drawing::rectangle_f that represents the rectangle to add. 
void xtd::drawing::drawing2d::graphics_path::add_rectangle  (  int32_t  x, 
int32_t  y,  
int32_t  width,  
int32_t  height  
) 
Adds a rectangle to this path.
x  The xcoordinate of the upperleft corner of the rectangle. 
y  The ycoordinate of the upper left corner of the rectangle. 
width  The width of the rectangle. 
height  The height of the rectangle. 
void xtd::drawing::drawing2d::graphics_path::add_rectangle  (  float  x, 
float  y,  
float  width,  
float  height  
) 
Adds a rectangle to this path.
x  The xcoordinate of the upperleft corner of the rectangle. 
y  The ycoordinate of the upper left corner of the rectangle. 
width  The width of the rectangle. 
height  The height of the rectangle. 
void xtd::drawing::drawing2d::graphics_path::add_rectangles  (  const std::vector< xtd::drawing::rectangle > &  rects  ) 
Adds a series of rectangles to this path.
rects  An array of xtd::drawing::rectangle structures that represents the rectangles to add. 
void xtd::drawing::drawing2d::graphics_path::add_rectangles  (  const std::vector< xtd::drawing::rectangle_f > &  rects  ) 
Adds a series of rectangles to this path.
rects  An array of xtd::drawing::rectangle_f structures that represents the rectangles to add. 
void xtd::drawing::drawing2d::graphics_path::add_rounded_rectangle  (  const xtd::drawing::rectangle &  rect, 
float  radius  
) 
Adds a rounded rectangle to this path.
rect  A xtd::drawing::rectangle that represents the rounded rectangle to add. 
radius  The radius of the rounded rectange angles. 
void xtd::drawing::drawing2d::graphics_path::add_rounded_rectangle  (  const xtd::drawing::rectangle_f &  rect, 
float  radius  
) 
Adds a rounded rectangle to this path.
rect  A xtd::drawing::rectangle that represents the rounded rectangle to add. 
radius  The radius of the rounded rectange angles. 
void xtd::drawing::drawing2d::graphics_path::add_rounded_rectangle  (  int32_t  x, 
int32_t  y,  
int32_t  width,  
int32_t  height,  
float  radius  
) 
Adds a rounded rectangle to this path.
x  The xcoordinate of the upperleft corner of the rounded rectangle. 
y  The ycoordinate of the upper left corner of the rounded rectangle. 
width  The width of the rounded rectangle. 
height  The height of the rounded rectangle. 
radius  The radius of the rounded rectange angles. 
void xtd::drawing::drawing2d::graphics_path::add_rounded_rectangle  (  float  x, 
float  y,  
float  width,  
float  height,  
float  radius  
) 
Adds a rounded rectangle to this path.
x  The xcoordinate of the upperleft corner of the rounded rectangle. 
y  The ycoordinate of the upper left corner of the rounded rectangle. 
width  The width of the rounded rectangle. 
height  The height of the rounded rectangle. 
radius  The radius of the rounded rectange angles. 
void xtd::drawing::drawing2d::graphics_path::add_string  (  const xtd::ustring &  s, 
const xtd::drawing::font_family &  family,  
xtd::drawing::font_style  style,  
float  em_size,  
const xtd::drawing::point &  origin,  
const xtd::drawing::string_format &  format  
) 
Adds a text string to this path.
s  The xtd::ustring to add. 
family  A xtd::drawing::font_family that represents the name of the font with which the test is drawn. 
em_size  The height of the em square box that bounds the character. 
origin  A xtd::drawing::point that represents the point where the text starts. 
format  A xtd::drawing::string_format that specifies text formatting information, such as line spacing and alignment. 
void xtd::drawing::drawing2d::graphics_path::add_string  (  const xtd::ustring &  s, 
const xtd::drawing::font_family &  family,  
xtd::drawing::font_style  style,  
float  em_size,  
const xtd::drawing::point_f &  origin,  
const xtd::drawing::string_format &  format  
) 
Adds a text string to this path.
s  The xtd::ustring to add. 
family  A xtd::drawing::font_family that represents the name of the font with which the test is drawn. 
em_size  The height of the em square box that bounds the character. 
origin  A xtd::drawing::point_f that represents the point where the text starts. 
format  A xtd::drawing::string_format that specifies text formatting information, such as line spacing and alignment. 
void xtd::drawing::drawing2d::graphics_path::add_string  (  const xtd::ustring &  s, 
const xtd::drawing::font_family &  family,  
xtd::drawing::font_style  style,  
float  em_size,  
const xtd::drawing::rectangle &  layout_rect,  
const xtd::drawing::string_format &  format  
) 
Adds a text string to this path.
s  The xtd::ustring to add. 
family  A xtd::drawing::font_family that represents the name of the font with which the test is drawn. 
em_size  The height of the em square box that bounds the character. 
layout_rect  A xtd::drawing::rectangle that represents the rectangle that bounds the text. 
format  A xtd::drawing::string_format that specifies text formatting information, such as line spacing and alignment. 
void xtd::drawing::drawing2d::graphics_path::add_string  (  const xtd::ustring &  s, 
const xtd::drawing::font_family &  family,  
xtd::drawing::font_style  style,  
float  em_size,  
const xtd::drawing::rectangle_f &  layout_rect,  
const xtd::drawing::string_format &  format  
) 
Adds a text string to this path.
s  The xtd::ustring to add. 
family  A xtd::drawing::font_family that represents the name of the font with which the test is drawn. 
em_size  The height of the em square box that bounds the character. 
layout_rect  A xtd::drawing::rectangle_f that represents the rectangle that bounds the text. 
format  A xtd::drawing::string_format that specifies text formatting information, such as line spacing and alignment. 
void xtd::drawing::drawing2d::graphics_path::close_all_figures  (  ) 
Closes all open figures in this path and starts a new figure. It closes each open figure by connecting a line from its endpoint to its starting point.
void xtd::drawing::drawing2d::graphics_path::close_figure  (  ) 
Closes the current figure and starts a new figure. If the current figure contains a sequence of connected lines and curves, the method closes the loop by connecting a line from the endpoint to the starting point.

noexcept 
Gets a xtd::drawing::drawing2d::fill_mode enumeration that determines how the interiors of shapes in this xtd::drawing::drawing2d::graphics_path are filled.

noexcept 
Sets a xtd::drawing::drawing2d::fill_mode enumeration that determines how the interiors of shapes in this xtd::drawing::drawing2d::graphics_path are filled.
value  A xtd::drawing::drawing2d::fill_mode enumeration that specifies how the interiors of shapes in this xtd::drawing::drawing2d::graphics_path are filled. 
void xtd::drawing::drawing2d::graphics_path::flatten  (  ) 
Converts each curve in this path into a sequence of connected line segments.
xtd::drawing::rectangle_f xtd::drawing::drawing2d::graphics_path::get_bounds  (  )  const 
Returns a rectangle that bounds this xtd::drawing::drawing2d::graphics_path.
xtd::drawing::point_f xtd::drawing::drawing2d::graphics_path::get_lat_point  (  )  const 
Gets the last point of this xtd::drawing::drawing2d::graphics_path.

noexcept 
Gets the handle of the graphics path.
bool xtd::drawing::drawing2d::graphics_path::is_vsible  (  const xtd::drawing::point &  point  )  const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path.
point  A xtd::drawing::point that represents the point to test. 
bool xtd::drawing::drawing2d::graphics_path::is_vsible  (  const xtd::drawing::point_f &  point  )  const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path.
point  A xtd::drawing::point_f that represents the point to test. 
bool xtd::drawing::drawing2d::graphics_path::is_vsible  (  int32_t  x, 
int32_t  y  
)  const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path.
x  The xcoordinate of the point to test. 
y  The ycoordinate of the point to test. 
bool xtd::drawing::drawing2d::graphics_path::is_vsible  (  float  x, 
float  y  
)  const 
Indicates whether the specified point is contained within this xtd::drawing::drawing2d::graphics_path.
x  The xcoordinate of the point to test. 
y  The ycoordinate of the point to test. 
void xtd::drawing::drawing2d::graphics_path::reset  (  ) 
Empties the xtd::drawing::drawing2d::graphics_path::path_points and xtd::drawing::drawing2d::graphics_path::path_types arrays and sets the xtd::drawing::drawing2d::graphics_path::fill_mode to xtd::drawing::drawing2d::fill_mode::alternate.
void xtd::drawing::drawing2d::graphics_path::reverse  (  ) 
Reverses the order of points in the xtd::drawing::drawing2d::graphics_path::path_points array of this xtd::drawing::drawing2d::graphics_path.
void xtd::drawing::drawing2d::graphics_path::start_figure  (  ) 
Starts a new figure without closing the current figure. All subsequent points added to the path are added to this new figure.

overridevirtualnoexcept 
Returns a sxd::ustring that represents the current object.
Reimplemented from xtd::object.