Index Page
wnexpd_c
A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 

Procedure
Abstract
Required_Reading
Keywords
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version
Index_Entries

Procedure

   void wnexpd_c ( SpiceDouble    left,
                   SpiceDouble    right,
                   SpiceCell    * window ) 

Abstract

 
   Expand each of the intervals of a double precision window. 
 

Required_Reading

 
   WINDOWS 
 

Keywords

 
   WINDOWS 
 

Brief_I/O

 
   VARIABLE  I/O  DESCRIPTION 
   --------  ---  -------------------------------------------------- 
   left       I   Amount subtracted from each left endpoint. 
   right      I   Amount added to each right endpoint. 
   window    I,O  Window to be expanded. 
 

Detailed_Input

 
   left        is the amount to be subtracted from the left 
               endpoint of each interval in the input window. 
 
   right       is the amount to be added to the right endpoint 
               of each interval in the window. 
 
   window      on input, is a window containing zero or more 
               intervals. 

               window must be declared as a double precision
               SpiceCell.
 

Detailed_Output

 
   window      on output, is the original window with each of its 
               intervals expanded by left units on the left and 
               right units on the right. 
 

Parameters

 
   None. 
 

Exceptions

 
   1) If the input window does not have double precision type,
      the error SPICE(TYPEMISMATCH) is signaled.
 

Files

 
   None. 
 

Particulars

 
   This routine expands (lengthens) each of the intervals in 
   the input window. The adjustments are not necessarily symmetric. 
   That is, left units are subtracted from the left endpoint of 
   each interval, and right units are added to the right endpoint 
   of each interval, where left and right may be different. 

   Intervals are merged when expansion causes them to overlap. 
 

Examples

 
   Let window contain the intervals 

      [ 1, 3 ]  [ 7, 11 ]  [ 23, 27 ]  [ 29, 29 ] 

   Then the following series of calls 

      wnexpd_c (  2.0,  1.0, &window );              (1) 
      wnexpd_c ( -2.0,  2.0, &window );              (2) 
      wnexpd_c ( -2.0, -1.0, &window );              (3) 

   produces the following series of windows 

      [ -1, 4 ]  [ 5, 12 ]  [ 21, 30 ]               (1) 
      [  1, 6 ]  [ 7, 14 ]  [ 23, 32 ]               (2) 
      [  3, 5 ]  [ 9, 13 ]  [ 25, 31 ]               (3) 

   Note that intervals may be "expanded" by negative amounts. 
   In the example above, the second call shifts each interval to 
   the right, while the third call undoes the effect of the first 
   call (without restoring the merged intervals). 

   Note also that the third call is exactly equivalent to the 
   call 

      wncond_c ( 2, 1, &window );

Restrictions

 
   None. 
 

Literature_References

 
   None. 
 

Author_and_Institution

 
   N.J. Bachman    (JPL)
   H.A. Neilan     (JPL) 
   W.L. Taber      (JPL) 
   I.M. Underwood  (JPL) 
 

Version

 
   -CSPICE Version 1.0.0, 29-JUL-2002 (NJB) (HAN) (WLT) (IMU)

Index_Entries

 
   expand the intervals of a d.p. window 
 

Link to routine wnexpd_c source file wnexpd_c.c

Wed Apr  5 17:54:47 2017