API reference
API reference
Select your platform
No SDKs available
No versions available

ClippedPlaneSurface Class

Extends MonoBehaviour, IClippedSurface< IBoundsClipper >
The primary flat surface used by the Interaction SDK, this is an ISurface constructed by "clipping" a PlaneSurface down to a subsection of itself using one or more IBoundsClippers.
ClippedPlaneSurfaces apply the logical AND of all their contained IBoundsClippers to the underlying PlaneSurface. Because IBoundsClippers are axis-aligned in the space of the plane being clipped, this means all ClippedPlaneSurfaces will be rectangular subsections of the XY plane of the transform of the PlaneSurface they clip. They are not necessarily centered on this transform, however.

Properties

List< IBoundsClipper > Clippers[Get]

Fields

Implementation of ISurfacePatch.BackingSurface; for details, please refer to the related documentation provided for that property.
Implementation of ISurface.Transform; for details, please refer to the related documentation provided for that property.

Member Functions

Implementation of IClippedSurface<TClipper>.GetClippers; for details, please refer to the related documentation provided for that property.
Clip a provided Bounds using the ClippedPlaneSurface's IBoundsClippers.
Comparable to applying the logical AND of the input bounds with all the clippers returned by GetClippers.
Parameters
bounds
The Bounds to clip
clipped
The clipped result
Returns
True if resulting bounds are contain any space, false if the clipped bounds have no volume
Implementation of ISurface.ClosestSurfacePoint(in Vector3, out SurfaceHit, float); for details, please refer to the related documentation provided for that property.
Implementation of ISurface.Raycast(in Ray, out SurfaceHit, float); for details, please refer to the related documentation provided for that property.
Injects all required dependencies for a dynamically instantiated ClippedPlaneSurface; effectively wraps InjectPlaneSurface(PlaneSurface) and InjectClippers(IEnumerable<IBoundsClipper>).
This method exists to support Interaction SDK's dependency injection pattern and is not needed for typical Unity Editor-based usage.
Sets the underlying PlaneSurface for a dynamically instantiated ClippedPlaneSurface.
This method exists to support Interaction SDK's dependency injection pattern and is not needed for typical Unity Editor-based usage.
Sets the IBoundsClippers for a dynamically instantiated ClippedPlaneSurface.
This method exists to support Interaction SDK's dependency injection pattern and is not needed for typical Unity Editor-based usage.

Protected Functions

virtual void Awake ( )
virtual void Start ( )
Did you find this page helpful?