Package com.luciad.imaging
Class TLcdImageBuilder
java.lang.Object
com.luciad.imaging.TLcdImageBuilder
Builder for creating
ALcdBasicImage
or
ALcdMultilevelImage
instances.
Images can only be created from a single RenderedImage
or one or more
ALcdBasicImage
, not both.
You can find the other available builders on com.luciad.imaging
.- Since:
- 2015.0
-
Method Summary
Modifier and TypeMethodDescriptionbounds
(ILcdBounds aBounds) Set the image bounds.Create a newALcdBasicImage
with the currently defined properties.Create a newALcdMultilevelImage
with the currently defined properties.image
(ALcdBasicImage aBasicImage) Add a source image.image
(RenderedImage aRenderedImage) Add a source image.image
(RenderedImage aRenderedImage, boolean aCacheTiles) Add a source image.imageReference
(ILcdModelReference aImageReference) Set the image reference.images
(List<ALcdBasicImage> aBasicImages) Add a list of images, each representing one level.levelRelationship
(ELcdLevelRelationship aLevelRelationship) Set the level relationship.static TLcdImageBuilder
Create a new image builder.samplingMode
(ELcdImageSamplingMode aSamplingMode) Set the image sampling mode.semantics
(List<? extends ALcdBandSemantics> aSemantics) Set the image band semantics.
-
Method Details
-
newBuilder
Create a new image builder.- Returns:
- a new builder instance
-
buildBasicImage
Create a newALcdBasicImage
with the currently defined properties. To create a basic image, a number of conditions must be met:- Either a
RenderedImage
or a singleALcdBasicImage
must be set. - If a
ALcdBasicImage
is set, other parameters may be defined to override properties of the image.
- Returns:
- a new basic image
- Throws:
IllegalStateException
- when the above conditions are not met
- Either a
-
buildMultilevelImage
Create a newALcdMultilevelImage
with the currently defined properties. To create a multi-level image, a number of conditions must be met:- Either one or more
ALcdBasicImage
must be set or one or moreRenderedImage
must be set. - The level relationship must be set.
- Returns:
- a new multilevel image
- Throws:
IllegalStateException
- when the above conditions are not met
- Either one or more
-
image
Add a source image. Remember thatALcdImage
's are immutable, so the specifiedRenderedImage
must also be immutable.- Parameters:
aRenderedImage
- the source image- Returns:
- this builder
-
image
Add a source image. Remember thatALcdImage
's are immutable, so the specifiedRenderedImage
must also be immutable.- Parameters:
aRenderedImage
- the source imageaCacheTiles
-true
if the decoded tiles should be cached, this should typically be enabled if the image does not perform caching internally- Returns:
- this builder
-
image
Add a source image.- Parameters:
aBasicImage
- the source image to add- Returns:
- this builder
-
images
Add a list of images, each representing one level.- Parameters:
aBasicImages
- the images to be added- Returns:
- this builder
-
bounds
Set the image bounds.- Parameters:
aBounds
- the bounds- Returns:
- this builder
-
imageReference
Set the image reference.- Parameters:
aImageReference
- the image reference- Returns:
- this builder
-
semantics
Set the image band semantics.- Parameters:
aSemantics
- the band semantics- Returns:
- this builder
-
samplingMode
Set the image sampling mode. The default value is @{code ELcdImageSamplingMode#AREA}.- Parameters:
aSamplingMode
- the sampling mode- Returns:
- this builder
-
levelRelationship
Set the level relationship.- Parameters:
aLevelRelationship
- the level relationship- Returns:
- this builder
-