Back to Aurora Vision Library website

You are here: Start » Function Reference » Surface » Surface Features » SurfaceFlatness

SurfaceFlatness


Header: AVL.h
Namespace: avl
Module: Vision3DStandard

Computes the surface flatness i.e. how thick the surface is according to the input plane.

Syntax

C++
C#
 
void avl::SurfaceFlatness
(
	const avl::Surface& inSurface,
	atl::Optional<const avl::Region&> inRoi,
	const avl::Plane3D& inPlane,
	avl::Point3D& outMaximumPoint1,
	avl::Point3D& outMaximumPoint2,
	float& outMaximumDistance1,
	float& outMaximumDistance2,
	float& outFlatness
)

Parameters

Name Type Default Description
Input value inSurface const Surface& Input surface
Input value inRoi Optional<const Region&> NIL Range of pixels to be processed
Input value inPlane const Plane3D& Input plane
Output value outMaximumPoint1 Point3D& Surface point with the largest distance on one side of the plane
Output value outMaximumPoint2 Point3D& Surface point with the largest distance on the other side of the plane
Output value outMaximumDistance1 float& Distance of the first maximum point from the input plane
Output value outMaximumDistance2 float& Distance of the second maximum point from the input plane
Output value outFlatness float& Difference between two extremal distances of surface points from the input plane

Errors

List of possible exceptions:

Error type Description
DomainError No points available to compute surface flatness in SurfaceFlatness.
DomainError Region of interest exceeds an input surface in SurfaceFlatness.