1pod::Prima::Region(3) User Contributed Perl Documentationpod::Prima::Region(3)
2
3
4
6 Prima::Region - generic shape for clipping and hit testing
7
9 $empty = Prima::Region->new;
10
11 $rect = Prima::Region->new( rect => [ 10, 10, 20, 20 ]);
12 $rect = Prima::Region->new( box => [ 10, 10, 10, 10 ]); # same
13
14 $poly = Prima::Region->new( polygon => [ 0, 0, 100, 0, 100, 100 ]);
15
16 $bits = Prima::Region->new( image => $image );
17
18 $drawable-> region( $rect );
19
20 my $rgn = $drawable->region;
21 $rgn->image->save('region.png') if $rgn;
22
24 Prima::Region is a descendant of Prima::Component. It serves a
25 representation of a generic shape, that can be applied to a drawable,
26 and checked whether points are within its boundaries.
27
29 new %OPTIONS
30 Creates new region object. Without options, the region is empty.
31 Following options can be used:
32
33 rect => [ X1, Y1, X2, Y2 ]
34 Create rectangular region with inclusive-inclusive coordinates.
35
36 box => [ X, Y, WIDTH, HEIGHT ]
37 Same as "rect" but using other semantics.
38
39 polygon => \@POINTS, fillMode = 0
40 Creates a polygon shape with vertices given in @POINTS, and
41 using an optional fillMode ( see "fillMode" in Drawable ).
42
43 image => IMAGE
44 Creates a region that mirrors 1-bits in the image. If no pixels
45 are set to 1, the region will be effecively empty.
46
47 bitmap with_offset => 0, type => dbt::Bitmap
48 Paints the region on a newly created bitmap and returns it. By
49 default, region offset is not included.
50
51 box Returns (X,Y,WIDTH,HEIGHT) bounding box, that encloses smallest
52 possible rectangle, or (0,0,0,0) if the region is empty.
53
54 combine REGION, OPERATION = rgnop::Copy
55 Applies one of the following set operation to the region:
56
57 rgnop::Copy
58 Makes a copy of the REGION
59
60 rgnop::Intersect
61 The resulting region is an interesection of the two regions.
62
63 rgnop::Union
64 The resulting region is a union of the two regions.
65
66 rgnop::Xor
67 Performs XOR operation on the two regions.
68
69 rgnop::Diff
70 The resulting region is a difference of the two regions.
71
72 dup Creates a duplicate region object
73
74 get_handle
75 Returns a system handle for the region
76
77 equals REGION
78 Returns true if the regions are equal, false otherwise.
79
80 image with_offset => 0, type => dbt::Bitmap
81 Paints the region on a newly created image and returns it. By
82 default, region offset is not included.
83
84 is_empty
85 Returns true if the region is empty, false otherwise.
86
87 offset DX, DY
88 Shifts the region vertically and/or horizontally
89
90 point_inside X, Y
91 Returns true if the (X,Y) point is inside the region
92
93 rect_inside X1,Y1,X2,Y2
94 Checks whether a rectangle given by inclusive-inclusive coordiates
95 is inside, outside, or partially covered by the region. Return
96 values are:
97
98 rgn::Inside
99 rgn::Outside
100 rgn::Partially
101
102 where "rgn::Outside" has value of 0.
103
105 Dmitry Karasik, <dmitry@karasik.eu.org>.
106
108 Prima, Prima::Drawable, Prima::Drawable::Path
109
110
111
112perl v5.32.1 2021-01-27 pod::Prima::Region(3)