createLinearTransform(sampleValueRange, geophysicsValueRange)); inverse.range = geophysicsValueRange; assert range.equals(sampleValueRange);
createLinearTransform(sampleValueRange, geophysicsValueRange)); inverse.range = geophysicsValueRange; assert range.equals(sampleValueRange);
final double offset) throws IllegalArgumentException this(name, colors, sampleValueRange, createLinearTransform(scale, offset)); try { assert Double.doubleToLongBits(transform.derivative(0)) == Double.doubleToLongBits(scale);
final double offset) throws IllegalArgumentException this(name, colors, sampleValueRange, createLinearTransform(scale, offset)); try { assert Double.doubleToLongBits(transform.derivative(0)) == Double.doubleToLongBits(scale);
/** * Returns a sample dimension using new {@link #getScale scale} and {@link #getOffset offset} * coefficients. Other properties like the {@linkplain #getRange sample value range}, * {@linkplain #getNoDataValues no data values} and {@linkplain #getColorModel colors} * are unchanged. * * @param scale The value which is multiplied to grid values for the new sample dimension. * @param offset The value to add to grid values for the new sample dimension. * * @see #getScale * @see #getOffset * @see Category#rescale */ public GridSampleDimension rescale(final double scale, final double offset) { final MathTransform1D sampleToGeophysics = Category.createLinearTransform(scale, offset); final Category[] categories = (Category[]) getCategories().toArray(); final Category[] reference = (Category[]) categories.clone(); final int length = categories.length; for (int i = 0; i < length; i++) { if (categories[i].isQuantitative()) { categories[i] = categories[i].rescale(sampleToGeophysics); } categories[i] = categories[i].geophysics(isGeophysics); } if (Arrays.equals(categories, reference)) { return this; } return new GridSampleDimension(description, categories, getUnits()); }
if (!isQuantitative) { minimum = maximum = XMath.toNaN((int) Math.round((inverse.minimum + inverse.maximum)/2)); transform = createLinearTransform(0, inverse.minimum); // geophysics to sample return;
if (!isQuantitative) { minimum = maximum = XMath.toNaN((int) Math.round((inverse.minimum + inverse.maximum)/2)); transform = createLinearTransform(0, inverse.minimum); // geophysics to sample return;
transform = createLinearTransform(0, minimum); return; if (sampleToGeophysics == null) { inverse = new GeophysicsCategory(this, false); transform = createLinearTransform(0, inverse.minimum); // sample to geophysics return;
transform = createLinearTransform(0, minimum); return; if (sampleToGeophysics == null) { inverse = new GeophysicsCategory(this, false); transform = createLinearTransform(0, inverse.minimum); // sample to geophysics return;
final MathTransform1D sampleToGeophysics = Category.createLinearTransform(scale, offset); final Category[] categories = (Category[]) getCategories().toArray(); boolean changed = false;
return createLinearTransform(scale, offset);
return createLinearTransform(scale, offset);