Back to Aurora Vision Library website

You are here: Start » Function Reference » Region » Region Features » RegionBoundingRectangle

RegionBoundingRectangle


Header: AVL.h
Namespace: avl
Module: FoundationBasic

Computes the smallest rectangle containing a region.

Syntax

C++
C#
 
void avl::RegionBoundingRectangle
(
	const avl::Region& inRegion,
	avl::BoundingRectangleFeature::Type inBoundingRectangleFeature,
	float inReferenceAngle,
	avl::RectangleOrientation::Type inRectangleOrientation,
	avl::Rectangle2D& outBoundingRectangle,
	atl::Optional<avl::Point2D&> outCenter = atl::NIL,
	atl::Optional<float&> outLongSide = atl::NIL,
	atl::Optional<float&> outShortSide = atl::NIL
)

Parameters

Name Type Default Description
Input value inRegion const Region& Input region
Input value inBoundingRectangleFeature BoundingRectangleFeature::Type MinimalArea Determines what kind of bounding rectangle will be computed
Input value inReferenceAngle float 0.0f The middle angle of the valid range of the output rectangle's angle
Input value inRectangleOrientation RectangleOrientation::Type Horizontal Orientation of the output rectangle
Output value outBoundingRectangle Rectangle2D& The smallest bounding rectangle of the input region
Output value outCenter Optional<Point2D&> NIL Center of the bounding rectangle
Output value outLongSide Optional<float&> NIL Length of the bounding rectangle long side
Output value outShortSide Optional<float&> NIL Length of the bounding rectangle short side

Optional Outputs

The computation of following outputs can be switched off by passing value atl::NIL to these parameters: outCenter, outLongSide, outShortSide.

Read more about Optional Outputs.

Description

The filter computes a rectangle with the smallest possible selected feature that contains all pixels belonging to the input region. The angle of the resulting rectangle is then normalized as in the NormalizeRectangleOrientation filter.

Hints

  • If the input region is not guaranteed to be non-empty, precede this filter with SkipEmptyRegion.

Examples

RegionBoundingRectangle performed on a sample region with inRectangleOrientation set on Vertical.

Errors

List of possible exceptions:

Error type Description
DomainError Empty region on input in RegionBoundingRectangle.

See Also