Click or drag to resize
DigitalRunePerspectiveViewVolume Class
Represents a perspective view volume (frustum).
Inheritance Hierarchy

Namespace: DigitalRune.Geometry.Shapes
Assembly: DigitalRune.Geometry (in DigitalRune.Geometry.dll) Version: 1.18.0.0 (1.18.2.14427)
Syntax
[SerializableAttribute]
public class PerspectiveViewVolume : ViewVolume

The PerspectiveViewVolume type exposes the following members.

Constructors
  NameDescription
Public methodPerspectiveViewVolume
Initializes a new instance of the PerspectiveViewVolume class using default settings.
Public methodPerspectiveViewVolume(Single, Single, Single, Single)
Initializes a new instance of the PerspectiveViewVolume class with the given field of view and depth.
Top
Methods
  NameDescription
Public methodClone
Creates a new Shape that is a clone (deep copy) of the current instance.
(Inherited from Shape.)
Protected methodCloneCore
Makes the instance a clone (deep copy) of the specified Shape.
(Overrides ShapeCloneCore(Shape).)
Protected methodCreateInstanceCore
When implemented in a derived class, creates a new instance of the Shape derived class.
(Overrides ShapeCreateInstanceCore.)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetAabb
Computes the axis-aligned bounding box (AABB) for this shape in local space.
(Inherited from Shape.)
Public methodGetAabb(Pose)
Computes the axis-aligned bounding box (AABB) for this shape positioned in world space using the given Pose.
(Inherited from Shape.)
Public methodGetAabb(Vector3F, Pose)
Computes the axis-aligned bounding box (AABB) for this shape positioned in world space using the given scale and Pose.
(Inherited from ConvexShape.)
Public methodStatic memberGetExtent
Gets the extent of the frustum at the given distance.
Public methodStatic memberGetFieldOfView
Gets the field of view from a frustum with the given extent.
Public methodStatic memberGetFieldOfViewX
Converts the vertical field of view of a symmetric frustum to a horizontal field of view.
Public methodStatic memberGetFieldOfViewY
Converts a horizontal field of view of a symmetric frustum to a vertical field of view.
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetMesh
Gets a mesh that represents this shape.
(Inherited from Shape.)
Public methodGetSupportPoint(Vector3F)
Gets a support point for a given direction.
(Overrides ConvexShapeGetSupportPoint(Vector3F).)
Public methodGetSupportPoint(Vector3F, Vector3F)
Gets a support point for a given direction and a given non-uniform scaling.
(Inherited from ConvexShape.)
Public methodGetSupportPointNormalized
Gets a support point for a given normalized direction vector.
(Overrides ConvexShapeGetSupportPointNormalized(Vector3F).)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetVolume
Gets the volume of this shape.
Public methodGetVolume(Single, Int32)
Gets the volume of this shape.
(Overrides ShapeGetVolume(Single, Int32).)
Public methodStatic memberGetWidthAndHeight
Converts a field of view of a symmetric frustum to width and height.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnChanged
Raises the Changed event.
(Inherited from Shape.)
Protected methodOnGetMesh
Called when a mesh should be generated for the shape.
(Overrides ConvexShapeOnGetMesh(Single, Int32).)
Public methodSet(Single, Single, Single, Single)
Sets the dimensions of the view volume.
(Inherited from ViewVolume.)
Public methodSet(Single, Single, Single, Single, Single, Single)
Sets the dimensions of the view volume (including depths).
(Inherited from ViewVolume.)
Public methodSetFieldOfView(Single, Single)
Sets the dimensions of the frustum to the specified field of view.
Public methodSetFieldOfView(Single, Single, Single, Single)
Sets the dimensions of the frustum to the specified field of view and near/far values.
Public methodSetWidthAndHeight(Single, Single)
Sets the width and height of the view volume to the specified size.
(Inherited from ViewVolume.)
Public methodSetWidthAndHeight(Single, Single, Single, Single)
Sets the width and height of the view volume to the specified size and depth.
(Inherited from ViewVolume.)
Public methodToString
Returns a String that represents the current Object.
(Overrides ObjectToString.)
Protected methodUpdate
Updates the shape.
(Overrides ViewVolumeUpdate.)
Top
Properties
  NameDescription
Public propertyAspectRatio
Gets the aspect ratio (width / height).
(Inherited from ViewVolume.)
Public propertyBottom
Gets or sets the minimum y-value of the view volume at the near clip plane.
(Inherited from ViewVolume.)
Public propertyDepth
Gets the depth of the view volume (= Far - Near).
(Inherited from ViewVolume.)
Public propertyFar
Gets or sets the distance to the far clip plane.
(Inherited from ViewVolume.)
Public propertyFieldOfViewX
Gets the horizontal field of view.
(Overrides ViewVolumeFieldOfViewX.)
Public propertyFieldOfViewY
Gets the vertical field of view.
(Overrides ViewVolumeFieldOfViewY.)
Public propertyHeight
Gets the height of the view volume at the near clip plane.
(Inherited from ViewVolume.)
Public propertyInnerPoint
Gets an inner point.
(Overrides ShapeInnerPoint.)
Public propertyLeft
Gets or sets the minimum x-value of the view volume at the near clip plane.
(Inherited from ViewVolume.)
Public propertyNear
Gets or sets the distance to the near clip plane.
(Inherited from ViewVolume.)
Public propertyRight
Gets or sets the maximum x-value of the view volume at the near clip plane.
(Inherited from ViewVolume.)
Public propertyTop
Gets or sets the maximum y-value of the view volume at the near clip plane.
(Inherited from ViewVolume.)
Public propertyWidth
Gets the width of the view volume at the near clip plane.
(Inherited from ViewVolume.)
Top
Events
  NameDescription
Public eventChanged
Occurs when the shape was changed.
(Inherited from Shape.)
Top
Remarks

A perspective view volume is a frustum. A frustum is a portion of a pyramid that lies between two cutting planes.

The PerspectiveViewVolume class is designed to model the view volume of a perspective camera: The observer is looking from the origin along the negative z-axis. The x-axis points to the right and the y-axis points upwards. Near and Far are positive values that specify the distance from the origin (observer) to the near and far clip planes (NearFar).

See Also