Back to Adaptive Vision Library Lite website

You are here: Start » Geometry 2D Basics » NormalizeRectangleOrientation

NormalizeRectangleOrientation


Changes orientation of the given rectangle according to parameters.

Syntax

void avl::NormalizeRectangleOrientation
(
	const avl::Rectangle2D& inRectangle,
	const atl::real inMinAngle,
	const avl::RectangleOrientation::Type inRectangleOrientation,
	avl::Rectangle2D& outRectangle
)

Parameters

Name Type Default Description
inRectangle const Rectangle2D& Input rectangle
inMinAngle const real -90.0f Lower bound of the output rectangle's angle
inRectangleOrientation const RectangleOrientation::Type Horizontal Orientation of the output rectangle
outRectangle Rectangle2D&

Description

The operation changes the input rectangle's marked corner so the output rectangle's rotation angle is the lowest possible not lower than inMinAngle satisfying the inRectangleOrientation parameter at the same time. Some sample parameters configurations are:
  • inMinAngle = 0, inRectangleOrientation = Any – the marked corner will have the least y coordinate possible
  • inMinAngle = -90, inRectangleOrientation = Any – the marked corner will have the least x coordinate possible
  • inRectangleOrientation = Horizontal – the output rectangle's width will be not shorter than its height
  • inRectangleOrientation = Vertical – the output rectangle's height will be not shorter than its width

Examples

NormalizeRectangleOrientation performed on a sample rectangle with inMinAngle = 0 and inRectangleOrientation = Any.