// closes the current sub-path void wxGraphicsPath::CloseSubpath() { AllocExclusive(); GetPathData()->CloseSubpath(); }
// gets the last point of the current path, (0,0) if not yet set void wxGraphicsPath::GetCurrentPoint( wxDouble* x, wxDouble* y) const { GetPathData()->GetCurrentPoint(x,y); }
// adds a cubic Bezier curve from the current point, using two control points and an end point void wxGraphicsPath::AddCurveToPoint( wxDouble cx1, wxDouble cy1, wxDouble cx2, wxDouble cy2, wxDouble x, wxDouble y ) { AllocExclusive(); GetPathData()->AddCurveToPoint(cx1,cy1,cx2,cy2,x,y); }
// adds another path void wxGraphicsPath::AddPath( const wxGraphicsPath& path ) { AllocExclusive(); GetPathData()->AddPath(path.GetPathData()); }
bool wxGraphicsPath::Contains( wxDouble x, wxDouble y, wxPolygonFillMode fillStyle ) const { return GetPathData()->Contains(x,y,fillStyle); }
// adds a straight line from the current point to (x,y) void wxGraphicsPath::AddLineToPoint( wxDouble x, wxDouble y ) { AllocExclusive(); GetPathData()->AddLineToPoint(x,y); }
// transforms each point of this path by the matrix void wxGraphicsPath::Transform( const wxGraphicsMatrix& matrix ) { AllocExclusive(); GetPathData()->Transform(matrix.GetMatrixData()); }
// appends an ellipsis as a new closed subpath fitting the passed rectangle void wxGraphicsPath::AddCircle( wxDouble x, wxDouble y, wxDouble r ) { AllocExclusive(); GetPathData()->AddCircle(x,y,r); }
// returns the native path void * wxGraphicsPath::GetNativePath() const { return GetPathData()->GetNativePath(); }
// give the native path returned by GetNativePath() back (there might be some deallocations necessary) void wxGraphicsPath::UnGetNativePath(void *p)const { GetPathData()->UnGetNativePath(p); }
// appends a rounded rectangle void wxGraphicsPath::AddRoundedRectangle( wxDouble x, wxDouble y, wxDouble w, wxDouble h, wxDouble radius) { AllocExclusive(); GetPathData()->AddRoundedRectangle(x,y,w,h,radius); }
// appends an ellipse void wxGraphicsPath::AddEllipse( wxDouble x, wxDouble y, wxDouble w, wxDouble h) { AllocExclusive(); GetPathData()->AddEllipse(x,y,w,h); }
// 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) void wxGraphicsPath::AddArcToPoint( wxDouble x1, wxDouble y1 , wxDouble x2, wxDouble y2, wxDouble r ) { GetPathData()->AddArcToPoint(x1,y1,x2,y2,r); }
// adds an arc of a circle centering at (x,y) with radius (r) from startAngle to endAngle void wxGraphicsPath::AddArc( wxDouble x, wxDouble y, wxDouble r, wxDouble startAngle, wxDouble endAngle, bool clockwise ) { AllocExclusive(); GetPathData()->AddArc(x,y,r,startAngle,endAngle,clockwise); }
// gets the bounding box enclosing all points (possibly including control points) void wxGraphicsPath::GetBox(wxDouble *x, wxDouble *y, wxDouble *w, wxDouble *h) const { GetPathData()->GetBox(x,y,w,h); }
// adds a quadratic Bezier curve from the current point, using a control point and an end point void wxGraphicsPath::AddQuadCurveToPoint( wxDouble cx, wxDouble cy, wxDouble x, wxDouble y ) { AllocExclusive(); GetPathData()->AddQuadCurveToPoint(cx,cy,x,y); }
bool wxGraphicsPath::Contains( wxDouble x, wxDouble y, int fillStyle ) const { return GetPathData()->Contains(x,y,fillStyle); }