Contract each of the intervals of a double precision window.
VARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- left I Amount added to each left endpoint. right I Amount subtracted from each right endpoint. window I,O Window to be contracted.
left is the amount to be added to the left endpoint of each interval in the input window. right is the amount to be subtracted from the right endpoint of each interval in the window. window on input, is a CSPICE window containing zero or more intervals. window must be declared as a double precision SpiceCell.
window on output, is the original window with each of its intervals contracted by left units on the left and right units on the right.
This routine contracts (shortens) each of the intervals in the input window. The adjustments are not necessarily symmetric. That is, left units are added to the left endpoint of each interval, and right units are subtracted from the right endpoint of each interval, where left and right may be different. Intervals are dropped when they are contracted by amounts greater than their measures.
Let window contain the intervals [ 1, 3 ] [ 7, 11 ] [ 23, 27 ] [ 29, 29 ] Then the following series of calls wncond_c ( 2, 1, &window ); (1) wncond_c ( -2, 2, &window ); (2) wncond_c ( -2, -1, &window ); (3) produces the following series of windows [ 9, 10 ] [ 25, 26 ] (1) [ 7, 8 ] [ 23, 24 ] (2) [ 5, 9 ] [ 21, 25 ] (3) Note that intervals may be "contracted" by negative amounts. In the example above, the second call shifts each interval to the left, while the third call undoes the effect of the first call (without restoring the destroyed intervals). Note also that the third call is exactly equivalent to the call wnexpd_c ( 2, 1, window );
1) If the input window does not have double precision type, the error SPICE(TYPEMISMATCH) is signaled.
N.J. Bachman (JPL) H.A. Neilan (JPL) W.L. Taber (JPL) I.M. Underwood (JPL)
-CSPICE Version 1.0.0, 21-JUL-2002 (NJB) (HAN) (WLT) (IMU)
contract the intervals of a d.p. window