Difference between revisions of "Filling out the Image Display Geometry Class"

From The SBN Wiki
Jump to navigation Jump to search
(Creation)
 
(Creation - Safety Save)
Line 5: Line 5:
 
''OPTIONAL''
 
''OPTIONAL''
  
This class is filled out the same way whether it appears in here or in the ''<Display_Settings>'' class from the Display Discipline Dictionary. If you are providing orientation information, you must have a corresponding ''Display_Direction'' class in one place or the other.  Don't provide the information twice, though - it opens up the opportunity for conflict and error. If you're using the ''Display_Direction'' in
+
If you are providing orientation information for a data object, you must have a corresponding ''Display_Direction'' class either here or as part of a ''<Display_Settings>'' from the Display Discipline Dictionary.  Don't provide the same information twice, though - it opens up the opportunity for conflict and error. This class is filled out the same way whether it appears in here or in the ''<Display_Settings>'' class from the Display Discipline Dictionary in terms of attribute content.  See [[Filling_Out_the_Display_Dictionary_Classes#.3CDisplay_Direction.3E|Filling Out the Display_Dictionary Classes: Display_Direction]] for details. 
  
See [[Filling_Out_the_Display_Dictionary_Classes#.3CDisplay_Direction.3E|Filling Out the Display_Dictionary Classes: Display_Direction]] for details. Note, however, that the elements inside this class
+
If you are going to use the version that in included inside this ''<Image_Geometry_Class>'', though, you are going to need to specify the Display Dictionary namespace (standard abbreviation is "''disp''") for the attributes ''inside'' the ''Display_Direction'' class, but not for the ''Display_Direction'' tag itself, which in this class is considered part of the Geometry Dictionary namespace.  You can do this either by defining and using the standard ''disp:'' prefix with all the tags inside this class, or you can provide an explicit reference to the Display Dictionary namespace by using the ''xmlns'' XML attribute in your tags.  If that all sounds like gibberish to you, you might want to check the [[Schema_Referencing_in_PDS4_Labels#Namespace_References|Namespace Reference]] topic on the ''"Schema Referencing"'' page on this wiki.
 +
 
 +
If you use the ''disp:'' prefix on your tags, for example, then they will look like this:
 +
<pre>
 +
    <Display_Direction>
 +
      <disp:comment>...</disp:comment>
 +
      <disp:horizontal_display_axis>...</disp:horizontal_display_axis>
 +
      <disp:horizontal_display_direction>...</disp:horizontal_display_direction>
 +
      <disp:vertical_display_axis>...</disp:vertical_display_axis>
 +
      <disp:vertical_display_direction>...</disp:vertical_display_direction>
 +
    </Display_Direction>
 +
</pre>
 +
 
 +
== <Object_Orientation_North_East> ==
 +
 
 +
''OPTIONAL''
 +
 
 +
One of either this class or ''&lt;Object_Orientation_RA_Dec&gt;'' must be included.  You may also repeat this class (or that one) multiple times.
 +
 
 +
=== <north_azimuth> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <east_azimuth> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <Reference_Frame_Identification> ===
 +
 
 +
''REQUIRED''
 +
 
 +
==== <body_spice_name> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <body_spice_id> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <frame_space_name> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <frame_spice_id> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <name> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <Internal_Reference> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <Local_Internal_Reference> ====
 +
 
 +
''OPTIONAL''
 +
 
 +
===== <pds:comment> =====
 +
 
 +
''OPTIONAL''
 +
 
 +
===== <pds:local_identifier_reference> =====
 +
 
 +
''REQUIRED''
 +
 
 +
===== <pds:local_reference_type> =====
 +
 
 +
''REQUIRED''
 +
 
 +
 
 +
== <Object_Orientation_RA_Dec> ==
 +
 
 +
''OPTIONAL''
 +
 
 +
One of either this class or ''&lt;Object_Orientation_North_East&gt;'' must be included.  You may also repeat this class (or that one) multiple times.
 +
 
 +
=== <geometry_reference_time> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <Reference_Pixel> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
==== <vertical_coordinate_pixel> ====
 +
 
 +
''REQUIRED''
 +
 
 +
==== <horizontal_coordinate_pixel> ====
 +
 
 +
''REQUIRED''
 +
 
 +
=== <reference_pixel_location> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <right_ascension_hour_angle> or <right_ascension_angle> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <declination_angle> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <celestial_north_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
At least one of ''celestial_north_clock_angle'' and ''ecliptic_north_clock_angle'' must be provided.  You may include both.
 +
 
 +
=== <ecliptic_north_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
At least one of ''celestial_north_clock_angle'' and ''ecliptic_north_clock_angle'' must be provided.  You may include both.
 +
 
 +
=== <Reference_Frame_Identification> ===
 +
 
 +
''REQUIRED''
 +
 
 +
This class is the same here as in the ''&lt;Object_Orientation_North_East&gt;'' class, described [[#.3CReference_Frame_Identification.3E|above]].
 +
 
 +
 
 +
== <Quaternion_SPICE_Style> ==
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <qcos> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <qsin1> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <qsin2> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <qsin3> ===
 +
 
 +
''REQUIRED''
 +
 
 +
 
 +
== <Quaternion_non_SPICE_Style> ==
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <qsin1> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <qsin2> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <qsin3> ===
 +
 
 +
''REQUIRED''
 +
 
 +
=== <qcos> ===
 +
 
 +
''REQUIRED''
 +
 
 +
 
 +
== <Object_Orientation_Clock_Angles> ==
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <celestial_north_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <ecliptic_north_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <central_body_north_pole_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <target_north_pole_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <target_positive_pole_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <body_positive_pole_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <sun_direction_clock_angle> ===
 +
 
 +
''OPTIONAL''
 +
 
 +
=== <Reference_Frame_Identification> ===
 +
 
 +
''REQUIRED''
 +
 
 +
This class is the same here as in the ''&lt;Object_Orientation_North_East&gt;'' class, described [[#.3CReference_Frame_Identification.3E|above]].

Revision as of 18:22, 11 May 2015

The <Image_Display_Geometry> class maps the orientation of cardinal directions (North and East, typically) to an image-like data object based on that image being displayed on a device according to the display settings in the label (defined in the Display Discipline Dictionary <Display_Direction> class).

<Display_Direction>

OPTIONAL

If you are providing orientation information for a data object, you must have a corresponding Display_Direction class either here or as part of a <Display_Settings> from the Display Discipline Dictionary. Don't provide the same information twice, though - it opens up the opportunity for conflict and error. This class is filled out the same way whether it appears in here or in the <Display_Settings> class from the Display Discipline Dictionary in terms of attribute content. See Filling Out the Display_Dictionary Classes: Display_Direction for details.

If you are going to use the version that in included inside this <Image_Geometry_Class>, though, you are going to need to specify the Display Dictionary namespace (standard abbreviation is "disp") for the attributes inside the Display_Direction class, but not for the Display_Direction tag itself, which in this class is considered part of the Geometry Dictionary namespace. You can do this either by defining and using the standard disp: prefix with all the tags inside this class, or you can provide an explicit reference to the Display Dictionary namespace by using the xmlns XML attribute in your tags. If that all sounds like gibberish to you, you might want to check the Namespace Reference topic on the "Schema Referencing" page on this wiki.

If you use the disp: prefix on your tags, for example, then they will look like this:

    <Display_Direction>
      <disp:comment>...</disp:comment>
      <disp:horizontal_display_axis>...</disp:horizontal_display_axis>
      <disp:horizontal_display_direction>...</disp:horizontal_display_direction>
      <disp:vertical_display_axis>...</disp:vertical_display_axis>
      <disp:vertical_display_direction>...</disp:vertical_display_direction>
    </Display_Direction>

<Object_Orientation_North_East>

OPTIONAL

One of either this class or <Object_Orientation_RA_Dec> must be included. You may also repeat this class (or that one) multiple times.

<north_azimuth>

REQUIRED

<east_azimuth>

REQUIRED

<Reference_Frame_Identification>

REQUIRED

<body_spice_name>

OPTIONAL

<body_spice_id>

OPTIONAL

<frame_space_name>

OPTIONAL

<frame_spice_id>

OPTIONAL

<name>

OPTIONAL

<Internal_Reference>

OPTIONAL

<Local_Internal_Reference>

OPTIONAL

<pds:comment>

OPTIONAL

<pds:local_identifier_reference>

REQUIRED

<pds:local_reference_type>

REQUIRED


<Object_Orientation_RA_Dec>

OPTIONAL

One of either this class or <Object_Orientation_North_East> must be included. You may also repeat this class (or that one) multiple times.

<geometry_reference_time>

REQUIRED

<Reference_Pixel>

OPTIONAL

<vertical_coordinate_pixel>

REQUIRED

<horizontal_coordinate_pixel>

REQUIRED

<reference_pixel_location>

OPTIONAL

<right_ascension_hour_angle> or <right_ascension_angle>

REQUIRED

<declination_angle>

REQUIRED

<celestial_north_clock_angle>

OPTIONAL

At least one of celestial_north_clock_angle and ecliptic_north_clock_angle must be provided. You may include both.

<ecliptic_north_clock_angle>

OPTIONAL

At least one of celestial_north_clock_angle and ecliptic_north_clock_angle must be provided. You may include both.

<Reference_Frame_Identification>

REQUIRED

This class is the same here as in the <Object_Orientation_North_East> class, described above.


<Quaternion_SPICE_Style>

OPTIONAL

<qcos>

REQUIRED

<qsin1>

REQUIRED

<qsin2>

REQUIRED

<qsin3>

REQUIRED


<Quaternion_non_SPICE_Style>

OPTIONAL

<qsin1>

REQUIRED

<qsin2>

REQUIRED

<qsin3>

REQUIRED

<qcos>

REQUIRED


<Object_Orientation_Clock_Angles>

OPTIONAL

<celestial_north_clock_angle>

OPTIONAL

<ecliptic_north_clock_angle>

OPTIONAL

<central_body_north_pole_clock_angle>

OPTIONAL

<target_north_pole_clock_angle>

OPTIONAL

<target_positive_pole_clock_angle>

OPTIONAL

<body_positive_pole_clock_angle>

OPTIONAL

<sun_direction_clock_angle>

OPTIONAL

<Reference_Frame_Identification>

REQUIRED

This class is the same here as in the <Object_Orientation_North_East> class, described above.