cdm/src/main/java/ucar/nc2/dataset/CoordinateAxis2D.java
private ArrayDouble.D3 makeBoundsFromAux() {
    if (!computeIsInterval()) return null;

    Attribute boundsAtt = findAttributeIgnoreCase(CF.BOUNDS);
    if (boundsAtt == null) return null;

    String boundsVarName = boundsAtt.getStringValue();
    VariableDS boundsVar = (VariableDS) ncd.findVariable(getParentGroup(), boundsVarName);

    Array data;
    try {
      //boundsVar.setUseNaNs(false); // missing values not allowed
      data = boundsVar.read();
    } catch (IOException e) {
      log.warn("CoordinateAxis2D.makeBoundsFromAux read failed ", e);
      return null;
    }

    ArrayDouble.D3 bounds;
    assert (data.getRank() == 3) && (data.getShape()[2] == 2) : "incorrect shape data for variable " + boundsVar;
    if (data instanceof ArrayDouble.D3) {
      bounds = (ArrayDouble.D3) data;
    } else {
      bounds = (ArrayDouble.D3) Array.factory(DataType.DOUBLE, data.getShape());
      MAMath.copy(data, bounds);
    }

    return bounds;
  }
private ArrayDouble.D3 makeBoundsFromAux() {
    if (!computeIsInterval()) return null;

    Attribute boundsAtt = findAttributeIgnoreCase(CF.BOUNDS);
    if (boundsAtt == null) return null;

    String boundsVarName = boundsAtt.getStringValue();
    VariableDS boundsVar = (VariableDS) ncd.findVariable(getParentGroup(), boundsVarName);

    Array data;
    try {
      //boundsVar.setUseNaNs(false); // missing values not allowed
      data = boundsVar.read();
    } catch (IOException e) {
      log.warn("CoordinateAxis2D.makeBoundsFromAux read failed ", e);
      return null;
    }

    ArrayDouble.D3 bounds;
    assert (data.getRank() == 3) && (data.getShape()[2] == 2) : "incorrect shape data for variable " + boundsVar;
    if (data instanceof ArrayDouble.D3) {
      bounds = (ArrayDouble.D3) data;
    } else {
      bounds = (ArrayDouble.D3) Array.factory(DataType.DOUBLE, data.getShape());
      MAMath.copy(data, bounds);
    }

    return bounds;
  }
private ArrayDouble . D3 makeBoundsFromAux ( ) { if ( ! computeIsInterval ( ) ) return null ; Attribute boundsAtt = findAttributeIgnoreCase ( CF . BOUNDS ) ; if ( boundsAtt == null ) return null ; String boundsVarName = boundsAtt . getStringValue ( ) ; VariableDS boundsVar = ( VariableDS ) ncd . findVariable ( getParentGroup ( ) , boundsVarName ) ; Array data ; try { //boundsVar.setUseNaNs(false); // missing values not allowed
 data = boundsVar . read ( ) ; } catch ( IOException e ) { log . warn ( "CoordinateAxis2D.makeBoundsFromAux read failed " , e ) ; return null ; } ArrayDouble . D3 bounds ; assert ( data . getRank ( ) == 3 ) && ( data . getShape ( ) [ 2 ] == 2 ) : "incorrect shape data for variable " + boundsVar ; if ( data instanceof ArrayDouble . D3 ) { bounds = ( ArrayDouble . D3 ) data ; } else { bounds = ( ArrayDouble . D3 ) Array . factory ( DataType . DOUBLE , data . getShape ( ) ) ; MAMath . copy ( data , bounds ) ; } return bounds ; }
bounds calculations
bounds calculations