.. wxPython Phoenix documentation
This file was generated by Phoenix's sphinx generator and associated
tools, do not edit by hand.
Copyright: (c) 2011-2018 by Total Control Software
License: wxWindows License
.. include:: headings.inc
.. _wx.GraphicsPath:
==========================================================================================================================================
|phoenix_title| **wx.GraphicsPath**
==========================================================================================================================================
A :ref:`wx.GraphicsPath` is a native representation of a geometric path.
The contents are specific and private to the respective renderer. Instances are reference counted and can therefore be assigned as usual. The only way to get a valid instance is by using :meth:`wx.GraphicsContext.CreatePath` or :meth:`wx.GraphicsRenderer.CreatePath` .
|
|class_hierarchy| Class Hierarchy
=================================
.. raw:: html

Inheritance diagram for class
GraphicsPath:
|
|method_summary| Methods Summary
================================
================================================================================ ================================================================================
:meth:`~wx.GraphicsPath.AddArc` Adds an arc of a circle.
:meth:`~wx.GraphicsPath.AddArcToPoint` Appends a an arc to two tangents connecting (current) to (`x1`,`y1`) and (`x1`,`y1`) to (`x2`,`y2`), also a straight line from (current) to (`x1`,`y1`).
:meth:`~wx.GraphicsPath.AddCircle` Appends a circle around (`x`,`y`) with radius `r` as a new closed subpath.
:meth:`~wx.GraphicsPath.AddCurveToPoint` Adds a cubic bezier curve from the current point, using two control points and an end point.
:meth:`~wx.GraphicsPath.AddEllipse` Appends an ellipse fitting into the passed in rectangle.
:meth:`~wx.GraphicsPath.AddLineToPoint` Adds a straight line from the current point to (`x`,`y`).
:meth:`~wx.GraphicsPath.AddPath` Adds another path.
:meth:`~wx.GraphicsPath.AddQuadCurveToPoint` Adds a quadratic bezier curve from the current point, using a control point and an end point.
:meth:`~wx.GraphicsPath.AddRectangle` Appends a rectangle as a new closed subpath.
:meth:`~wx.GraphicsPath.AddRoundedRectangle` Appends a rounded rectangle as a new closed subpath.
:meth:`~wx.GraphicsPath.CloseSubpath` Closes the current sub-path.
:meth:`~wx.GraphicsPath.Contains`
:meth:`~wx.GraphicsPath.GetBox` Gets the bounding box enclosing all points (possibly including control points).
:meth:`~wx.GraphicsPath.GetCurrentPoint` Gets the last point of the current path, (0,0) if not yet set.
:meth:`~wx.GraphicsPath.GetNativePath` Returns the native path (CGPathRef for Core Graphics, Path pointer for GDIPlus and a cairo_path_t pointer for cairo).
:meth:`~wx.GraphicsPath.MoveToPoint` Begins a new subpath at (`x`,`y`).
:meth:`~wx.GraphicsPath.Transform` Transforms each point of this path by the matrix.
:meth:`~wx.GraphicsPath.UnGetNativePath` Gives back the native path returned by :meth:`~GraphicsPath.GetNativePath` because there might be some deallocations necessary (e.g.
================================================================================ ================================================================================
|
|property_summary| Properties Summary
=====================================
================================================================================ ================================================================================
:attr:`~wx.GraphicsPath.Box` See :meth:`~wx.GraphicsPath.GetBox`
:attr:`~wx.GraphicsPath.CurrentPoint` See :meth:`~wx.GraphicsPath.GetCurrentPoint`
:attr:`~wx.GraphicsPath.NativePath` See :meth:`~wx.GraphicsPath.GetNativePath`
================================================================================ ================================================================================
|
|api| Class API
===============
.. class:: wx.GraphicsPath(GraphicsObject)
A GraphicsPath is a native representation of a geometric path.
.. method:: AddArc(self, *args, **kw)
Adds an arc of a circle.
The circle is defined by the coordinates of its centre (`x`, `y`) or `c` and its radius `r`. The arc goes from the starting angle `startAngle` to `endAngle` either clockwise or counter-clockwise depending on the value of `clockwise` argument.
The angles are measured in radians but, contrary to the usual mathematical convention, are always `clockwise` from the horizontal axis.
|overload| Overloaded Implementations:
**~~~**
**AddArc** `(self, x, y, r, startAngle, endAngle, clockwise)`
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
:param `r`:
:type `r`: wx.Double
:param `startAngle`:
:type `startAngle`: wx.Double
:param `endAngle`:
:type `endAngle`: wx.Double
:param `clockwise`:
:type `clockwise`: bool
**~~~**
**AddArc** `(self, c, r, startAngle, endAngle, clockwise)`
:param `c`:
:type `c`: wx.Point2D
:param `r`:
:type `r`: wx.Double
:param `startAngle`:
:type `startAngle`: wx.Double
:param `endAngle`:
:type `endAngle`: wx.Double
:param `clockwise`:
:type `clockwise`: bool
**~~~**
.. method:: AddArcToPoint(self, x1, y1, x2, y2, r)
Appends a an arc to two tangents connecting (current) to (`x1`,`y1`) and (`x1`,`y1`) to (`x2`,`y2`), also a straight line from (current) to (`x1`,`y1`).
:param `x1`:
:type `x1`: wx.Double
:param `y1`:
:type `y1`: wx.Double
:param `x2`:
:type `x2`: wx.Double
:param `y2`:
:type `y2`: wx.Double
:param `r`:
:type `r`: wx.Double
.. method:: AddCircle(self, x, y, r)
Appends a circle around (`x`,`y`) with radius `r` as a new closed subpath.
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
:param `r`:
:type `r`: wx.Double
.. method:: AddCurveToPoint(self, *args, **kw)
Adds a cubic bezier curve from the current point, using two control points and an end point.
|overload| Overloaded Implementations:
**~~~**
**AddCurveToPoint** `(self, cx1, cy1, cx2, cy2, x, y)`
:param `cx1`:
:type `cx1`: wx.Double
:param `cy1`:
:type `cy1`: wx.Double
:param `cx2`:
:type `cx2`: wx.Double
:param `cy2`:
:type `cy2`: wx.Double
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
**~~~**
**AddCurveToPoint** `(self, c1, c2, e)`
:param `c1`:
:type `c1`: wx.Point2D
:param `c2`:
:type `c2`: wx.Point2D
:param `e`:
:type `e`: wx.Point2D
**~~~**
.. method:: AddEllipse(self, x, y, w, h)
Appends an ellipse fitting into the passed in rectangle.
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
:param `w`:
:type `w`: wx.Double
:param `h`:
:type `h`: wx.Double
.. method:: AddLineToPoint(self, *args, **kw)
|overload| Overloaded Implementations:
**~~~**
**AddLineToPoint** `(self, x, y)`
Adds a straight line from the current point to (`x`,`y`).
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
**~~~**
**AddLineToPoint** `(self, p)`
Adds a straight line from the current point to `p`.
:param `p`:
:type `p`: wx.Point2D
**~~~**
.. method:: AddPath(self, path)
Adds another path.
:param `path`:
:type `path`: wx.GraphicsPath
.. method:: AddQuadCurveToPoint(self, cx, cy, x, y)
Adds a quadratic bezier curve from the current point, using a control point and an end point.
:param `cx`:
:type `cx`: wx.Double
:param `cy`:
:type `cy`: wx.Double
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
.. method:: AddRectangle(self, x, y, w, h)
Appends a rectangle as a new closed subpath.
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
:param `w`:
:type `w`: wx.Double
:param `h`:
:type `h`: wx.Double
.. method:: AddRoundedRectangle(self, x, y, w, h, radius)
Appends a rounded rectangle as a new closed subpath.
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
:param `w`:
:type `w`: wx.Double
:param `h`:
:type `h`: wx.Double
:param `radius`:
:type `radius`: wx.Double
.. method:: CloseSubpath(self)
Closes the current sub-path.
.. method:: Contains(self, *args, **kw)
:returns:
``True`` if the point is within the path.
|overload| Overloaded Implementations:
**~~~**
**Contains** `(self, c, fillStyle=ODDEVEN_RULE)`
:param `c`:
:type `c`: wx.Point2D
:param `fillStyle`:
:type `fillStyle`: wx.PolygonFillMode
:rtype: `bool`
**~~~**
**Contains** `(self, x, y, fillStyle=ODDEVEN_RULE)`
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
:param `fillStyle`:
:type `fillStyle`: wx.PolygonFillMode
:rtype: `bool`
**~~~**
.. method:: GetBox(self)
Gets the bounding box enclosing all points (possibly including control points).
:rtype: :ref:`wx.Rect2D`
.. method:: GetCurrentPoint(self)
Gets the last point of the current path, (0,0) if not yet set.
:rtype: :ref:`wx.Point2D`
.. method:: GetNativePath(self)
Returns the native path (CGPathRef for Core Graphics, Path pointer for GDIPlus and a cairo_path_t pointer for cairo).
.. method:: MoveToPoint(self, *args, **kw)
|overload| Overloaded Implementations:
**~~~**
**MoveToPoint** `(self, x, y)`
Begins a new subpath at (`x`,`y`).
:param `x`:
:type `x`: wx.Double
:param `y`:
:type `y`: wx.Double
**~~~**
**MoveToPoint** `(self, p)`
Begins a new subpath at `p`.
:param `p`:
:type `p`: wx.Point2D
**~~~**
.. method:: Transform(self, matrix)
Transforms each point of this path by the matrix.
:param `matrix`:
:type `matrix`: wx.GraphicsMatrix
.. method:: UnGetNativePath(self, p)
Gives back the native path returned by :meth:`GetNativePath` because there might be some deallocations necessary (e.g.
on cairo the native path returned by :meth:`GetNativePath` is newly allocated each time).
:param `p`:
.. attribute:: Box
See :meth:`~wx.GraphicsPath.GetBox`
.. attribute:: CurrentPoint
See :meth:`~wx.GraphicsPath.GetCurrentPoint`
.. attribute:: NativePath
See :meth:`~wx.GraphicsPath.GetNativePath`