PolygonPixelRegion¶
- class regions.PolygonPixelRegion(vertices, meta=None, visual=None, origin=None)[source]¶
Bases:
PixelRegion
A polygon in pixel coordinates.
- Parameters:
- vertices
PixCoord
The vertices of the polygon.
- meta
RegionMeta
ordict
, optional A dictionary that stores the meta attributes of the region.
- visual
RegionVisual
ordict
, optional A dictionary that stores the visual meta attributes of the region.
- origin
PixCoord
, optional The origin for polynomial vertices. Using this keyword allows
vertices
to be specified relative to an origin pixel coordinate.
- vertices
Examples
from regions import PixCoord, PolygonPixelRegion import matplotlib.pyplot as plt fig, ax = plt.subplots(1, 1) x, y = [45, 45, 55, 60], [75, 70, 65, 75] vertices = PixCoord(x=x, y=y) reg = PolygonPixelRegion(vertices=vertices) patch = reg.plot(ax=ax, facecolor='none', edgecolor='red', lw=2, label='Polygon') ax.legend(handles=(patch,), loc='upper center') ax.set_xlim(30, 80) ax.set_ylim(50, 80) ax.set_aspect('equal')
(
Source code
,png
,hires.png
,pdf
,svg
)Attributes Summary
The exact analytical area of the region shape.
The minimal bounding box (in integer pixel coordinates) that contains the region.
The meta attributes as a
RegionMeta
The vertices of the polygon as a
PixCoord
array.The visual attributes as a
RegionVisual
.Methods Summary
as_artist
([origin])Return a matplotlib patch object for this region (
matplotlib.patches.Polygon
).contains
(pixcoord)Check whether a position or positions fall inside the region.
rotate
(center, angle)Rotate the region.
to_mask
([mode, subpixels])Return a mask for the region.
to_sky
(wcs)Return a region defined in sky coordinates.
Attributes Documentation
- area¶
- bounding_box¶
- meta¶
The meta attributes as a
RegionMeta
- visual¶
The visual attributes as a
RegionVisual
.
Methods Documentation
- as_artist(origin=(0, 0), **kwargs)[source]¶
Return a matplotlib patch object for this region (
matplotlib.patches.Polygon
).
- contains(pixcoord)[source]¶
Check whether a position or positions fall inside the region.
- Parameters:
- pixcoord
PixCoord
The position or positions to check.
- pixcoord
- rotate(center, angle)[source]¶
Rotate the region.
Positive
angle
corresponds to counter-clockwise rotation.- Parameters:
- Returns:
- region
PolygonPixelRegion
The rotated region (which is an independent copy).
- region
- to_mask(mode='center', subpixels=5)[source]¶
Return a mask for the region.
- Parameters:
- mode{‘center’, ‘exact’, ‘subpixels’}, optional
The method used to determine the overlap of the region on the pixel grid. Not all options are available for all region types. Note that the more precise methods are generally slower. The following methods are available:
'center'
: A pixel is considered to be entirely in or out of the region depending on whether its center is in or out of the region. The returned mask will contain values only of 0 (out) and 1 (in).'exact'
(default): The exact fractional overlap of the region and each pixel is calculated. The returned mask will contain values between 0 and 1.'subpixel'
: A pixel is divided into subpixels (see thesubpixels
keyword), each of which are considered to be entirely in or out of the region depending on whether its center is in or out of the region. Ifsubpixels=1
, this method is equivalent to'center'
. The returned mask will contain values between 0 and 1.
- subpixelsint, optional
For the
'subpixel'
mode, resample pixels by this factor in each dimension. That is, each pixel is divided intosubpixels ** 2
subpixels.
- Returns:
- mask
RegionMask
A mask for the region.
- mask