locan.data.region.Rectangle#
- class locan.data.region.Rectangle(corner=(0, 0), width=1, height=1, angle=0)[source]#
Bases:
Region2D
Region class to define a rectangle.
- Parameters:
corner (npt.ArrayLike) – A point that defines the lower left corner with shape (2,).
width (float) – The length of a vector describing the edge in x-direction.
height (float) – The length of a vector describing the edge in y-direction.
angle (float) – The angle (in degrees) by which the rectangle is rotated counterclockwise around the corner point.
Methods
__init__
([corner, width, height, angle])as_artist
([origin])Matplotlib 2D patch object for this region (e.g. matplotlib.patches.Ellipse).
buffer
(distance, **kwargs)Extend the region perpendicular by a distance.
contains
(points)Return list of indices for all points that are inside the region of interest.
from_intervals
(intervals)Constructor for instantiating Region from list of (min, max) bounds.
from_shapely
(shapely_object)Constructor for instantiating Region from shapely object.
intersection
(other)Returns a region representing the intersection of this region with
other
.plot
([ax])Provide plot of region as
matplotlib.axes.Axes
object.symmetric_difference
(other)Returns the union of the two regions minus any areas contained in the intersection of the two regions.
union
(other)Returns a region representing the union of this region with
other
.Attributes
The angle (in degrees) by which the rectangle is rotated counterclockwise around the corner point.
bounding_box
A region describing the minimum axis-aligned bounding box that encloses the original region.
bounds
Region bounds min_x, min_y, ..., max_x, max_y, .
Point coordinates for region centroid.
A point that defines the lower left corner.
dimension
The region dimension.
extent
The extent (max_x - min_x), (max_y - min_y), .
The length of a vector describing the edge in y-direction.
Provide bounds in a tuple (min, max) arrangement.
The maximum distance between any two points within the region.
Point coordinates.
Region measure, i.e. area (for 2d) or volume (for 3d).
Legacy interface to serve legacy RoiRegion.
Geometric object as defined in shapely.
Measure of the sub-dimensional region, i.e. circumference (for 2d) or surface (for 3d).
The length of a vector describing the edge in x-direction.
- property angle: float#
The angle (in degrees) by which the rectangle is rotated counterclockwise around the corner point.
- Return type:
float
- as_artist(origin=(0, 0), **kwargs)[source]#
Matplotlib 2D patch object for this region (e.g. matplotlib.patches.Ellipse).
- Parameters:
origin (
Union
[_SupportsArray
[dtype
[Any
]],_NestedSequence
[_SupportsArray
[dtype
[Any
]]],bool
,int
,float
,complex
,str
,bytes
,_NestedSequence
[Union
[bool
,int
,float
,complex
,str
,bytes
]]]) – The (x, y) pixel position of the origin of the displayed image. Default is (0, 0).kwargs (
Any
) – Other parameters passed to the matplotlib.patches object.
- Returns:
Matplotlib patch for the specified region.
- Return type:
matplotlib.patches.Patch
- property centroid: ndarray[Any, dtype[float64]]#
Point coordinates for region centroid.
- Returns:
of shape (dimension,)
- Return type:
npt.NDArray[np.float64] | None
- contains(points)[source]#
Return list of indices for all points that are inside the region of interest.
- Parameters:
points (
Union
[_SupportsArray
[dtype
[Any
]],_NestedSequence
[_SupportsArray
[dtype
[Any
]]],bool
,int
,float
,complex
,str
,bytes
,_NestedSequence
[Union
[bool
,int
,float
,complex
,str
,bytes
]]]) – Coordinates of points that are tested for being inside the specified region.- Returns:
Array with indices for all points in original point array that are within the region.
- Return type:
npt.NDArray[np.int64]
- property corner: ndarray[Any, dtype[float64]]#
A point that defines the lower left corner.
- Returns:
with shape (2,)
- Return type:
npt.NDArray[np.float64]
- classmethod from_intervals(intervals)[source]#
Constructor for instantiating Region from list of (min, max) bounds.
- Parameters:
intervals (
Union
[_SupportsArray
[dtype
[Any
]],_NestedSequence
[_SupportsArray
[dtype
[Any
]]],bool
,int
,float
,complex
,str
,bytes
,_NestedSequence
[Union
[bool
,int
,float
,complex
,str
,bytes
]]]) – The region bounds for each dimension of shape (2, 2)- Return type:
cls
- property height: float#
The length of a vector describing the edge in y-direction.
- Return type:
float
- property intervals: ndarray[Any, dtype[float64]]#
Provide bounds in a tuple (min, max) arrangement.
- Returns:
((min_x, max_x), …) of shape(dimension, 2)
- Return type:
npt.NDArray[np.float64]
- property max_distance: float#
The maximum distance between any two points within the region.
- Return type:
float
- property points: ndarray[Any, dtype[float64]]#
Point coordinates.
- Returns:
of shape (n_points, dimension)
- Return type:
npt.NDArray[np.float64] | list[npt.NDArray[np.float64]]
- property region_measure: float#
Region measure, i.e. area (for 2d) or volume (for 3d).
- Return type:
float
- property region_specs#
Legacy interface to serve legacy RoiRegion.
Warning
Do not use - will be deprecated.
- Return type:
dict
- property shapely_object: Polygon#
Geometric object as defined in shapely.
- Return type:
Shapely object
- property subregion_measure: float#
Measure of the sub-dimensional region, i.e. circumference (for 2d) or surface (for 3d).
- Return type:
float
- property width: float#
The length of a vector describing the edge in x-direction.
- Return type:
float