SpiceCK.h
上传用户:center1979
上传日期:2022-07-26
资源大小:50633k
文件大小:5k
源码类别:

OpenGL

开发平台:

Visual C++

  1. /*
  2. -Header_File SpiceCK.h ( CSPICE CK definitions )
  3. -Abstract
  4.    Perform CSPICE definitions to support CK wrapper interfaces.
  5.             
  6. -Disclaimer
  7.    THIS SOFTWARE AND ANY RELATED MATERIALS WERE CREATED BY THE
  8.    CALIFORNIA INSTITUTE OF TECHNOLOGY (CALTECH) UNDER A U.S.
  9.    GOVERNMENT CONTRACT WITH THE NATIONAL AERONAUTICS AND SPACE
  10.    ADMINISTRATION (NASA). THE SOFTWARE IS TECHNOLOGY AND SOFTWARE
  11.    PUBLICLY AVAILABLE UNDER U.S. EXPORT LAWS AND IS PROVIDED "AS-IS"
  12.    TO THE RECIPIENT WITHOUT WARRANTY OF ANY KIND, INCLUDING ANY
  13.    WARRANTIES OF PERFORMANCE OR MERCHANTABILITY OR FITNESS FOR A
  14.    PARTICULAR USE OR PURPOSE (AS SET FORTH IN UNITED STATES UCC
  15.    SECTIONS 2312-2313) OR FOR ANY PURPOSE WHATSOEVER, FOR THE
  16.    SOFTWARE AND RELATED MATERIALS, HOWEVER USED.
  17.    IN NO EVENT SHALL CALTECH, ITS JET PROPULSION LABORATORY, OR NASA
  18.    BE LIABLE FOR ANY DAMAGES AND/OR COSTS, INCLUDING, BUT NOT
  19.    LIMITED TO, INCIDENTAL OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  20.    INCLUDING ECONOMIC DAMAGE OR INJURY TO PROPERTY AND LOST PROFITS,
  21.    REGARDLESS OF WHETHER CALTECH, JPL, OR NASA BE ADVISED, HAVE
  22.    REASON TO KNOW, OR, IN FACT, SHALL KNOW OF THE POSSIBILITY.
  23.    RECIPIENT BEARS ALL RISK RELATING TO QUALITY AND PERFORMANCE OF
  24.    THE SOFTWARE AND ANY RELATED MATERIALS, AND AGREES TO INDEMNIFY
  25.    CALTECH AND NASA FOR ALL THIRD-PARTY CLAIMS RESULTING FROM THE
  26.    ACTIONS OF RECIPIENT IN THE USE OF THE SOFTWARE.
  27. -Required_Reading
  28.    None.
  29.    
  30. -Particulars
  31.    This header defines types that may be referenced in 
  32.    application code that calls CSPICE CK functions.
  33.       Typedef
  34.       =======
  35.    
  36.          Name                  Description
  37.          ----                  ----------
  38.    
  39.          SpiceCK05Subtype      Typedef for enum indicating the 
  40.                                mathematical representation used
  41.                                in an CK type 05 segment.  Possible
  42.                                values and meanings are:
  43.                                C05TP0:
  44.  
  45.                                   Hermite interpolation, 8-
  46.                                   element packets containing 
  47.                                   
  48.                                      q0,      q1,      q2,     q3, 
  49.                                      dq0/dt,  dq1/dt,  dq2/dt  dq3/dt
  50.                    
  51.                                   where q0, q1, q2, q3 represent 
  52.                                   quaternion components and dq0/dt, 
  53.                                   dq1/dt, dq2/dt, dq3/dt represent 
  54.                                   quaternion time derivative components.  
  55.  
  56.                                   Quaternions are unitless.  Quaternion
  57.                                   time derivatives have units of 
  58.                                   1/second.
  59.                                C05TP1:
  60.   
  61.                                   Lagrange interpolation, 4-
  62.                                   element packets containing 
  63.                                      q0,     q1,     q2,     q3, 
  64.  
  65.                                   where q0, q1, q2, q3 represent 
  66.                                   quaternion components.  Quaternion
  67.                                   derivatives are obtained by
  68.                                   differentiating interpolating
  69.                                   polynomials.
  70.                                C05TP2:
  71.   
  72.                                   Hermite interpolation, 14-
  73.                                   element packets containing 
  74.                                      q0,      q1,      q2,     q3,  
  75.                                      dq0/dt,  dq1/dt,  dq2/dt  dq3/dt,
  76.                                      av0,     av1,     av2,
  77.                                      dav0/dt, dav1/dt, dav2/dt
  78.                    
  79.                                   where q0, q1, q2, q3 represent 
  80.                                   quaternion components and dq0/dt, 
  81.                                   dq1/dt, dq2/dt, dq3/dt represent 
  82.                                   quaternion time derivative components,
  83.                                   av0, av1, av2 represent angular
  84.                                   velocity components, and 
  85.                                   dav0/dt, dav1/dt, dav2/dt represent 
  86.                                   angular acceleration components.
  87.  
  88.                                C05TP3:
  89.   
  90.                                   Lagrange interpolation, 7-
  91.                                   element packets containing 
  92.                                      q0,     q1,     q2,     q3, 
  93.                                      av0,    av1,    av2
  94.  
  95.                                   where q0, q1, q2, q3 represent 
  96.                                   quaternion components and         
  97.                                   av0, av1, av2 represent angular
  98.                                   velocity components.
  99. Literature_References
  100.    None.
  101. -Author_and_Institution
  102.    N.J. Bachman       (JPL)
  103.    
  104. -Restrictions
  105.    None.
  106.       
  107. -Version
  108.    -CSPICE Version 1.0.0, 20-AUG-2002 (NJB)  
  109. */
  110. #ifndef HAVE_SPICE_CK_H
  111.    #define HAVE_SPICE_CK_H
  112.    
  113.    
  114.    
  115.    /*
  116.    CK type 05 subtype codes:
  117.    */
  118.    
  119.    enum _SpiceCK05Subtype  { C05TP0, C05TP1, C05TP2, C05TP3 };
  120.    
  121.    typedef enum _SpiceCK05Subtype SpiceCK05Subtype;
  122.  
  123. #endif