| java.lang.Object javax.media.j3d.SceneGraphObject javax.media.j3d.NodeComponent javax.media.j3d.Texture
All known Subclasses: javax.media.j3d.Texture3D, javax.media.j3d.TextureCubeMap, javax.media.j3d.Texture2D,
Texture | abstract public class Texture extends NodeComponent (Code) | | The Texture object is a component object of an Appearance object
that defines the texture properties used when texture mapping is
enabled. The Texture object is an abstract class and all texture
objects must be created as either a Texture2D object or a
Texture3D object.
Each Texture object has the following properties:
- Boundary color - the texture boundary color. The texture
boundary color is used when the boundaryModeS and boundaryModeT
parameters are set to CLAMP or CLAMP_TO_BOUNDARY and if the texture
boundary is not specified.
- Boundary Width - the texture boundary width, which must be 0 or 1.
If the texture boundary
width is 1, then all images for all mipmap levels will include a border.
The actual texture image for level 0, for example, will be of
dimension (width + 2*boundaryWidth) * (height + 2*boundaryWidth).
The boundary texels will be used when linear filtering is to be applied.
- Boundary ModeS and Boundary ModeT - the boundary mode for the
S and T coordinates, respectively. The boundary modes are as
follows:
- CLAMP - clamps texture coordinates to be in the range [0,1].
Texture boundary texels or the constant boundary color if boundary width
is 0 will be used for U,V values that fall outside this range.
- WRAP - repeats the texture by wrapping texture coordinates
that are outside the range [0,1]. Only the fractional portion
of the texture coordinates is used. The integer portion is
discarded
- CLAMP_TO_EDGE - clamps texture coordinates such that filtering
will not sample a texture boundary texel. Texels at the edge of the
texture will be used instead.
- CLAMP_TO_BOUNDARY - clamps texture coordinates such that filtering
will sample only texture boundary texels, that is, it will never
get some samples from the boundary and some from the edge. This
will ensure clean unfiltered boundaries. If the texture does not
have a boundary, that is the boundary width is equal to 0, then the
constant boundary color will be used.
- Image - an image or an array of images for all the mipmap
levels. If only one image is provided, the MIPmap mode must be
set to BASE_LEVEL.
- Magnification filter - the magnification filter function.
Used when the pixel being rendered maps to an area less than or
equal to one texel. The magnification filter functions are as
follows:
- FASTEST - uses the fastest available method for processing
geometry.
- NICEST - uses the nicest available method for processing
geometry.
- BASE_LEVEL_POINT - selects the nearest texel in the base level
texture image.
- BASE_LEVEL_LINEAR - performs a bilinear interpolation on the four
nearest texels in the base level texture image. The texture value T' is
computed as follows:
- LINEAR_SHARPEN - sharpens the resulting image by extrapolating
from the base level plus one image to the base level image of this
texture object.
- LINEAR_SHARPEN_RGB - performs linear sharpen filter for the rgb
components only. The alpha component is computed using BASE_LEVEL_LINEAR
filter.
- LINEAR_SHARPEN_ALPHA - performs linear sharpen filter for the alpha
component only. The rgb components are computed using BASE_LEVEL_LINEAR
filter.
- FILTER4 - applies an application-supplied weight function
on the nearest 4x4 texels in the base level texture image. The
texture value T' is computed as follows:
i1 = trunc(u - 0.5) |
i2 = i1 + 1 |
i3 = i2 + 1 |
i0 = i1 - 1 |
j1 = trunc(v - 0.5) |
j3 = j2 + 1 |
j2 = j1 + 1 |
j0 = j1 - 1 |
a = frac(u - 0.5) |
b = frac(v - 0.5) |
f(x) : filter4 function where 0<=x<=2
T' = f(1+a) * f(1+b) * Ti0j0 +
f(a) * f(1+b) * Ti1j0 +
f(1-a) * f(1+b) * Ti2j0 +
f(2-a) * f(1+b) * Ti3j0 +
f(1+a) * f(b) * Ti0j1 +
f(a) * f(b) * Ti1j1 +
f(1-a) * f(b) * Ti2j1 +
f(2-a) * f(b) * Ti3j1 +
f(1+a) * f(1-b) * Ti0j2 +
f(a) * f(1-b) * Ti1j2 +
f(1-a) * f(1-b) * Ti2j2 +
f(2-a) * f(1-b) * Ti3j2 +
f(1+a) * f(2-b) * Ti0j3 +
f(a) * f(2-b) * Ti1j3 +
f(1-a) * f(2-b) * Ti2j3 +
f(2-a) * f(2-b) * Ti3j3
- Minification filter - the minification filter function. Used
when the pixel being rendered maps to an area greater than one
texel. The minifaction filter functions are as follows:
- FASTEST - uses the fastest available method for processing
geometry.
- NICEST - uses the nicest available method for processing
geometry.
- BASE_LEVEL_POINT - selects the nearest level in the base level
texture map.
- BASE_LEVEL_LINEAR - performs a bilinear interpolation on the four
nearest texels in the base level texture map.
- MULTI_LEVEL_POINT - selects the nearest texel in the nearest
mipmap.
- MULTI_LEVEL_LINEAR - performs trilinear interpolation of texels
between four texels each from the two nearest mipmap levels.
- FILTER4 - applies an application-supplied weight function
on the nearest 4x4 texels in the base level texture image.
- MIPmap mode - the mode used for texture mapping for this
object. The mode is one of the following:
- BASE_LEVEL - indicates that this Texture object only has a
base-level image. If multiple levels are needed, they will be
implicitly computed.
- MULTI_LEVEL_MIPMAP - indicates that this Texture object has
multiple images. If MIPmap mode is set
to MULTI_LEVEL_MIPMAP, images for Base Level through Max Level
must be set.
- Format - the data format. The format is one of the
following:
- INTENSITY - the texture image contains only texture
values.
- LUMINANCE - the texture image contains only
luminance values.
- ALPHA - the texture image contains only alpha
values.
- LUMINANCE_ALPHA - the texture image contains
both luminance and alpha values.
- RGB - the texture image contains red, green,
and blue values.
- RGBA - the texture image contains red, green, blue, and alpha
values.
- Base Level - specifies the mipmap level to be used when filter
specifies BASE_LEVEL_POINT or BASE_LEVEL_LINEAR.
- Maximum Level - specifies the maximum level of image that needs to be
defined for this texture to be valid. Note, for this texture to be valid,
images for Base Level through Maximum Level have to be defined.
- Minimum LOD - specifies the minimum of the LOD range. LOD smaller
than this value will be clamped to this value.
- Maximum LOD - specifies the maximum of the LOD range. LOD larger
than this value will be clamped to this value.
- LOD offset - specifies the offset to be used in the LOD calculation
to compensate for under or over sampled texture images.
- Anisotropic Mode - defines how anisotropic filter is applied for
this texture object. The anisotropic modes are as follows:
- ANISOTROPIC_NONE - no anisotropic filtering.
- ANISOTROPIC_SINGLE_VALUE - applies the degree of anisotropic filter
in both the minification and magnification filters.
- Anisotropic Filter Degree - controls the degree of anisotropy. This
property applies to both minification and magnification filtering.
If it is equal to 1.0, then an isotropic filtering as specified in the
minification or magnification filter will be used. If it is greater
than 1.0, and the anisotropic mode is equal to ANISOTROPIC_SINGLE_VALUE,
then
the degree of anisotropy will also be applied in the filtering.
- Sharpen Texture Function - specifies the function of level-of-detail
used in combining the texture value computed from the base level image
and the texture value computed from the base level plus one image. The
final texture value is computed as follows:
T' = ((1 + SharpenFunc(LOD)) * TBaseLevel) - (SharpenFunc(LOD) * TBaseLevel+1)
- Filter4 Function - specifies the function to be applied to the
nearest 4x4 texels. This property includes samples of the filter
function f(x), 0<=x<=2. The number of function values supplied
has to be equal to 2m + 1 for some integer value of m
greater than or equal to 4.
Note that as of Java 3D 1.5, the texture width and height are no longer
required to be an exact power of two. However, not all graphics devices
supports non-power-of-two textures. If non-power-of-two texture mapping is
unsupported on a particular Canvas3D, textures with a width or height that
are not an exact power of two are ignored for that canvas.
See Also: Canvas3D.queryProperties |
Field Summary | |
final public static int | ALLOW_ANISOTROPIC_FILTER_READ | final public static int | ALLOW_BOUNDARY_COLOR_READ Specifies that this Texture object allows reading its
boundary color information. | final public static int | ALLOW_BOUNDARY_MODE_READ Specifies that this Texture object allows reading its
boundary mode information. | final public static int | ALLOW_ENABLE_READ Specifies that this Texture object allows reading its
enable flag. | final public static int | ALLOW_ENABLE_WRITE Specifies that this Texture object allows writing its
enable flag. | final public static int | ALLOW_FILTER4_READ Specifies that this Texture object allows reading its filter4
function information. | final public static int | ALLOW_FILTER_READ Specifies that this Texture object allows reading its
filter information. | final public static int | ALLOW_FORMAT_READ Specifies that this Texture object allows reading its
format information. | final public static int | ALLOW_IMAGE_READ Specifies that this Texture object allows reading its
image component information. | final public static int | ALLOW_IMAGE_WRITE Specifies that this Texture object allows writing its
image component information. | final public static int | ALLOW_LOD_RANGE_READ | final public static int | ALLOW_LOD_RANGE_WRITE | final public static int | ALLOW_MIPMAP_MODE_READ Specifies that this Texture object allows reading its
mipmap mode information. | final public static int | ALLOW_SHARPEN_TEXTURE_READ Specifies that this Texture object allows reading its sharpen
texture function information. | final public static int | ALLOW_SIZE_READ Specifies that this Texture object allows reading its
size information (e.g., width, height, number of mipmap levels,
boundary width). | final public static int | ALPHA Specifies Texture contains only Alpha values. | final public static int | ANISOTROPIC_NONE No anisotropic filter. | final public static int | ANISOTROPIC_SINGLE_VALUE Uses the degree of anisotropy in both the minification and
magnification filters. | final public static int | BASE_LEVEL Indicates that Texture object only has one level. | final public static int | BASE_LEVEL_LINEAR Performs bilinear interpolation on the four nearest texels
in level 0 texture map. | final public static int | BASE_LEVEL_POINT Select the nearest texel in level 0 texture map. | final public static int | CLAMP Clamps texture coordinates to be in the range [0, 1]. | final public static int | CLAMP_TO_BOUNDARY Clamps texture coordinates such that filtering
will sample only texture boundary texels. | final public static int | CLAMP_TO_EDGE Clamps texture coordinates such that filtering
will not sample a texture boundary texel. | final public static int | FASTEST Uses the fastest available method for processing geometry. | final public static int | FILTER4 Applies an application-supplied weight function
on the nearest 4x4 texels in the base level texture image. | final public static int | INTENSITY Specifies Texture contains only Intensity values. | final public static int | LINEAR_SHARPEN Sharpens the resulting image by extrapolating
from the base level plus one image to the base level image of this
texture object. | final public static int | LINEAR_SHARPEN_ALPHA Performs linear sharpen filter for the alpha
component only. | final public static int | LINEAR_SHARPEN_RGB Performs linear sharpen filter for the rgb
components only. | final public static int | LUMINANCE Specifies Texture contains only luminance values. | final public static int | LUMINANCE_ALPHA Specifies Texture contains Luminance and Alpha values. | final public static int | MULTI_LEVEL_LINEAR Performs tri-linear interpolation of texels between four
texels each from two nearest mipmap levels. | final public static int | MULTI_LEVEL_MIPMAP Indicates that this Texture object has multiple images, one for
each mipmap level. | final public static int | MULTI_LEVEL_POINT Selects the nearest texel in the nearest mipmap. | final public static int | NICEST Uses the nicest available method for processing geometry. | final public static int | RGB Specifies Texture contains Red, Green and Blue color values. | final public static int | RGBA Specifies Texture contains Red, Green, Blue color values
and Alpha value. | final public static int | WRAP Repeats the texture by wrapping texture coordinates that are outside
the range [0,1]. |
Constructor Summary | |
public | Texture() Constructs a Texture object with default parameters. | public | Texture(int mipMapMode, int format, int width, int height) Constructs an empty Texture object with specified mipMapMode,
format, width and height. | public | Texture(int mipMapMode, int format, int width, int height, int boundaryWidth) Constructs an empty Texture object with specified mipMapMode,
format, width, height, and boundaryWidth. |
Method Summary | |
void | duplicateAttributes(NodeComponent originalNodeComponent, boolean forceDuplicate) Copies all node information from originalNodeComponent
into the current node. | boolean | duplicateChild() This function is called from getNodeComponent() to see if any of
the sub-NodeComponents duplicateOnCloneTree flag is true. | public float | getAnisotropicFilterDegree() Retrieves the anisotropic filter degree for this texture object. | public int | getAnisotropicFilterMode() Retrieves the anisotropic filter mode for this texture object. | public int | getBaseLevel() Retrieves the base level for this texture object. | public void | getBoundaryColor(Color4f boundaryColor) Retrieves the texture boundary color for this texture object. | public int | getBoundaryModeS() Retrieves the boundary mode for the S coordinate. | public int | getBoundaryModeT() Retrieves the boundary mode for the T coordinate. | public int | getBoundaryWidth() Retrieves the width of the boundary of this Texture object. | public boolean | getEnable() Retrieves the state of the texture enable flag. | public void | getFilter4Func(float[] weights) Copies the array of filter4 function values into the specified
array. | public int | getFilter4FuncPointsCount() Retrieves the number of filter4 function values for this
texture object. | public int | getFormat() Retrieves the format of this Texture object. | public int | getHeight() Retrieves the height of this Texture object. | public ImageComponent | getImage(int level) Retrieves the image for a specified mipmap level. | public ImageComponent[] | getImages() Retrieves the array of images for all mipmap levels. | static int | getLevelsNPOT(int num) | public void | getLodOffset(Tuple3f offset) Retrieves the LOD offset for this texture object. | public int | getMagFilter() Retrieves the magnification filter. | public float | getMaximumLOD() Retrieves the maximum level-of-detail for this texture object. | public int | getMaximumLevel() Retrieves the maximum level for this texture object. | public int | getMinFilter() Retrieves the minification filter. | public float | getMinimumLOD() Retrieves the minimum level-of-detail for this texture object. | public int | getMipMapMode() Retrieves current mipmap mode. | static int | getPowerOf2(int num) | public void | getSharpenTextureFunc(float[] lod, float[] pts) Copies the array of sharpen texture LOD function points into the
specified arrays. | public void | getSharpenTextureFunc(Point2f[] pts) Copies the array of sharpen texture LOD function points including
the lod values and the corresponding function values into the
specified array. | public int | getSharpenTextureFuncPointsCount() Gets the number of points in the sharpen texture LOD function for this
texture object. | public int | getWidth() Retrieves the width of this Texture object. | public int | numMipMapLevels() Retrieves the number of mipmap levels needed for this Texture object. | public void | setAnisotropicFilterDegree(float degree) Specifies the degree of anisotropy to be
used when the anisotropic filter mode specifies
ANISOTROPIC_SINGLE_VALUE. | public void | setAnisotropicFilterMode(int mode) Specifies the anisotropic filter mode for this texture object.
Parameters: mode - the anisotropic filter mode. | public void | setBaseLevel(int baseLevel) Specifies the base level for this texture object. | public void | setBoundaryColor(Color4f boundaryColor) Sets the texture boundary color for this texture object. | public void | setBoundaryColor(float r, float g, float b, float a) Sets the texture boundary color for this texture object. | public void | setBoundaryModeS(int boundaryModeS) Sets the boundary mode for the S coordinate in this texture object. | public void | setBoundaryModeT(int boundaryModeT) Sets the boundary mode for the T coordinate in this texture object. | public void | setEnable(boolean state) Enables or disables texture mapping for this
appearance component object. | public void | setFilter4Func(float[] weights) sets the filter4 function for this texture object. | public void | setImage(int level, ImageComponent image) Sets the image for a specified mipmap level. | public void | setImages(ImageComponent[] images) Sets the array of images for all mipmap levels. | public void | setLodOffset(float s, float t, float r) Specifies the LOD offset for this texture object. | public void | setLodOffset(Tuple3f offset) Specifies the LOD offset for this texture object. | public void | setMagFilter(int magFilter) Sets the magnification filter function. | public void | setMaximumLOD(float maximumLod) Specifies the maximum level-of-detail for this texture object. | public void | setMaximumLevel(int maximumLevel) Specifies the maximum level for this texture object. | public void | setMinFilter(int minFilter) Sets the minification filter function. | public void | setMinimumLOD(float minimumLod) Specifies the minimum level-of-detail for this texture object. | public void | setMipMapMode(int mipMapMode) Sets mipmap mode for texture mapping for this texture object. | public void | setSharpenTextureFunc(float[] lod, float[] pts) sets the sharpen texture LOD function for this texture object. | public void | setSharpenTextureFunc(Point2f[] pts) sets the sharpen texture LOD function for this texture object. |
ALLOW_ANISOTROPIC_FILTER_READ | final public static int ALLOW_ANISOTROPIC_FILTER_READ(Code) | | Specifies that this Texture object allows reading its anistropic
filter information (e.g., anisotropic mode, anisotropic filter)
since: Java 3D 1.3 |
ALLOW_BOUNDARY_COLOR_READ | final public static int ALLOW_BOUNDARY_COLOR_READ(Code) | | Specifies that this Texture object allows reading its
boundary color information.
|
ALLOW_BOUNDARY_MODE_READ | final public static int ALLOW_BOUNDARY_MODE_READ(Code) | | Specifies that this Texture object allows reading its
boundary mode information.
|
ALLOW_ENABLE_READ | final public static int ALLOW_ENABLE_READ(Code) | | Specifies that this Texture object allows reading its
enable flag.
|
ALLOW_ENABLE_WRITE | final public static int ALLOW_ENABLE_WRITE(Code) | | Specifies that this Texture object allows writing its
enable flag.
|
ALLOW_FILTER4_READ | final public static int ALLOW_FILTER4_READ(Code) | | Specifies that this Texture object allows reading its filter4
function information.
since: Java 3D 1.3 |
ALLOW_FILTER_READ | final public static int ALLOW_FILTER_READ(Code) | | Specifies that this Texture object allows reading its
filter information.
|
ALLOW_FORMAT_READ | final public static int ALLOW_FORMAT_READ(Code) | | Specifies that this Texture object allows reading its
format information.
since: Java 3D 1.2 |
ALLOW_IMAGE_READ | final public static int ALLOW_IMAGE_READ(Code) | | Specifies that this Texture object allows reading its
image component information.
|
ALLOW_IMAGE_WRITE | final public static int ALLOW_IMAGE_WRITE(Code) | | Specifies that this Texture object allows writing its
image component information.
since: Java 3D 1.2 |
ALLOW_LOD_RANGE_READ | final public static int ALLOW_LOD_RANGE_READ(Code) | | Specifies that this Texture object allows reading its LOD range
information (e.g., base level, maximum level, minimum lod,
maximum lod, lod offset)
since: Java 3D 1.3 |
ALLOW_LOD_RANGE_WRITE | final public static int ALLOW_LOD_RANGE_WRITE(Code) | | Specifies that this Texture object allows writing its LOD range
information (e.g., base level, maximum level, minimum lod,
maximum lod, lod offset)
since: Java 3D 1.3 |
ALLOW_MIPMAP_MODE_READ | final public static int ALLOW_MIPMAP_MODE_READ(Code) | | Specifies that this Texture object allows reading its
mipmap mode information.
|
ALLOW_SHARPEN_TEXTURE_READ | final public static int ALLOW_SHARPEN_TEXTURE_READ(Code) | | Specifies that this Texture object allows reading its sharpen
texture function information.
since: Java 3D 1.3 |
ALLOW_SIZE_READ | final public static int ALLOW_SIZE_READ(Code) | | Specifies that this Texture object allows reading its
size information (e.g., width, height, number of mipmap levels,
boundary width).
since: Java 3D 1.2 |
ALPHA | final public static int ALPHA(Code) | | Specifies Texture contains only Alpha values.
|
ANISOTROPIC_SINGLE_VALUE | final public static int ANISOTROPIC_SINGLE_VALUE(Code) | | Uses the degree of anisotropy in both the minification and
magnification filters.
since: Java 3D 1.3 See Also: Texture.setAnisotropicFilterMode |
BASE_LEVEL | final public static int BASE_LEVEL(Code) | | Indicates that Texture object only has one level. If multiple
levels are needed, they will be implicitly computed.
|
CLAMP | final public static int CLAMP(Code) | | Clamps texture coordinates to be in the range [0, 1].
Texture boundary texels or the constant boundary color if boundary
width is 0 will be used for U,V values that fall
outside this range.
|
CLAMP_TO_BOUNDARY | final public static int CLAMP_TO_BOUNDARY(Code) | | Clamps texture coordinates such that filtering
will sample only texture boundary texels. If the texture does not
have a boundary, that is the boundary width is equal to 0, then the
constant boundary color will be used.
since: Java 3D 1.3 |
CLAMP_TO_EDGE | final public static int CLAMP_TO_EDGE(Code) | | Clamps texture coordinates such that filtering
will not sample a texture boundary texel. Texels at the edge of the
texture will be used instead.
since: Java 3D 1.3 |
FASTEST | final public static int FASTEST(Code) | | Uses the fastest available method for processing geometry.
This value can be used as a parameter to setMinFilter and
setMagFilter.
See Also: Texture.setMinFilter See Also: Texture.setMagFilter |
FILTER4 | final public static int FILTER4(Code) | | Applies an application-supplied weight function
on the nearest 4x4 texels in the base level texture image.
since: Java 3D 1.3 See Also: Texture.setMinFilter See Also: Texture.setMagFilter |
INTENSITY | final public static int INTENSITY(Code) | | Specifies Texture contains only Intensity values.
|
LINEAR_SHARPEN | final public static int LINEAR_SHARPEN(Code) | | Sharpens the resulting image by extrapolating
from the base level plus one image to the base level image of this
texture object.
since: Java 3D 1.3 See Also: Texture.setMagFilter |
LINEAR_SHARPEN_ALPHA | final public static int LINEAR_SHARPEN_ALPHA(Code) | | Performs linear sharpen filter for the alpha
component only. The rgb components are computed using
BASE_LEVEL_LINEAR filter.
since: Java 3D 1.3 See Also: Texture.setMagFilter |
LINEAR_SHARPEN_RGB | final public static int LINEAR_SHARPEN_RGB(Code) | | Performs linear sharpen filter for the rgb
components only. The alpha component is computed using
BASE_LEVEL_LINEAR filter.
since: Java 3D 1.3 See Also: Texture.setMagFilter |
LUMINANCE | final public static int LUMINANCE(Code) | | Specifies Texture contains only luminance values.
|
LUMINANCE_ALPHA | final public static int LUMINANCE_ALPHA(Code) | | Specifies Texture contains Luminance and Alpha values.
|
MULTI_LEVEL_LINEAR | final public static int MULTI_LEVEL_LINEAR(Code) | | Performs tri-linear interpolation of texels between four
texels each from two nearest mipmap levels.
Maps to LINEAR_MIPMAP_LINEAR, but an implementation can
fall back to LINEAR_MIPMAP_NEAREST or NEAREST_MIPMAP_LINEAR.
See Also: Texture.setMinFilter |
MULTI_LEVEL_MIPMAP | final public static int MULTI_LEVEL_MIPMAP(Code) | | Indicates that this Texture object has multiple images, one for
each mipmap level. In this mode, there are
log2(max(width,height))+1
separate images.
|
MULTI_LEVEL_POINT | final public static int MULTI_LEVEL_POINT(Code) | | Selects the nearest texel in the nearest mipmap.
Maps to NEAREST_MIPMAP_NEAREST.
See Also: Texture.setMinFilter |
NICEST | final public static int NICEST(Code) | | Uses the nicest available method for processing geometry.
This value can be used as a parameter to setMinFilter and
setMagFilter.
See Also: Texture.setMinFilter See Also: Texture.setMagFilter |
RGB | final public static int RGB(Code) | | Specifies Texture contains Red, Green and Blue color values.
|
RGBA | final public static int RGBA(Code) | | Specifies Texture contains Red, Green, Blue color values
and Alpha value.
|
WRAP | final public static int WRAP(Code) | | Repeats the texture by wrapping texture coordinates that are outside
the range [0,1]. Only the fractional portion of the texture
coordinates is used; the integer portion is discarded.
|
Texture | public Texture()(Code) | | Constructs a Texture object with default parameters.
The default values are as follows:
enable flag : true
width : 0
height : 0
mipmap mode : BASE_LEVEL
format : RGB
boundary mode S : WRAP
boundary mode T : WRAP
min filter : BASE_LEVEL_POINT
mag filter : BASE_LEVEL_POINT
boundary color : black (0,0,0,0)
boundary width : 0
array of images : null
baseLevel : 0
maximumLevel : log2(max(width,height))
minimumLOD : -1000.0
maximumLOD : 1000.0
lod offset : (0, 0, 0)
anisotropic mode : ANISOTROPIC_NONE
anisotropic filter : 1.0
sharpen texture func: null
filter4 func: null
Note that the default constructor creates a texture object with
a width and height of 0 and is, therefore, not useful.
|
Texture | public Texture(int mipMapMode, int format, int width, int height)(Code) | | Constructs an empty Texture object with specified mipMapMode,
format, width and height. Defaults are used for all other
parameters. If mipMapMode is set to
BASE_LEVEL , then the image at level 0 must be set
by the application (using either the setImage or
setImages method). If mipMapMode is
set to MULTI_LEVEL_MIPMAP , then images for levels
Base Level through Maximum Level must be set.
Note that a texture with a non-power-of-two width or height will
only be rendered on a graphics device that supports non-power-of-two
textures.
Parameters: mipMapMode - type of mipmap for this Texture: one ofBASE_LEVEL, MULTI_LEVEL_MIPMAP Parameters: format - data format of Textures saved in this object.One of INTENSITY, LUMINANCE, ALPHA, LUMINANCE_ALPHA, RGB, RGBA Parameters: width - width of image at level 0. Parameters: height - height of image at level 0. exception: IllegalArgumentException - if width or height are not greaterthan 0, or if an invalid format or mipMapMode is specified. |
Texture | public Texture(int mipMapMode, int format, int width, int height, int boundaryWidth)(Code) | | Constructs an empty Texture object with specified mipMapMode,
format, width, height, and boundaryWidth.
Defaults are used for all other
parameters. If mipMapMode is set to
BASE_LEVEL , then the image at level 0 must be set
by the application (using either the setImage or
setImages method). If mipMapMode is
set to MULTI_LEVEL_MIPMAP , then images for levels
Base Level through Maximum Level must be set.
Note that a texture with a non-power-of-two width or height will
only be rendered on a graphics device that supports non-power-of-two
textures.
Parameters: mipMapMode - type of mipmap for this Texture: one ofBASE_LEVEL, MULTI_LEVEL_MIPMAP Parameters: format - data format of Textures saved in this object.One of INTENSITY, LUMINANCE, ALPHA, LUMINANCE_ALPHA, RGB, RGBA Parameters: width - width of image at level 0. Thisdoes not include the width of the boundary. Parameters: height - height of image at level 0. Thisdoes not include the width of the boundary. Parameters: boundaryWidth - width of the boundary, which must be 0 or 1. exception: IllegalArgumentException - if width or height are not greaterthan 0, if an invalid format or mipMapMode is specified, orif the boundaryWidth is < 0 or > 1 since: Java 3D 1.3 |
duplicateAttributes | void duplicateAttributes(NodeComponent originalNodeComponent, boolean forceDuplicate)(Code) | | Copies all node information from originalNodeComponent
into the current node. This method is called from the
duplicateNode method. This routine does
the actual duplication of all "local data" (any data defined in
this object).
Parameters: originalNodeComponent - the original node to duplicate. Parameters: forceDuplicate - when set to true , causes theduplicateOnCloneTree flag to be ignored. Whenfalse , the value of each node'sduplicateOnCloneTree variable determines whetherNodeComponent data is duplicated or copied. See Also: Node.cloneTree See Also: NodeComponent.setDuplicateOnCloneTree |
duplicateChild | boolean duplicateChild()(Code) | | This function is called from getNodeComponent() to see if any of
the sub-NodeComponents duplicateOnCloneTree flag is true.
If it is the case, current NodeComponent needs to
duplicate also even though current duplicateOnCloneTree flag is false.
This should be overwrite by NodeComponent which contains sub-NodeComponent.
|
getAnisotropicFilterDegree | public float getAnisotropicFilterDegree()(Code) | | Retrieves the anisotropic filter degree for this texture object.
the current degree of anisotropy of this texture object exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getAnisotropicFilterMode | public int getAnisotropicFilterMode()(Code) | | Retrieves the anisotropic filter mode for this texture object.
the currrent anisotropic filter mode of this texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getBaseLevel | public int getBaseLevel()(Code) | | Retrieves the base level for this texture object.
base level for this texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getBoundaryColor | public void getBoundaryColor(Color4f boundaryColor)(Code) | | Retrieves the texture boundary color for this texture object.
Parameters: boundaryColor - the vector that will receive thecurrent texture boundary color. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getBoundaryModeS | public int getBoundaryModeS()(Code) | | Retrieves the boundary mode for the S coordinate.
the current boundary mode for the S coordinate. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getBoundaryModeT | public int getBoundaryModeT()(Code) | | Retrieves the boundary mode for the T coordinate.
the current boundary mode for the T coordinate. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getBoundaryWidth | public int getBoundaryWidth()(Code) | | Retrieves the width of the boundary of this Texture object.
the width of the boundary of this Texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getEnable | public boolean getEnable()(Code) | | Retrieves the state of the texture enable flag.
true if texture mapping is enabled,false if texture mapping is disabled exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getFilter4Func | public void getFilter4Func(float[] weights)(Code) | | Copies the array of filter4 function values into the specified
array. The array must be large enough to hold all the values.
Parameters: weights - the array to receive the function values. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getFilter4FuncPointsCount | public int getFilter4FuncPointsCount()(Code) | | Retrieves the number of filter4 function values for this
texture object.
the number of filter4 function values exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getFormat | public int getFormat()(Code) | | Retrieves the format of this Texture object.
the format of this Texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.2 |
getHeight | public int getHeight()(Code) | | Retrieves the height of this Texture object.
the height of this Texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.2 |
getImage | public ImageComponent getImage(int level)(Code) | | Retrieves the image for a specified mipmap level.
Parameters: level - mipmap level to get: 0 is the base level the ImageComponent object containing the texture image atthe specified mipmap level. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getImages | public ImageComponent[] getImages()(Code) | | Retrieves the array of images for all mipmap levels.
the array of ImageComponent objects for this Texture. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.2 |
getLevelsNPOT | static int getLevelsNPOT(int num)(Code) | | |
getLodOffset | public void getLodOffset(Tuple3f offset)(Code) | | Retrieves the LOD offset for this texture object.
Parameters: offset - the vector that will receive thecurrent LOD offset. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getMagFilter | public int getMagFilter()(Code) | | Retrieves the magnification filter.
the current magnification filter function. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getMaximumLOD | public float getMaximumLOD()(Code) | | Retrieves the maximum level-of-detail for this texture object.
the maximum level-of-detail exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getMaximumLevel | public int getMaximumLevel()(Code) | | Retrieves the maximum level for this texture object.
maximum level for this texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getMinFilter | public int getMinFilter()(Code) | | Retrieves the minification filter.
the current minification filter function. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getMinimumLOD | public float getMinimumLOD()(Code) | | Retrieves the minimum level-of-detail for this texture object.
the minimum level-of-detail exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getMipMapMode | public int getMipMapMode()(Code) | | Retrieves current mipmap mode.
current mipmap mode of this texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
getPowerOf2 | static int getPowerOf2(int num)(Code) | | |
getSharpenTextureFunc | public void getSharpenTextureFunc(float[] lod, float[] pts)(Code) | | Copies the array of sharpen texture LOD function points into the
specified arrays. The arrays must be large enough to hold all the
points.
Parameters: lod - the array to receive the level-of-detail values. Parameters: pts - the array to receive the function values for the corresponding level-of-detail values. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getSharpenTextureFunc | public void getSharpenTextureFunc(Point2f[] pts)(Code) | | Copies the array of sharpen texture LOD function points including
the lod values and the corresponding function values into the
specified array. The array must be large enough to hold all the points.
The individual array elements must be allocated by the caller as well.
Parameters: pts - the array to receive the sharpen texture LOD function points exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getSharpenTextureFuncPointsCount | public int getSharpenTextureFuncPointsCount()(Code) | | Gets the number of points in the sharpen texture LOD function for this
texture object.
the number of points in the sharpen texture LOD function. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 |
getWidth | public int getWidth()(Code) | | Retrieves the width of this Texture object.
the width of this Texture object. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.2 |
numMipMapLevels | public int numMipMapLevels()(Code) | | Retrieves the number of mipmap levels needed for this Texture object.
(maximum Level - base Level + 1) if mipMapMode isMULTI_LEVEL_MIPMAP ; otherwise it returns 1. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.2 |
setAnisotropicFilterDegree | public void setAnisotropicFilterDegree(float degree)(Code) | | Specifies the degree of anisotropy to be
used when the anisotropic filter mode specifies
ANISOTROPIC_SINGLE_VALUE.
Parameters: degree - degree of anisotropy exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - ifdegree < 1.0 ordegree > the maximum degree of anisotropy. since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setAnisotropicFilterMode | public void setAnisotropicFilterMode(int mode)(Code) | | Specifies the anisotropic filter mode for this texture object.
Parameters: mode - the anisotropic filter mode. One ofANISOTROPIC_NONE or ANISOTROPIC_SINGLE_VALUE. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - ifmode is a value other thanANISOTROPIC_NONE or ANISOTROPIC_SINGLE_VALUE since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setBaseLevel | public void setBaseLevel(int baseLevel)(Code) | | Specifies the base level for this texture object.
Parameters: baseLevel - index of the lowest defined mipmap level. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph exception: IllegalArgumentException - if specified baseLevel < 0, orif baseLevel > maximumLevel since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setBoundaryColor | public void setBoundaryColor(Color4f boundaryColor)(Code) | | Sets the texture boundary color for this texture object. The
texture boundary color is used when boundaryModeS or boundaryModeT
is set to CLAMP or CLAMP_TO_BOUNDARY and if texture boundary is not
specified.
Parameters: boundaryColor - the new texture boundary color. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. |
setBoundaryColor | public void setBoundaryColor(float r, float g, float b, float a)(Code) | | Sets the texture boundary color for this texture object. The
texture boundary color is used when boundaryModeS or boundaryModeT
is set to CLAMP or CLAMP_TO_BOUNDARY and if texture boundary is not
specified.
Parameters: r - the red component of the color. Parameters: g - the green component of the color. Parameters: b - the blue component of the color. Parameters: a - the alpha component of the color. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. |
setBoundaryModeS | public void setBoundaryModeS(int boundaryModeS)(Code) | | Sets the boundary mode for the S coordinate in this texture object.
Parameters: boundaryModeS - the boundary mode for the S coordinate.One of: CLAMP, WRAP, CLAMP_TO_EDGE, or CLAMP_TO_BOUNDARY. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - if boundaryModeS is a value other than CLAMP , WRAP ,CLAMP_TO_EDGE , or CLAMP_TO_BOUNDARY . |
setBoundaryModeT | public void setBoundaryModeT(int boundaryModeT)(Code) | | Sets the boundary mode for the T coordinate in this texture object.
Parameters: boundaryModeT - the boundary mode for the T coordinate.One of: CLAMP, WRAP, CLAMP_TO_EDGE, or CLAMP_TO_BOUNDARY. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - if boundaryModeT is a value other than CLAMP , WRAP ,CLAMP_TO_EDGE , or CLAMP_TO_BOUNDARY . |
setEnable | public void setEnable(boolean state)(Code) | | Enables or disables texture mapping for this
appearance component object.
Parameters: state - true or false to enable or disable texture mapping exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph |
setFilter4Func | public void setFilter4Func(float[] weights)(Code) | | sets the filter4 function for this texture object.
Parameters: weights - array containing samples of the filter4 function. exception: IllegalArgumentException - if the length of weight < 4 exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setImage | public void setImage(int level, ImageComponent image)(Code) | | Sets the image for a specified mipmap level. Note that the image size
must be the correct size for the specified mipmap level. The image size
of the base level image, that is level 0, must be the same size
in each dimension (width, height, depth) as this
texture, excluding the border, if any.
Each successive mipmap level must be 1/2 the size of the previous level,
such that size[n] = floor(size[n-1]/2) , exluding
the border.
Parameters: level - mipmap level to set: 0 is the base level Parameters: image - ImageComponent object containing the texture imagefor the specified mipmap level exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph exception: IllegalArgumentException - if an ImageComponent3D isused in a Texture2D object or if an ImageComponent2D is used in aTexture3D object. exception: IllegalArgumentException - if the image being set at thislevel is not the correct size for this level. exception: IllegalSharingException - if this Texture is live andthe specified image is being used by a Canvas3D as an off-screen buffer. exception: IllegalSharingException - if this Texture isbeing used by an immediate mode context andthe specified image is being used by a Canvas3D as an off-screen buffer. |
setImages | public void setImages(ImageComponent[] images)(Code) | | Sets the array of images for all mipmap levels. Note that the image size
of the base level image, images[0] , must be the same size
in each dimension (width, height, depth) as this
texture, excluding the border, if any.
Each successive mipmap level must be 1/2 the size of the previous level,
such that size[n] = floor(size[n-1]/2) , exluding
the border.
Parameters: images - array of ImageComponent objectscontaining the texture images for all mipmap levels exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph exception: IllegalArgumentException - if an ImageComponent3D isused in a Texture2D object or if an ImageComponent2D is used in aTexture3D object. exception: IllegalArgumentException - if images.length isnot equal to the total number of mipmap levels. exception: IllegalArgumentException - if the size of each dimensionof the image at a given level in theimages array is not the correct size. exception: IllegalSharingException - if this Texture is live andany of the specified images are being used by a Canvas3D as anoff-screen buffer. exception: IllegalSharingException - if this Texture isbeing used by an immediate mode context andany of the specified images are being used by a Canvas3D as anoff-screen buffer. since: Java 3D 1.2 |
setLodOffset | public void setLodOffset(float s, float t, float r)(Code) | | Specifies the LOD offset for this texture object.
Parameters: s - the s component of the LOD offset Parameters: t - the t component of the LOD offset Parameters: r - the r component of the LOD offset exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setLodOffset | public void setLodOffset(Tuple3f offset)(Code) | | Specifies the LOD offset for this texture object.
Parameters: offset - the LOD offset exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setMagFilter | public void setMagFilter(int magFilter)(Code) | | Sets the magnification filter function. This
function is used when the pixel being rendered maps to an area
less than or equal to one texel.
Parameters: magFilter - the magnification filter, one of:FASTEST, NICEST, BASE_LEVEL_POINT, BASE_LEVEL_LINEAR, LINEAR_SHARPEN, LINEAR_SHARPEN_RGB, LINEAR_SHARPEN_ALPHA, or FILTER4. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - if magFilter is a value other than FASTEST , NICEST ,BASE_LEVEL_POINT , BASE_LEVEL_LINEAR ,LINEAR_SHARPEN , LINEAR_SHARPEN_RGB , LINEAR_SHARPEN_ALPHA , orFILTER4 . See Also: Canvas3D.queryProperties |
setMaximumLOD | public void setMaximumLOD(float maximumLod)(Code) | | Specifies the maximum level-of-detail for this texture object.
Parameters: maximumLod - the maximum level-of-detail. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph exception: IllegalArgumentException - if specified lod < minimum lod since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setMaximumLevel | public void setMaximumLevel(int maximumLevel)(Code) | | Specifies the maximum level for this texture object.
Parameters: maximumLevel - index of the highest defined mipmap level. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph exception: IllegalArgumentException - if specified maximumLevel < baseLevel, orif maximumLevel > log2(max(width,height)) exception: IllegalArgumentException - if mipMipMapMode is equal to BASE_LEVEL and maximumLevel is not equal to zero. since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setMinFilter | public void setMinFilter(int minFilter)(Code) | | Sets the minification filter function. This
function is used when the pixel being rendered maps to an area
greater than one texel.
Parameters: minFilter - the minification filter. One of:FASTEST, NICEST, BASE_LEVEL_POINT, BASE_LEVEL_LINEAR, MULTI_LEVEL_POINT, MULTI_LEVEL_LINEAR, or FILTER4 exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - if minFilter is a value other than FASTEST , NICEST ,BASE_LEVEL_POINT , BASE_LEVEL_LINEAR ,MULTI_LEVEL_POINT , MULTI_LEVEL_LINEAR , orFILTER4 . See Also: Canvas3D.queryProperties |
setMinimumLOD | public void setMinimumLOD(float minimumLod)(Code) | | Specifies the minimum level-of-detail for this texture object.
Parameters: minimumLod - the minimum level-of-detail. exception: CapabilityNotSetException - if appropriate capability isnot set and this object is part of live or compiled scene graph exception: IllegalArgumentException - if specified lod > maximum lod since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setMipMapMode | public void setMipMapMode(int mipMapMode)(Code) | | Sets mipmap mode for texture mapping for this texture object.
Parameters: mipMapMode - the new mipmap mode for this object. One of:BASE_LEVEL or MULTI_LEVEL_MIPMAP. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. exception: IllegalArgumentException - if mipMapMode is a value other than BASE_LEVEL or MULTI_LEVEL_MIPMAP . |
setSharpenTextureFunc | public void setSharpenTextureFunc(float[] lod, float[] pts)(Code) | | sets the sharpen texture LOD function for this texture object.
Parameters: lod - array containing the level-of-detail values. Parameters: pts - array containing the function values for the correspondinglevel-of-detail values. exception: IllegalStateException - if the length of lod does not match the length of pts exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
setSharpenTextureFunc | public void setSharpenTextureFunc(Point2f[] pts)(Code) | | sets the sharpen texture LOD function for this texture object.
The Point2f x,y values are defined as follows: x is the lod value,
y is the corresponding function value.
Parameters: pts - array of Point2f containing the lod as well as the corresponding function value. exception: RestrictedAccessException - if the method is calledwhen this object is part of live or compiled scene graph. since: Java 3D 1.3 See Also: Canvas3D.queryProperties |
Fields inherited from javax.media.j3d.NodeComponent | boolean forceDuplicate(Code)(Java Doc)
|
|
|