Click or drag to resize
AB4D logo

Ab3d.Cameras Namespace

Ab3d.Cameras namespace provide cameras classes than can be used to simply define how and from where the 3D scene is seen.

Additional info:
Class diagram: Resources/CamerasClassDiagram.png
Cheat sheet: Resources/Ab3d Cameras cheat sheet.pdf
Public classBaseCamera BaseCamera class is the base class for all Ab3d.Cameras. It defines common properties and methods.
Public classBaseTargetPositionCamera BaseTargetPositionCamera is a base class for cameras that define the target position (TargetPositionCamera) or target object (TargetRect3DCamera, SceneCamera and ThirdPersonCamera).
Public classBaseTargetRect3DCamera BaseTargetRect3DCamera is a base class for cameras that look at the target Rect3D (SceneCamera and ThirdPersonCamera).
Public classCode exampleFirstPersonCamera FirstPersonCamera is a camera that simulates the person's view on the world.
Public classFreeCamera FreeCamera is a camera that is not defined by heading, attitude and bank angle. It is also not rotated around y axis. Instead the camera is defined by CameraPosition, TargetPosition and UpDirection. The camera is not limited to rotation around y axis.
Public classCode exampleSceneCamera SceneCamera is a camera that looks at the whole 3D scene defined by the Viewport3D.
Public classSphericalCamera SphericalCamera class defines a camera that is defined by Heading, Attitude and Bank properties.
Public classCode exampleTargetPositionCamera TargetPositionCamera is a camera that is looking at the specified position from the specified angle and distance.
Public classTargetRect3DCamera TargetRect3DCamera is a camera that instead of looking at a position defined by the Point3D looks at a position defined by the Rect3D.
Public classCode exampleThirdPersonCamera ThirdPersonCamera is a camera that looks at the CenterObject from the specified angle and distance.
Public interfaceIFitIntoViewCamera IFitIntoViewCamera interface defines methods that are used to fit camera into view.
Public interfaceIMovableCamera IMovableCamera interface provide method that can move camera with strafing. This interface is implemented by TargetPositionCamera, FirstPersonCamera and FreeCamera.
Public delegateBaseCameraCameraChangedRoutedEventHandler CameraChangedRoutedEventHandler
Public delegateBaseCameraEasingFunctionDelegate EasingFunctionDelegate is used to define the easing function that can be used to with StartRotation and EndRotation methods.
Public delegateBaseCameraPreviewCameraChangedRoutedEventHandler PreviewCameraChangedRoutedEventHandler
Public enumerationBaseCameraCameraTypes CameraTypes contains possible camera types.