Back to Adaptive Vision Library website

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


Header: AVL.h
Namespace: avl
Module: FoundationBasic

Computes the longest segment connecting two pixels contained in region and its length.


void avl::RegionDiameter
	const avl::Region& inRegion,
	atl::Optional<avl::Segment2D&> outDiameter = atl::NIL,
	atl::Optional<float&> outDiameterLength = atl::NIL


Name Type Default Description
inRegion const Region& Input region
outDiameter Optional<Segment2D&> NIL
outDiameterLength Optional<float&> NIL

Optional Outputs

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

Read more about Optional Outputs.


The operation finds the most distant pair of region pixels and returns the distance between them (outDiameterLength) and the segment representing the diameter (outDiameter). If there is more than one pair of maximal distance, the returned segment will correspond to one of them. The orientation of the resulting outDiameter is always between 0 and 180 degrees.


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


The resulting outDiameterLength = 276.4815, outDiameter segment was drawn onto the region.


List of possible exceptions:

Error type Description
DomainError Empty region on input in RegionDiameter.

See Also

  • PathDiameter – Finds the longest segment connecting two characteristic points of a path.