\membersection{wxDC::DrawPolyPolygon}\label{wxdcdrawpolypolygon}
-\func{void}{DrawPolyPolygon}{\param{int }{n}, \param{int }{start[]}, \param{wxPoint }{points[]}, \param{wxCoord }{xoffset}, \param{wxCoord }{yoffset}, \param{int }{fillStyle = \texttt{wxODDEVEN\_RULE}}}
+\func{void}{DrawPolyPolygon}{\param{int}{ n}, \param{int}{ count[]}, \param{wxPoint}{ points[]}, \param{wxCoord}{ xoffset = 0}, \param{wxCoord}{ yoffset = 0},\\
+ \param{int }{fill\_style = wxODDEVEN\_RULE}}
+
+Draws two or more filled polygons using an array of {\it points}, adding the
+optional offset coordinates.
+
+Notice that for the platforms providing a native implementation
+of this function (Windows and PostScript-based wxDC currently), this is more
+efficient than using \helpref{DrawPolygon}{wxdcdrawpolygon} in a loop.
+
+{\it n} specifies the number of polygons to draw, the array {\it count} of size
+{\it n} specifies the number of points in each of the polygons in the
+{\it points} array.
+
+The last argument specifies the fill rule: {\bf wxODDEVEN\_RULE} (the default)
+or {\bf wxWINDING\_RULE}.
+
+The current pen is used for drawing the outline, and the current brush for
+filling the shape. Using a transparent brush suppresses filling.
+
+The polygons maybe disjoint or overlapping. Each polygon specified in a call to
+{\bf DrawPolyPolygon} must be closed. Unlike polygons created by the
+\helpref{DrawPolygon}{wxdcdrawpolygon} member function, the polygons created by
+{\bf DrawPolyPolygon} are not closed automatically.
+
+\pythonnote{Not implemented yet}
-Draw many polygons at once. For the platforms providing a native implementation
-of this function (Windows and PostScript-based wxDC), this is more efficient
-than using \helpref{DrawPolygon}{wxdcdrawpolygon} in a loop.
+\perlnote{Not implemented yet}
\membersection{wxDC::DrawPoint}\label{wxdcdrawpoint}
_T("hatched"), 10, 10);
dc.DrawText(_T("except for the central region and the right ")
_T("one entirely hatched"), 10, 30);
-
- dc.DrawPolygon(WXSIZEOF(star), star);
- dc.DrawPolygon(WXSIZEOF(star), star, 160, 0, wxWINDING_RULE);
+ dc.DrawText(_T("The third star only has a hatched outline"), 10, 50);
+
+ dc.DrawPolygon(WXSIZEOF(star), star, 0, 30);
+ dc.DrawPolygon(WXSIZEOF(star), star, 160, 30, wxWINDING_RULE);
+
+ wxPoint star2[10];
+ star2[0] = wxPoint(0, 100);
+ star2[1] = wxPoint(-59, -81);
+ star2[2] = wxPoint(95, 31);
+ star2[3] = wxPoint(-95, 31);
+ star2[4] = wxPoint(59, -81);
+ star2[5] = wxPoint(0, 80);
+ star2[6] = wxPoint(-47, -64);
+ star2[7] = wxPoint(76, 24);
+ star2[8] = wxPoint(-76, 24);
+ star2[9] = wxPoint(47, -64);
+ int count[2] = {5, 5};
+
+ dc.DrawPolyPolygon(WXSIZEOF(count), count, star2, 450, 150);
}
void MyCanvas::DrawTestLines( int x, int y, int width, wxDC &dc )