Table 6.111 — DRM_Image

Property

Description

Class

  • <DRM Image>

Superclass

Subclass

  • None.

Definition

An instance of this DRM class specifies one or more MIP levels of texels, and can have 3 dimensions.

The name field specifies a meaningful short name.

The colour_model field specifies the colour model used throughout the given <DRM Image> instance. Only one colour model is allowed per <DRM Image> instance.

The level_count field specifies the number of levels of detail defined for the given <DRM Image> instance (for mipmaps). If the given instance is not a MIP-mapped image, only one level will be defined (level_count == 1).

Many end-user applications require that <DRM Image> instances having MIP levels specify both the horizontal and vertical dimensions as a power of 2. However, some applications can handle <DRM Image> instances for which the horizontal and vertical dimensions are a multiple of 2 rather than a power of 2. For example, 96 texels in a direction is a multiple of 2 but not a power of 2. Please note that SEDRIS places no restriction on either the dimensional size of an <DRM Image> instance, nor makes any statement as to whether the use of MIP information within the <DRM Image> instance will be valid on a given consumer’s system.

There are level_count entries in the mip_extents_array. Each entry defines the “size” (the number of horizontal, vertical, and z texels) for a single MIP level of the given <DRM Image> instance. The first map shall contain the highest level of detail; that is, mip_extents_array[0] corresponds to the level containing the most texels.

The image_signature field specifies how texels are represented within the given <DRM Image> instance; see Image_Signature for details. Note that for an <DRM Image> instance with an image_signature of EDCS_CLASSIFICATION_CODE, the bit size is a constant of sizeof(Classification_Code).

The scan_direction field specifies the origin and direction of the horizontal and vertical components of the given <DRM Image> instance.

The scan_direction_z field specifies the direction in which the given <DRM Image> instance’s z components are ordered.

The component_data_type field specifies the data type of the raw image data. If signed or unsigned integer is specified, the maximum size fields apply. If floating point is specified, the values range from 0,0 to 1,0.

The data_is_little_endian field specifies the endianess of the raw image data.

The data_is_3D field specifies whether the image data has three dimensions.

If zero is specified for bits_of_alpha, the image data does not contain alpha information.

If zero is specified for bits_of_luminance, the image data does not contain luminance information.

If zero is specified for bits_of_colour_coordinate_1, the image data does not contain colour information for this colour coordinate (R, C, H).

If zero is specified for bits_of_colour_coordinate_2, the image data does not contain colour information for this colour coordinate (G, M, S).

If zero is specified for bits_of_colour_coordinate_3, the image data does not contain colour information for this colour coordinate (B, Y, V).

If zero is specified for bits_of_bump_map_height, the image data does not contain bump map height information.

If zero is specified for bits_of_material_1, the image data does not contain material 1 index information. If non-zero is specified, this is an index into the <DRM Property Table> instance(s) that are referenced from the given <DRM Image> instance.

NOTE  With no material 2 or material 3 percentages, material_1 is at 100%.

If the bits_of_material_2 field specifies non-zero for a given <DRM Image> instance X:

However, if bits_of_material_2 = 0, the given <DRM Image> instance’s texel data do not contain material 2 index information.

If the bits_of_material_3 field specifies non-zero for a given <DRM Image> instance X:

However, if bits_of_material_3 = 0, the given <DRM Image> instance’s texel data do not contain material 3 index information.

If required by the image_signature value the bits_of_material_2_percentage field is used to specify the percentage of material 2.

NOTE  The percentage of material 1 is (100% - (percentage of material 2)).

If required by the image_signature value, the bits_of_material_3_percentage field is used to specify the percentage of material 3.

NOTE  The percentage of material 1 is (100% - (percentage of material 2) - percentage of material 3)).

If zero is specified for bits_of_image_index, the image data does not contain image index information.

If zero is specified for bits_of_bump_map_u, the image data does not contain bump map u information.

If zero is specified for bits_of_bump_map_v, the image data does not contain bump map v information.

The minimum_value_of_alpha field specifies the minimum value that alpha can be within the image data; it is 0,0 if alpha is not used.

The maximum_value_of_alpha field specifies the maximum value that alpha can be within the image data; it is 0,0 if alpha is not used.

The minimum_value_of_luminance field specifies the minimum value that luminance can be within the image data; it is 0,0 if luminance is not used.

The maximum_value_of_luminance field specifies the maximum value that luminance can be within the image data; it is 0,0 if luminance is not used.

The minimum_value_of_colour_coordinate_1 field specifies the minimum value that colour_coordinate_1 can be within the image data; it is 0,0 if colour_coordinate_1 is not used.

The maximum_value_of_colour_coordinate_1 field specifies the maximum value that colour_coordinate_1 can be within the image data; it is 0,0 if colour_coordinate_1 is not used.

The minimum_value_of_colour_coordinate_2 field specifies the minimum value that colour_coordinate_2 can be within the image data; it is 0,0 if colour_coordinate_2 is not used.

The maximum_value_of_colour_coordinate_2 field specifies the maximum value that colour_coordinate_2 can be within the image data; it is 0,0 if colour_coordinate_2 is not used.

The minimum_value_of_colour_coordinate_3 field specifies the minimum value that colour_coordinate_3 can be within the image data; it is 0,0 if colour_coordinate_3 is not used.

The maximum_value_of_colour_coordinate_3 field specifies the maximum value that colour_coordinate_3 can be within the image data; it is 0,0 if colour_coordinate_3 is not used.

The minimum_value_of_bump_map_height field specifies the minimum value that bump_map_height can be within the image data; it is 0,0 if bump_map_height is not used.

The maximum_value_of_bump_map_height field specifies the maximum value that bump_map_height can be within the image data; it is 0,0 if bump_map_height is not used.

