|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectIIOParam
ImageWriteParam
GeoToolsWriteParams
GeoTiffWriteParams
public class GeoTiffWriteParams
Subclass of GeoToolsWriteParams
the allows the user to specify
parameters to control the process of writing out a GeoTiff file through
standards ImageWriteParam
(with possible extensions).
This class allows the user to control the output tile size for the GeoTiff file we are going to create as well as the possible compression.
An example of usage of this parameters is as follows:
//getting a format
final GeoTiffFormat format = new GeoTiffFormat();
//getting the write parameters
final GeoTiffWriteParams wp = new GeoTiffWriteParams();
//setting compression to LZW
wp.setCompressionMode(GeoTiffWriteParams.MODE_EXPLICIT);
wp.setCompressionType("LZW");
wp.setCompressionQuality(0.75F);
//setting the tile size to 256X256
wp.setTilingMode(GeoToolsWriteParams.MODE_EXPLICIT);
wp.setTiling(256, 256);
//setting the write parameters for this geotiff
final ParameterValueGroup params = format.getWriteParameters();
params.parameter(
AbstractGridFormat.GEOTOOLS_WRITE_PARAMS.getName().toString())
.setValue(wp);
//get a reader to the input File
GridCoverageReader reader = new GeoTiffReader(inFile, null);
GridCoverageWriter writer = null;
GridCoverage2D gc = null;
if (reader != null) {
// reading the coverage
gc = (GridCoverage2D) reader.read(null);
if (gc != null) {
final File writeFile = new File(new StringBuffer(writedir
.getAbsolutePath()).append(File.separatorChar)
.append(gc.getName().toString()).append(".tiff")
.toString());
writer = format.getWriter(writeFile);
writer.write(gc, (GeneralParameterValue[]) params.values()
.toArray(new GeneralParameterValue[1]));
}
Field Summary |
---|
Fields inherited from class GeoToolsWriteParams |
---|
adaptee |
Fields inherited from class IIOParam |
---|
controller, defaultController, destinationOffset, destinationType, sourceBands, sourceRegion, sourceXSubsampling, sourceYSubsampling, subsamplingXOffset, subsamplingYOffset |
Constructor Summary | |
---|---|
GeoTiffWriteParams()
Default constructor. |
Method Summary | |
---|---|
TIFFColorConverter |
getColorConverter()
Returns the current TIFFColorConverter object that
will be used to perform color conversion when writing the
image, or null if none is set. |
int |
getPhotometricInterpretation()
Returns the current value that will be written to the Photometricinterpretation tag. |
TIFFCompressor |
getTIFFCompressor()
Returns the TIFFCompressor that is currently set
to be used by the ImageWriter to encode each image
strip or tile, or null if none has been set. |
boolean |
isCompressionLossless()
|
boolean |
isForceToBigTIFF()
|
void |
setColorConverter(TIFFColorConverter colorConverter,
int photometricInterpretation)
Sets the TIFFColorConverter object describing the
color space to which the input data should be converted for
storage in the input stream. |
void |
setForceToBigTIFF(boolean forceToBigTIFF)
|
void |
setTIFFCompressor(TIFFCompressor compressor)
Sets the TIFFCompressor object to be used by the
ImageWriter to encode each image strip or tile. |
void |
unsetColorConverter()
Removes any currently set ColorConverter object and
PhotometricInterpretation tag value. |
Methods inherited from class ImageWriteParam |
---|
setTiling |
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public GeoTiffWriteParams()
Method Detail |
---|
public void setForceToBigTIFF(boolean forceToBigTIFF)
public boolean isForceToBigTIFF()
public TIFFColorConverter getColorConverter()
TIFFColorConverter
object that
will be used to perform color conversion when writing the
image, or null
if none is set.
TIFFColorConverter
object, or
null
.setColorConverter(TIFFColorConverter, int)
public int getPhotometricInterpretation()
Photometricinterpretation
tag. This method should
only be called if a value has been set using the
setColorConverter
method.
int
to be used as the value of the
PhotometricInterpretation
tag.
IllegalStateException
- if no value is set.setColorConverter(TIFFColorConverter, int)
public TIFFCompressor getTIFFCompressor()
TIFFCompressor
that is currently set
to be used by the ImageWriter
to encode each image
strip or tile, or null
if none has been set.
TIFFCompressor
to be
used for encoding, or null
if none has been set
(allowing the writer to choose its own).
IllegalStateException
- if the compression mode is not
MODE_EXPLICIT
.setTIFFCompressor(TIFFCompressor)
public boolean isCompressionLossless()
isCompressionLossless
in class GeoToolsWriteParams
public void setColorConverter(TIFFColorConverter colorConverter, int photometricInterpretation)
TIFFColorConverter
object describing the
color space to which the input data should be converted for
storage in the input stream. In addition, the value to be
written to the PhotometricInterpretation
tag is
supplied.
colorConverter
- a TIFFColorConverter
object,
or null
.photometricInterpretation
- the value to be written to the
PhotometricInterpretation
tag in the root IFD.getColorConverter()
,
getPhotometricInterpretation()
public void setTIFFCompressor(TIFFCompressor compressor)
TIFFCompressor
object to be used by the
ImageWriter
to encode each image strip or tile.
A value of null
allows the writer to choose its
own TIFFCompressor.
Note that invoking this method is not sufficient to set
the compression type:
must be invoked explicitly for this purpose. The following
code illustrates the correct procedure:
setCompressionType()
TIFFImageWriteParam writeParam; TIFFCompressor compressor; writeParam.setCompressionMode(writeParam.MODE_EXPLICIT); writeParam.setTIFFCompressor(compressor); writeParam.setCompressionType(compressor.getCompressionType());If
compressionType
is set to a value different from
that supported by the TIFFCompressor
then the
compressor object will not be used.
If the compression type supported by the supplied
TIFFCompressor
is not among those in
,
then it will be appended to this array after removing any previously
appended compression type. If compressionTypes
compressor
is
null
this will also cause any previously appended
type to be removed from the array.
compressor
- the TIFFCompressor
to be
used for encoding, or null
to allow the writer to
choose its own.
IllegalStateException
- if the compression mode is not
MODE_EXPLICIT
.getTIFFCompressor()
public void unsetColorConverter()
ColorConverter
object and
PhotometricInterpretation
tag value.
setColorConverter(TIFFColorConverter, int)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |