Click or drag to resize
Ab4d.SharpEngine logo

BoundingFrustum Structure

Defines a frustum which can be used in frustum culling.
Inheritance Hierarchy
SystemObject
  SystemValueType
    Ab4d.SharpEngine.CommonBoundingFrustum

Namespace: Ab4d.SharpEngine.Common
Assembly: Ab4d.SharpEngine (in Ab4d.SharpEngine.dll) Version: 4.0.9584+ba1aaa26d4181dd3fa8ed7b6398391d1affa36c8
Syntax
C#
public struct BoundingFrustum : IEquatable<BoundingFrustum>

The BoundingFrustum type exposes the following members.

Constructors
 NameDescription
Public methodBoundingFrustum Creates a new instance of BoundingFrustum.
Top
Properties
 NameDescription
Public propertyBottom Gets the bottom plane of the BoundingFrustum.
Public propertyFar Gets the far plane of the BoundingFrustum.
Public propertyIsOrthographic Indicate whether the current BoundingFrustum is Orthographic.
Public propertyLeft Gets the left plane of the BoundingFrustum.
Public propertyMatrix Gets or sets the Matrix that describes this bounding frustum.
Public propertyNear Gets the near plane of the BoundingFrustum.
Public propertyRight Gets the right plane of the BoundingFrustum.
Public propertyTop Gets the top plane of the BoundingFrustum.
Top
Methods
 NameDescription
Public methodContains(BoundingBox) Determines the intersection relationship between the frustum and a bounding box.
Public methodContains(Vector3) Checks whether a point lay inside, intersects or lay outside the frustum.
Public methodEquals(BoundingFrustum) Determines whether the specified BoundingFrustum is equal to this instance.
Public methodEquals(Object) Determines whether the specified Object is equal to this instance.
(Overrides ValueTypeEquals(Object))
Public methodStatic memberFromCamera Creates a new frustum relaying on perspective camera parameters
Public methodGetCorners Returns the 8 corners of the frustum, element0 is Near1 (near right down corner) , element1 is Near2 (near right top corner) , element2 is Near3 (near Left top corner) , element3 is Near4 (near Left down corner) , element4 is Far1 (far right down corner) , element5 is Far2 (far right top corner) , element6 is Far3 (far left top corner) , element7 is Far4 (far left down corner)
Public methodGetCorners(Vector3) Returns the 8 corners of the frustum, element0 is Near1 (near right down corner) , element1 is Near2 (near right top corner) , element2 is Near3 (near Left top corner) , element3 is Near4 (near Left down corner) , element4 is Far1 (far right down corner) , element5 is Far2 (far right top corner) , element6 is Far3 (far left top corner) , element7 is Far4 (far left down corner)
Public methodGetHashCode
(Overrides ValueTypeGetHashCode)
Public methodGetHeightAtDepth Get the height of the frustum at specified depth.
Public methodGetPlane Returns one of the 6 planes related to this frustum.
Public methodGetWidthAtDepth Get the width of the frustum at specified depth.
Public methodGetZoomToExtentsShiftDistance(BoundingBox) Get the distance which when added to camera position along the lookat direction will do the effect of zoom to extents (zoom to fit) operation, so all the passed points will fit in the current view. if the returned value is positive, the camera will move toward the lookat direction (ZoomIn). if the returned value is negative, the camera will move in the reverse direction of the lookat direction (ZoomOut).
Public methodGetZoomToExtentsShiftDistance(Vector3) Get the distance which when added to camera position along the lookat direction will do the effect of zoom to extents (zoom to fit) operation, so all the passed points will fit in the current view. if the returned value is positive, the camera will move toward the lookat direction (ZoomIn). if the returned value is negative, the camera will move in the reverse direction of the lookat direction (ZoomOut).
Public methodGetZoomToExtentsShiftVector(BoundingBox) Get the vector shift which when added to camera position will do the effect of zoom to extents (zoom to fit) operation, so all the passed points will fit in the current view.
Public methodGetZoomToExtentsShiftVector(Vector3) Get the vector shift which when added to camera position will do the effect of zoom to extents (zoom to fit) operation, so all the passed points will fit in the current view.
Public methodIntersects(BoundingBox) Checks whether the current BoundingFrustum intersects a BoundingBox.
Public methodIntersects(Plane) Checks whether the current BoundingFrustum intersects the specified Plane.
Public methodIntersects(Ray) Checks whether the current BoundingFrustum intersects the specified Ray.
Public methodIntersects(Ray, NullableSingle, NullableSingle) Checks whether the current BoundingFrustum intersects the specified Ray.
Top
Operators
 NameDescription
Public operatorStatic memberEquality(BoundingFrustum, BoundingFrustum) Implements the operator ==.
Public operatorStatic memberInequality(BoundingFrustum, BoundingFrustum) Implements the operator !=.
Top
See Also