Table 6.42— DRM_Camera_Point

Property

Description

Superclass

·         <DRM SEDRIS Abstract Base>

Class

·         <DRM Camera Point>

Subclass

·         none

Definition

An eye point to view from, specifying a location, an orientation, and either an orthographic or perspective viewing volume. A viewing volume is defined, oriented along the axis defined to start at the camera <DRM Location 3D> and to go in the direction of the specified orientation. This orientation defines the coordinate space of the camera, where the camera is at (0,0,0) and is oriented to look down the +Y axis (assuming the XY-plane defines the horizontal plane and the right-hand rule applies). If the camera defines an orthographic view point, then the viewing volume is the volume between two parallel rectangles, defined with coordinates of (left,bottom) to (right,top). The first rectangle is (near) meters away from the camera location, and the second rectangle is (far) meters away from the camera location. If the camera defines a perspective view point, then the viewing volume is a viewing frustum that can be described by in one of two ways. The perspective viewing volume can be defined as the volume starting at the (left,bottom) to (right,top) rectangle located in the near clipping and expanding to the far clipping plane. Or the perspective viewing volume can be described by a field-of-view angle, an aspect ratio that is the width of the frustum divided by its height, and the distance to the near and far clipping planes.

Example(s)

·         A perspective viewing point defined at the beginning of a runway, oriented to look down the runway.

·         An orthographic viewing point defined high above the transmittal, in the center of the transmittal, to give a "God's eye view" of the entire transmittal.

Inherited field elements

field_name

range

Field_Data_Type

none

 

 

Field elements

field_name

range

Field_Data_Type

camera_id1

 

Integer_Unsigned

projection

 

Camera_Projection_Type

camera_near2

 

Long_Float

camera_far3

 

Long_Float

use_left_right_bottom_top4

 

Boolean

left5

 

Long_Float

bottom6

 

Long_Float

top7

 

Long_Float

right8

 

Long_Float

horizontal_field_of_view9

 

Long_Float

aspect_ratio10

 

Long_Float

Associated to (one-way) (inherited)

·         none

Associated to (one-way)

·         none

Associated by (one-way) (inherited)

·         none

Associated by (one-way)

·         none

Associated with (two-way) (inherited)

·         none

Associated with (two-way)

·         none

Composed of (two-way) (inherited)

·         none

Composed of (two-way)

·         one <DRM Location>

·         two <DRM Reference Vector>s11

Composed of (two-way metadata) (inherited)

·         none

Composed of (two-way metadata)

·         none

Component of (two-way) (inherited)

·         none

Component of (two-way)

·         none

Constraints

·         Non-crossing aggregations

·         Unique ID field

Notes

1 Camera_id required to be unique from all other <DRM Camera Point> camera IDs.

2 Distance from camera position to near clipping plane, in metres.

3 Distance from camera position to far clipping plane, in metres.

4 If TRUE, use the parameters from the left, right, bottom, and top fields. These fields are always used for orthographic viewing, but perspective viewing can either use these fields or the field-of-view and aspect ratio fields.

5 The X coordinate of the lower left corner of the rectangle in the near clipping plane.

6 The Y coordinate of the lower left corner of the rectangle in the near clipping plane.

7 The Y coordinate of the upper right corner of the rectangle in the far clipping plane.

8 The X coordinate of the upper right corner of the rectangle in the far clipping plane.

9 Angle, in degrees, of the horizontal field of view. Used for perspective viewing if the use_left_right_bottom_top flag is FALSE. This assumes an on-axis symmetric viewing volume. Off axis viewing volumes are not supported.

10 The width of the frustum divided by its height. Used for perspective viewing if the use_left_right_bottom_top flag is FALSE.

11 One of the two mandatory reference vectors is required to have a Reference_Vector_Type of CAMERA_FORWARD_AXIS and the other is required to have a Reference_Vector_Type of CAMERA_UP_AXIS.

Class diagram

<DRM Camera Point>