/** * Get the maximum radial distance, in km. */ public double getMaximumRadial() { if (maxRadial == 0.0) { try { Array radialData = getRadialAxisDataCached(); maxRadial = MAMath.getMaximum( radialData); String units = getRadialAxis().getUnitsString(); SimpleUnit radialUnit = SimpleUnit.factory(units); maxRadial = radialUnit.convertTo(maxRadial, SimpleUnit.kmUnit); // convert to km } catch (IOException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } } return maxRadial; }
/** * Get the maximum radial distance, in km. */ public double getMaximumRadial() { if (maxRadial == 0.0) { try { Array radialData = getRadialAxisDataCached(); maxRadial = MAMath.getMaximum( radialData); String units = getRadialAxis().getUnitsString(); SimpleUnit radialUnit = SimpleUnit.factory(units); maxRadial = radialUnit.convertTo(maxRadial, SimpleUnit.kmUnit); // convert to km } catch (IOException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } } return maxRadial; }
/** * Get the maximum radial distance, in km. */ public double getMaximumRadial() { if (maxRadial == 0.0) { try { Array radialData = getRadialAxisDataCached(); maxRadial = MAMath.getMaximum( radialData); String units = getRadialAxis().getUnitsString(); SimpleUnit radialUnit = SimpleUnit.factory(units); maxRadial = radialUnit.convertTo(maxRadial, SimpleUnit.kmUnit); // convert to km } catch (IOException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } } return maxRadial; }
private static DataBuffer makeDataBuffer( Array ma) { if (ma instanceof ArrayByte) return makeByteDataBuffer( (ArrayByte) ma); int h = ma.getShape()[0]; int w = ma.getShape()[1]; double min = MAMath.getMinimum(ma); // LOOK we need missing values to be removed !! double max = MAMath.getMaximum(ma); double scale = (max - min); if (scale > 0.0) scale = 255.0 / scale; IndexIterator ii = ma.getIndexIterator(); byte[] byteData = new byte[h*w]; for (int i = 0; i < byteData.length; i++) { double val = ii.getDoubleNext(); double sval = ((val - min) * scale); byteData[i] = (byte) (sval); // < 128.0 ? sval : sval - 255.0); } return new DataBufferByte(byteData, byteData.length); }