本文整理了Java中it.geosolutions.jaiext.range.RangeFactory.convert
方法的一些代码示例,展示了RangeFactory.convert
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RangeFactory.convert
方法的具体详情如下:
包路径:it.geosolutions.jaiext.range.RangeFactory
类名称:RangeFactory
方法名:convert
暂无
代码示例来源:origin: geotools/geotools
/**
* Method for creating the nodata range associated to each coverage
*
* @param cov
* @param dataType
* @return
*/
private Range createNoDataRange(GridCoverage2D cov, int dataType) {
// Extract NoData property from gridCoverage
NoDataContainer container = CoverageUtilities.getNoDataProperty(cov);
if (container != null) {
return container.getAsRange();
}
// No property set, use the input NoData Range
double[] nodatas = CoverageUtilities.getBackgroundValues(cov);
if (nodatas != null && nodatas.length > 0) {
Range noData =
RangeFactory.convert(RangeFactory.create(nodatas[0], nodatas[0]), dataType);
return noData;
}
return null;
}
代码示例来源:origin: geotools/geotools
RangeFactory.convert(
RangeFactory.create(
range.getMin().doubleValue(),
RangeFactory.convert(
RangeFactory.create(
getClassMinimum(widestClass).doubleValue(),
代码示例来源:origin: geotools/geotools
/**
* Formats the underlying image to the provided data type.
*
* @param dataType to be used for this {@link FormatDescriptor} operation.
* @return this {@link ImageWorker}
*/
public final ImageWorker format(final int dataType) {
ParameterBlock pb = new ParameterBlock();
pb.setSource(image, 0); // The source image.
pb.set(dataType, 0);
image = JAI.create("Format", pb, getRenderingHints());
setNoData(RangeFactory.convert(nodata, dataType));
// All post conditions for this method contract.
assert image.getSampleModel().getDataType() == dataType;
return this;
}
代码示例来源:origin: geotools/geotools
setNoData(RangeFactory.convert(nodata, image.getSampleModel().getDataType()));
invalidateStatistics();
return this;
代码示例来源:origin: geotools/geotools
/**
* If the was not already tiled, tile it. Note that no tiling will be done if
* 'getRenderingHints()' failed to suggest a tile size. This method is for internal use by
* {@link #write} methods only.
*
* @return this {@link ImageWorker}.
*/
public final ImageWorker tile() {
final RenderingHints hints = getRenderingHints();
final ImageLayout layout = getImageLayout(hints);
if (layout.isValid(ImageLayout.TILE_WIDTH_MASK)
|| layout.isValid(ImageLayout.TILE_HEIGHT_MASK)) {
final int type = image.getSampleModel().getDataType();
// ParameterBlock definition
ParameterBlock pb = new ParameterBlock();
pb.setSource(image, 0); // The source image.
pb.set(type, 0);
image = JAI.create("Format", pb, hints);
setNoData(RangeFactory.convert(nodata, type));
}
return this;
}
代码示例来源:origin: geotools/geotools
/** Performs Lookup on the underlying image */
public ImageWorker lookup(LookupTable table) {
// ParameterBlock definition
ParameterBlock pb = new ParameterBlock();
pb.setSource(image, 0);
pb.set(table, 0);
pb.set(roi, 2);
// Convert the NoData
if (nodata != null) {
nodata = RangeFactory.convert(nodata, image.getSampleModel().getDataType());
}
pb.set(nodata, 3);
if (isNoDataNeeded()) {
if (background != null && background.length > 0) {
pb.set(background[0], 1);
}
}
image = JAI.create("Lookup", pb, getRenderingHints());
return this;
}
代码示例来源:origin: geotools/geotools
pb.set(DataBuffer.TYPE_BYTE, 0); // The destination image data type (BYTE)
image = JAI.create("Format", pb, hints);
setNoData(RangeFactory.convert(nodata, DataBuffer.TYPE_BYTE));
代码示例来源:origin: geotools/geotools
setNoData(RangeFactory.convert(nodata, type));
代码示例来源:origin: geotools/geotools
NoDataContainer noDataC = CoverageUtilities.getNoDataProperty(source);
Range noData =
RangeFactory.convert(
noDataC.getAsRange(), image.getSampleModel().getDataType());
CoverageUtilities.setNoDataProperty(properties, noData);
代码示例来源:origin: geotools/geotools
image = JAI.create("Format", pb, hints);
setNoData(RangeFactory.convert(nodata, dataType));
} else {
代码示例来源:origin: it.geosolutions.jaiext.binarize/jt-binarize
/**
* Creates a new instance of <code>BinarizeOpImage</code> in the rendered layer.
*
* @param pb The source image and the input parameters.
* @param hints Optionally contains destination image layout.
*/
public RenderedImage create(ParameterBlock pb, RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Getting source
RenderedImage src = pb.getRenderedSource(0);
// Getting parameters
double threshold = pb.getDoubleParameter(0);
ROI roi = (ROI) pb.getObjectParameter(1);
Range nodata = (Range) pb.getObjectParameter(2);
nodata = RangeFactory.convert(nodata, src.getSampleModel().getDataType());
return new BinarizeOpImage(src, renderHints, layout, threshold, roi, nodata);
}
代码示例来源:origin: geosolutions-it/jai-ext
/**
* Creates a new instance of <code>BinarizeOpImage</code> in the rendered layer.
*
* @param pb The source image and the input parameters.
* @param hints Optionally contains destination image layout.
*/
public RenderedImage create(ParameterBlock pb, RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Getting source
RenderedImage src = pb.getRenderedSource(0);
// Getting parameters
double threshold = pb.getDoubleParameter(0);
ROI roi = (ROI) pb.getObjectParameter(1);
Range nodata = (Range) pb.getObjectParameter(2);
nodata = RangeFactory.convert(nodata, src.getSampleModel().getDataType());
return new BinarizeOpImage(src, renderHints, layout, threshold, roi, nodata);
}
代码示例来源:origin: geosolutions-it/jai-ext
@Test
public void testConvertFloatNaN() {
Range nanDouble = RangeFactory.create(Double.NaN, Double.NaN);
Range nanFloat = RangeFactory.convert(nanDouble, DataBuffer.TYPE_FLOAT);
assertEquals(Float.NaN, nanFloat.getMin());
assertEquals(Float.NaN, nanFloat.getMax());
}
代码示例来源:origin: geosolutions-it/jai-ext
@Test
public void testConvertDoubleNaN() {
Range nanFloat = RangeFactory.create(Float.NaN, Float.NaN);
Range nanDouble = RangeFactory.convert(nanFloat, DataBuffer.TYPE_DOUBLE);
assertEquals(Double.NaN, nanDouble.getMin());
assertEquals(Double.NaN, nanDouble.getMax());
}
}
代码示例来源:origin: geosolutions-it/jai-ext
@Override
public RenderedImage create(ParameterBlock pb, RenderingHints hints) {
// Get ImageLayout from renderHints if present.
ImageLayout layout = RIFUtil.getImageLayoutHint(hints);
// Selection of the source
RenderedImage source = pb.getRenderedSource(0);
// Selection of the parameters
double[] scales = (double[]) pb.getObjectParameter(0);
double[] offsets = (double[]) pb.getObjectParameter(1);
ROI roi = (ROI) pb.getObjectParameter(2);
Range noData = (Range) pb.getObjectParameter(3);
noData = RangeFactory.convert(noData, source.getSampleModel().getDataType());
boolean useRoiAccessor = (Boolean) pb.getObjectParameter(4);
double destinationNoData = pb.getDoubleParameter(5);
// Creation of the new image
return new RescaleOpImage(source, layout, hints, scales, offsets, destinationNoData, roi,
noData, useRoiAccessor);
}
代码示例来源:origin: it.geosolutions.jaiext.lookup/jt-lookup
/**
* Creates a new instance of <code>LookupOpImage</code>.
*
* @param pb The operation parameters.
* @param hints Image RenderingHints.
*/
public RenderedImage create(ParameterBlock pb, RenderingHints renderHints) {
// Get ImageLayout from renderHints if present.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Get the source image
RenderedImage source = pb.getRenderedSource(0);
// Get the image params
LookupTable table = (LookupTable) pb.getObjectParameter(0);
double destinationNoData = pb.getDoubleParameter(1);
ROI roi = (ROI) pb.getObjectParameter(2);
Range noData = (Range) pb.getObjectParameter(3);
noData = RangeFactory.convert(noData, source.getSampleModel().getDataType());
boolean useRoiAccessor = (Boolean) pb.getObjectParameter(4);
// Creation of the lookup image
return new LookupOpImage(source, layout, renderHints, table, destinationNoData, roi,
noData, useRoiAccessor);
}
}
代码示例来源:origin: it.geosolutions.jaiext.rescale/jt-rescale
@Override
public RenderedImage create(ParameterBlock pb, RenderingHints hints) {
// Get ImageLayout from renderHints if present.
ImageLayout layout = RIFUtil.getImageLayoutHint(hints);
// Selection of the source
RenderedImage source = pb.getRenderedSource(0);
// Selection of the parameters
double[] scales = (double[]) pb.getObjectParameter(0);
double[] offsets = (double[]) pb.getObjectParameter(1);
ROI roi = (ROI) pb.getObjectParameter(2);
Range noData = (Range) pb.getObjectParameter(3);
noData = RangeFactory.convert(noData, source.getSampleModel().getDataType());
boolean useRoiAccessor = (Boolean) pb.getObjectParameter(4);
double destinationNoData = pb.getDoubleParameter(5);
// Creation of the new image
return new RescaleOpImage(source, layout, hints, scales, offsets, destinationNoData, roi,
noData, useRoiAccessor);
}
代码示例来源:origin: geosolutions-it/jai-ext
/**
* Creates a new instance of <code>LookupOpImage</code>.
*
* @param pb The operation parameters.
* @param hints Image RenderingHints.
*/
public RenderedImage create(ParameterBlock pb, RenderingHints renderHints) {
// Get ImageLayout from renderHints if present.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Get the source image
RenderedImage source = pb.getRenderedSource(0);
// Get the image params
LookupTable table = (LookupTable) pb.getObjectParameter(0);
double destinationNoData = pb.getDoubleParameter(1);
ROI roi = (ROI) pb.getObjectParameter(2);
Range noData = (Range) pb.getObjectParameter(3);
noData = RangeFactory.convert(noData, source.getSampleModel().getDataType());
boolean useRoiAccessor = (Boolean) pb.getObjectParameter(4);
// Creation of the lookup image
return new LookupOpImage(source, layout, renderHints, table, destinationNoData, roi,
noData, useRoiAccessor);
}
}
代码示例来源:origin: geosolutions-it/jai-ext
private void checkRangeConversion(Range range, int targetType) {
Range converted = RangeFactory.convert(range, targetType);
assertEquals(converted.getMin().intValue(), 255);
assertEquals(converted.getMax().intValue(), 255);
assertTrue(converted.isMinIncluded);
assertTrue(converted.isMaxIncluded);
assertEquals(targetType, converted.getDataType().getDataType());
if (range.getDataType().getDataType() == targetType) {
assertSame(range, converted);
} else {
assertNotSame(range, converted);
}
}
代码示例来源:origin: geosolutions-it/jai-ext
/**
* Creates a new instance of <code>BorderOpImage</code> in the rendered layer.
*
* @param args The source image and the border information
* @param hints Optionally contains destination image layout.
*/
public RenderedImage create(ParameterBlock pb, RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Selection of the source
RenderedImage source = pb.getRenderedSource(0);
// Selection of the parameters
int leftPad = pb.getIntParameter(0);
int rightPad = pb.getIntParameter(1);
int topPad = pb.getIntParameter(2);
int bottomPad = pb.getIntParameter(3);
BorderExtender type = (BorderExtender) pb.getObjectParameter(4);
Range noData = (Range) pb.getObjectParameter(5);
noData = RangeFactory.convert(noData, source.getSampleModel().getDataType());
double destinationNoData = pb.getDoubleParameter(6);
// Creation of the BorderOpImage instance
return new BorderOpImage(source, renderHints, layout, leftPad, rightPad, topPad, bottomPad,
type, noData, destinationNoData);
}
}
内容来源于网络,如有侵权,请联系作者删除!