Back to FabImage Library website
You are here: Start » Function Reference » Surface » Surface Spatial Transforms » ProjectSurfaceOntoPlane

ProjectSurfaceOntoPlane
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | Vision3DStandard |
Projects a surface on another plane, replacing Z coordinate of a point with its distance from a given plane.
Syntax
C++
C#
void fil::ProjectSurfaceOntoPlane ( const fil::Surface& inSurface, const fil::Plane3D& inPlane, const bool inUseAbsoluteDistance, const bool inPreserveOffsetsAndScales, fil::Surface& outSurface, ftl::Optional<fil::Matrix&> outTransform = ftl::NIL )
Parameters
Name | Type | Default | Description | |
---|---|---|---|---|
![]() |
inSurface | const Surface& | ||
![]() |
inPlane | const Plane3D& | ||
![]() |
inUseAbsoluteDistance | const bool | ||
![]() |
inPreserveOffsetsAndScales | const bool | True | Flag indicating whether to preserve input surface offsets and scales or to adjust them accordingly |
![]() |
outSurface | Surface& | ||
![]() |
outTransform | Optional<Matrix&> | NIL | Matrix of the transform used to compute the output surface; signed distance usage is assumed |
Optional Outputs
The computation of following outputs can be switched off by passing value ftl::NIL
to these parameters: outTransform.
Read more about Optional Outputs.
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 ProjectSurfaceOntoPlane. |