Top Description Methods
java.awt.image.renderable

public Interface ContextualRenderedImageFactory

extends RenderedImageFactory
Imports
java.awt.geom.Rectangle2D, java.awt.image.RenderedImage

ContextualRenderedImageFactory provides an interface for the functionality that may differ between instances of RenderableImageOp. Thus different operations on RenderableImages may be performed by a single class such as RenderedImageOp through the use of multiple instances of ContextualRenderedImageFactory. The name ContextualRenderedImageFactory is commonly shortened to "CRIF."

All operations that are to be used in a rendering-independent chain must implement ContextualRenderedImageFactory.

Classes that implement this interface must provide a constructor with no arguments.

Method Summary

Modifier and TypeMethod and Description
public RenderedImage

Returns:

a RenderedImage from the sources and parameters in the specified ParameterBlock and according to the rendering instructions in the specified RenderContext.
create
(RenderContext
The RenderContext specifying the rendering
renderContext
,
ParameterBlock
a ParameterBlock containing the operation's sources and parameters
paramBlock
)

Creates a rendering, given a RenderContext and a ParameterBlock containing the operation's sources and parameters.

public Rectangle2D

Returns:

a Rectangle2D specifying the rendering-independent bounding box of the output.
getBounds2D
(ParameterBlock
a ParameterBlock containing the operation's sources and parameters.
paramBlock
)

Returns the bounding box for the output of the operation, performed on a given set of sources, in rendering-independent space.

public Object

Returns:

an object reference to the value of the property requested.
getProperty
(ParameterBlock
a ParameterBlock containing the operation's sources and parameters.
paramBlock
,
String
a String naming the desired property.
name
)

Gets the appropriate instance of the property specified by the name parameter.

public String[]

Returns:

the list of property names.
getPropertyNames
()

Returns a list of names recognized by getProperty.

public boolean

Returns:

true if successive renderings with the same arguments might produce different results; false otherwise.
isDynamic
()

Returns true if successive renderings (that is, calls to create(RenderContext, ParameterBlock)) with the same arguments may produce different results.

public RenderContext

Returns:

a RenderContext for the source at the specified index of the parameters Vector contained in the specified ParameterBlock.
mapRenderContext
(int
the index of the source image.
i
,
RenderContext
the RenderContext being applied to the operation.
renderContext
,
ParameterBlock
a ParameterBlock containing the operation's sources and parameters.
paramBlock
,
RenderableImage
the RenderableImage being rendered.
image
)

Maps the operation's output RenderContext into a RenderContext for each of the operation's sources.

Inherited from java.awt.image.renderable.RenderedImageFactory:
create

Method Detail

createback to summary
public RenderedImage create(RenderContext renderContext, ParameterBlock paramBlock)

Creates a rendering, given a RenderContext and a ParameterBlock containing the operation's sources and parameters. The output is a RenderedImage that takes the RenderContext into account to determine its dimensions and placement on the image plane. This method houses the "intelligence" that allows a rendering-independent operation to adapt to a specific RenderContext.

Parameters
renderContext:RenderContext

The RenderContext specifying the rendering

paramBlock:ParameterBlock

a ParameterBlock containing the operation's sources and parameters

Returns:RenderedImage

a RenderedImage from the sources and parameters in the specified ParameterBlock and according to the rendering instructions in the specified RenderContext.

getBounds2Dback to summary
public Rectangle2D getBounds2D(ParameterBlock paramBlock)

Returns the bounding box for the output of the operation, performed on a given set of sources, in rendering-independent space. The bounds are returned as a Rectangle2D, that is, an axis-aligned rectangle with floating-point corner coordinates.

Parameters
paramBlock:ParameterBlock

a ParameterBlock containing the operation's sources and parameters.

Returns:Rectangle2D

a Rectangle2D specifying the rendering-independent bounding box of the output.

getPropertyback to summary
public Object getProperty(ParameterBlock paramBlock, String name)

Gets the appropriate instance of the property specified by the name parameter. This method must determine which instance of a property to return when there are multiple sources that each specify the property.

Parameters
paramBlock:ParameterBlock

a ParameterBlock containing the operation's sources and parameters.

name:String

a String naming the desired property.

Returns:Object

an object reference to the value of the property requested.

getPropertyNamesback to summary
public String[] getPropertyNames()

Returns a list of names recognized by getProperty.

Returns:String[]

the list of property names.

isDynamicback to summary
public boolean isDynamic()

Returns true if successive renderings (that is, calls to create(RenderContext, ParameterBlock)) with the same arguments may produce different results. This method may be used to determine whether an existing rendering may be cached and reused. It is always safe to return true.

Returns:boolean

true if successive renderings with the same arguments might produce different results; false otherwise.

mapRenderContextback to summary
public RenderContext mapRenderContext(int i, RenderContext renderContext, ParameterBlock paramBlock, RenderableImage image)

Maps the operation's output RenderContext into a RenderContext for each of the operation's sources. This is useful for operations that can be expressed in whole or in part simply as alterations in the RenderContext, such as an affine mapping, or operations that wish to obtain lower quality renderings of their sources in order to save processing effort or transmission bandwidth. Some operations, such as blur, can also use this mechanism to avoid obtaining sources of higher quality than necessary.

Parameters
i:int

the index of the source image.

renderContext:RenderContext

the RenderContext being applied to the operation.

paramBlock:ParameterBlock

a ParameterBlock containing the operation's sources and parameters.

image:RenderableImage

the RenderableImage being rendered.

Returns:RenderContext

a RenderContext for the source at the specified index of the parameters Vector contained in the specified ParameterBlock.