Back to Aurora Vision Library website

You are here: Start » Function Reference » Surface » Surface Spatial Transforms » SplitSurfaceByPlane

SplitSurfaceByPlane


Header: AVL.h
Namespace: avl
Module: Vision3DStandard

Separates the surface points being on one side of the input plane from the others.

Syntax

C++
C#
 
void avl::SplitSurfaceByPlane
(
	const avl::Surface& inSurface,
	atl::Optional<const avl::Region&> inRoi,
	const avl::Plane3D& inPlane,
	bool inPreserveDimensions,
	avl::Surface& outSurface1,
	avl::Surface& outSurface2
)

Parameters

Name Type Default Description
Input value inSurface const Surface& Input surface
Input value inRoi Optional<const Region&> NIL Region of interest
Input value inPlane const Plane3D& Plane used for splitting
Input value inPreserveDimensions bool False Flag indicating whether the surface dimensions should be preserved or not
Output value outSurface1 Surface& Surface with points with positive signed distance to the input plane
Output value outSurface2 Surface& Surface with points with negative signed distance to the input plane

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

Errors

List of possible exceptions:

Error type Description
DomainError Indefinite plane on input in SplitSurfaceByPlane.
DomainError Region of interest exceeds an input surface in SplitSurfaceByPlane.