Module pattern
¶
This module contains the pattern.pattern
class, whichs allows the definition of
PostScript Tiling patterns (cf. Sect. 4.9 of the PostScript Language Reference
Manual) which may then be used to fill paths. In addition, a number of
predefined hatch patterns are included.
Class pattern
¶
The classes pattern.pattern
and canvas.canvas
differ only in their
constructor and in the absence of a writeEPSfile()
method in the former.
The pattern
constructor accepts the following keyword arguments:
keyword | description |
---|---|
painttype |
1 (default) for coloured patterns or
2 for uncoloured patterns |
tilingtype |
1 (default) for constant spacing tilings
(patterns are spaced constantly by a multiple
of a device pixel), 2 for undistorted
pattern cell, whereby the spacing may vary by
as much as one device pixel, or 3 for
constant spacing and faster tiling which
behaves as tiling type 1 but with
additional distortion allowed to permit a
more efficient implementation. |
xstep |
desired horizontal spacing between pattern
cells, use None (default) for automatic
calculation from pattern bounding box. |
ystep |
desired vertical spacing between pattern
cells, use None (default) for automatic
calculation from pattern bounding box. |
bbox |
bounding box of pattern. Use None for an
automatic determination of the bounding box
(including an enlargement by bboxenlarge
pts on each side.) |
trafo |
additional transformation applied to pattern
or None (default). This may be used to
rotate the pattern or to shift its phase (by
a translation). |
bboxenlarge |
enlargement when using the automatic bounding box determination; default is 5 pts. |
After you have created a pattern instance, you define the pattern shape by
drawing in it like in an ordinary canvas. To use the pattern, you simply pass
the pattern instance to a stroke()
, fill()
, draw()
or
set()
method of the canvas, just like you would do with a colour, etc.