The minimum_value_of_bump_map_u field specifies the minimum value that bump_map_u can be within the image data; it is 0,0 if bump_map_u is not used.

The maximum_value_of_bump_map_u field specifies the maximum value that bump_map_u can be within the image data; it is 0,0 if bump_map_u is not used.

The minimum_value_of_bump_map_v field specifies the minimum value that bump_map_v can be within the image data; it is 0,0 if bump_map_v is not used.

The maximum_value_of_bump_map_v field specifies the maximum value that bump_map_v can be within the image data; it is 0,0 if bump_map_v is not used.

Clarifications

1 If provided, the <DRM Classification Data> identifies the content of the imagery.

2 If provided, the <DRM Description> component may be used to provide a more detailed description than that specified by the name field.

3 If provided, this specifies either

  1. information about the events and/or source data used in constructing the given <DRM Image> instance, or
  2. lack of knowledge about lineage.

4 This is intended to support geo-specific <DRM Image> instances that are not referenced by any <DRM Image Mapping Function>, because an <DRM Image> may be significant only for a particular domain, e.g. radar, thermal, out-the-window.

Class diagram

Figure 6.129 — DRM_Image

Inherited field elements

Field name

Range

Field data type

None

   

Field elements

Field name

Range

Field data type

name

 

String

colour_model

 

Colour_Model

level_count

 

Short_Integer_Positive

mip_extents_array

 

Image_MIP_Extents[level_count]

image_signature

 

Image_Signature

scan_direction

 

Image_Scan_Direction

scan_direction_z

 

Image_Scan_Direction_Z

component_data_type

 

Image_Component_Type

data_is_little_endian

 

Boolean

data_is_3D

 

Boolean

bits_of_alpha

 

Short_Integer_Unsigned

bits_of_luminance

 

Short_Integer_Unsigned

bits_of_colour_coordinate_1

 

Short_Integer_Unsigned

bits_of_colour_coordinate_2

 

Short_Integer_Unsigned

bits_of_colour_coordinate_3

 

Short_Integer_Unsigned

bits_of_bump_map_height

 

Short_Integer_Unsigned

bits_of_material_1

 

Short_Integer_Unsigned

bits_of_material_2

 

Short_Integer_Unsigned

bits_of_material_3

 

Short_Integer_Unsigned

bits_of_material_2_percentage

 

Short_Integer_Unsigned

bits_of_material_3_percentage

 

Short_Integer_Unsigned

bits_of_image_index

 

Short_Integer_Unsigned

bits_of_bump_map_u

 

Short_Integer_Unsigned

bits_of_bump_map_v

 

Short_Integer_Unsigned

minimum_value_of_alpha

 

Float

maximum_value_of_alpha

 

Float

minimum_value_of_luminance

 

Float

maximum_value_of_luminance

 

Float

minimum_value_of_colour_coordinate_1

 

Float

maximum_value_of_colour_coordinate_1

 

Float

minimum_value_of_colour_coordinate_2

 

Float

maximum_value_of_colour_coordinate_2

 

Float

minimum_value_of_colour_coordinate_3

 

Float

maximum_value_of_colour_coordinate_3

 

Float

minimum_value_of_bump_map_height

 

Float

maximum_value_of_bump_map_height

 

Float

minimum_value_of_bump_map_u

 

Float

maximum_value_of_bump_map_u

 

Float

minimum_value_of_bump_map_v

 

Float

maximum_value_of_bump_map_v

 

Float

Associated to (one-way) (inherited)

  • None.

Associated to (one-way)

  • None.

Associated by (one-way) (inherited)

  • None.

Associated by (one-way)

Associated with (two-way) (inherited)

  • None.

Associated with (two-way)

  • None.

Composed of (two-way) (inherited)

  • None.

Composed of (two-way)

Composed of (two-way metadata) (inherited)

  • None.

Composed of (two-way metadata)

Component of (two-way) (inherited)

  • None.

Component of (two-way)

Constraints

Example(s)

  • A brick <DRM Image> that is repeated over the surface of a <DRM Polygon> to represent a brick wall.

  • An <DRM Image> of a tree that when applied to a <DRM Polygon> and combined with <DRM Translucency> creates a flat version of a tree.

  • The <DRM Image> mapped to the surface of a Dismounted Infantryman icon.

  • The sequence of <DRM Image>(s) mapped to a <DRM Polygon> to represent a television.

  • Consider an <DRM Image> instance that has 3 <DRM Property Table Reference> components:

    • one to a table for Infrared properties,
    • one to a table for Night Vision Goggles properties,
    • and the third to a <DRM Property Table> for Surface Material Category properties.
    NOTE: There is no restriction on the number of possible <DRM Property Table Reference> components.

    Image, Ex 5

    Figure 6.130 — <DRM Image> example

    1. Consider the case of 1 material. A given texel will contain a single integer, which is used in place of the index_on_axis field for all the <DRM Property Table Reference> components of the <DRM Image>.

    2. Consider the case of 2 materials. A given texel will contain 3 integers, 2 of which are used in place of the index_on_axis field for all the <DRM Property Table Reference>s of the <DRM Image>, and a third integer, which specifies the percentage of the 2nd material. For a given texel, say the numbers are 7 6 50 ; then the material at that texel is something that’s 50% glass and 50% concrete.

    3. Consider the case of 3 materials. A given texel will contain 5 integers, 3 of which are used in place of the index_on_axis field for all the <DRM Property Table Reference> components of the <DRM Image>, and 2 of which specify the percentages of material 2 and 3. For a given texel, say the numbers are 4 6 7 20 30; then the material at that texel is something that is 50% wood, 20% concrete, and 30% glass.