PNMPainter
-
class PNMPainter
This class provides a number of convenient methods for painting drawings directly into a
PNMImage.It stores a pointer to the
PNMImageyou pass it, but it does not take ownership of the object; you are responsible for ensuring that thePNMImagedoes not destruct during the lifetime of the PNMPainter object.Inheritance diagram
-
PNMPainter(PNMPainter const&) = default
The constructor stores a pointer to the
PNMImageyou pass it, but it does not take ownership of the object; you are responsible for ensuring that thePNMImagedoes not destruct during the lifetime of thePNMPainterobject.The xo, yo coordinates specify an optional offset for fill coordinates. If you are painting with a pattern fill, these specify the virtual coordinates of the upper-left corner of the image, which can allow you to adjust the pattern to line up with nested images, if necessary.
-
void draw_line(float xa, float ya, float xb, float yb)
Draws an antialiased line on the
PNMImage, using the current pen.
-
void draw_point(float x, float y)
Draws an antialiased point on the
PNMImage, using the current pen.
-
void draw_rectangle(float xa, float ya, float xb, float yb)
Draws a filled rectangule on the
PNMImage, using the current pen for the outline, and the current fill brush for the interior.The two coordinates specify any two diagonally opposite corners.
-
PNMBrush *get_fill(void) const
Returns the current fill brush. See
set_fill().
-
void set_fill(PNMBrush *fill)
Specifies a
PNMBrushthat will be used for filling in the interiors of objects. If the brush is a bitmap brush, its image will be tiled throughout the space.Unlike the
PNMImagepassed to the constructor, thePNMPainterwill take ownership of the fill brush. It is not necessary to keep a separate pointer to it.
-
void set_pen(PNMBrush *pen)
Specifies a
PNMBrushthat will be used for drawing lines and edges. If the brush is a bitmap brush, its image will be smeared pixelwise along the line.Unlike the
PNMImagepassed to the constructor, thePNMPainterwill take ownership of the pen. It is not necessary to keep a separate pointer to it.
-
PNMPainter(PNMPainter const&) = default
