cdm/src/main/java/ucar/ma2/Range.java
public Range shiftOrigin(int origin) throws InvalidRangeException {
    if (this == VLEN)
      return VLEN;

    int first = first() - origin;
    int last = last() - origin;
    return new Range(name, first, last, stride);
  }
public Range shiftOrigin(int origin) throws InvalidRangeException {
    if (this == VLEN)
      return VLEN;

    int first = first() - origin;
    int last = last() - origin;
    return new Range(name, first, last, stride);
  }
public Range shiftOrigin ( int origin ) throws InvalidRangeException { if ( this == VLEN ) return VLEN ; int first = first ( ) - origin ; int last = last ( ) - origin ; return new Range ( name , first , last , stride ) ; }
Create a new Range shifting this range by a constant factor.

@param origin subtract this from each element
@return shifted range
@throws InvalidRangeException elements must be nonnegative, 0 <= first <= last
Create a new Range shifting this range by a constant factor .