Package org.web3d.x3d.sai.Texturing
Interface PixelTexture
- All Superinterfaces:
X3DAppearanceChildNode,X3DNode,X3DTexture2DNode,X3DTextureNode
- All Known Implementing Classes:
PixelTextureObject
public interface PixelTexture extends X3DTexture2DNode
PixelTexture creates a 2D-image texture map using a numeric array of pixel values.
X3D node tooltip: [X3DTexture2DNode] PixelTexture creates a 2D-image texture map using a numeric array of pixel values. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) texture-coordinate values in range [0.0, 1.0] for opposite corners of the image.
Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
X3D node tooltip: [X3DTexture2DNode] PixelTexture creates a 2D-image texture map using a numeric array of pixel values. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) texture-coordinate values in range [0.0, 1.0] for opposite corners of the image.
- Hint: this is a good way to bundle image(s) into a single scene file, avoiding multiple downloads.
- Hint: X3D-Edit includes PixelTexture image-conversion import capabilities. https://savage.nps.edu/X3D-Edit/images/PixelTextureImportImage.png
- Warning: aggregate file size can grow dramatically.
- Hint: can contain a single TextureProperties node.
- Hint: insert Shape and Appearance nodes before adding texture.
- Hint: X3D Scene Authoring Hints, Images and Videos https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Images
- Warning: see ComposedCubeMapTexture and TextureBackground for special containerField values.
- Hint: if a texture is opaque, omitting values in the alpha channel can help avoid rendering artifacts related to transparency.
- Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
- Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#Lightingmodel
Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
-
Method Summary
Modifier and Type Method Description int[]getImage()Provide array of int results from inputOutput SFImage field named image.X3DMetadataObjectgetMetadata()Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.booleangetRepeatS()Provide boolean value from initializeOnly SFBool field named repeatS.booleangetRepeatT()Provide boolean value from initializeOnly SFBool field named repeatT.TexturePropertiesgetTextureProperties()Provide TextureProperties instance (using a properly typed node) from initializeOnly SFNode field textureProperties.PixelTexturesetImage(int[] newValue)Accessor method to assign int array to inputOutput SFImage field named image.PixelTexturesetMetadata(X3DMetadataObject newValue)Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.PixelTexturesetRepeatS(boolean newValue)Accessor method to assign boolean value to initializeOnly SFBool field named repeatS.PixelTexturesetRepeatT(boolean newValue)Accessor method to assign boolean value to initializeOnly SFBool field named repeatT.PixelTexturesetTextureProperties(TextureProperties newValue)Accessor method to assign TextureProperties instance (using a properly typed node) to initializeOnly SFNode field textureProperties.
-
Method Details
-
getImage
int[] getImage()Provide array of int results from inputOutput SFImage field named image.
Tooltip: Defines image: width, height, number_of_components per each pixel value, and list of pixel_values. Note that width and height are pixel count, and allowed values for RGBA number_of_components in each pixel value are 1 (intensity), 2 (intensity alpha), 3 (red green blue), 4 (red green blue alpha-opacity).- Warning: the order of initial values in PixelTexture and PixelTexture3D image arrays are different. Example: intensity [1 2 1 0xFF 0x00] Example: intensity-alpha [2 2 1 0 255 255 0] Example: red-green-blue [2 4 3 0xFF0000 0xFF00 0 0 0 0 0xFFFFFF 0xFFFF00] Example: red-green-blue-alpha [2 2 4 0xFFFFFFAA 0xFFFF00AA 0x11111111AA 0x787800AA]
- Hint: it is easier to understand hexadecimal values for each pixel, but integer values are also allowed.
- Hint: the array of pixel values has length = (width*height).
- Hint: the full list of integers in this field has length = (width*height + 3).
- Returns:
- value of image field
-
setImage
Accessor method to assign int array to inputOutput SFImage field named image.
Tooltip: Defines image: width, height, number_of_components per each pixel value, and list of pixel_values. Note that width and height are pixel count, and allowed values for RGBA number_of_components in each pixel value are 1 (intensity), 2 (intensity alpha), 3 (red green blue), 4 (red green blue alpha-opacity).- Warning: the order of initial values in PixelTexture and PixelTexture3D image arrays are different. Example: intensity [1 2 1 0xFF 0x00] Example: intensity-alpha [2 2 1 0 255 255 0] Example: red-green-blue [2 4 3 0xFF0000 0xFF00 0 0 0 0 0xFFFFFF 0xFFFF00] Example: red-green-blue-alpha [2 2 4 0xFFFFFFAA 0xFFFF00AA 0x11111111AA 0x787800AA]
- Hint: it is easier to understand hexadecimal values for each pixel, but integer values are also allowed.
- Hint: the array of pixel values has length = (width*height).
- Hint: the full list of integers in this field has length = (width*height + 3).
- Parameters:
newValue- is new value for the image field.- Returns:
PixelTexture- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getMetadata
X3DMetadataObject getMetadata()Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.- Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadata
- Specified by:
getMetadatain interfaceX3DAppearanceChildNode- Specified by:
getMetadatain interfaceX3DNode- Specified by:
getMetadatain interfaceX3DTexture2DNode- Specified by:
getMetadatain interfaceX3DTextureNode- Returns:
- value of metadata field
- See Also:
- X3D Scene Authoring Hints: Metadata Nodes
-
setMetadata
Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.- Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadata
- Specified by:
setMetadatain interfaceX3DAppearanceChildNode- Specified by:
setMetadatain interfaceX3DNode- Specified by:
setMetadatain interfaceX3DTexture2DNode- Specified by:
setMetadatain interfaceX3DTextureNode- Parameters:
newValue- is new value for the metadata field.- Returns:
PixelTexture- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).- See Also:
- X3D Scene Authoring Hints: Metadata Nodes
-
getRepeatS
boolean getRepeatS()Provide boolean value from initializeOnly SFBool field named repeatS.
Tooltip: Whether to horizontally repeat texture along S axis. *- Specified by:
getRepeatSin interfaceX3DTexture2DNode- Returns:
- value of repeatS field
-
setRepeatS
Accessor method to assign boolean value to initializeOnly SFBool field named repeatS.
Tooltip: Whether to horizontally repeat texture along S axis. *- Specified by:
setRepeatSin interfaceX3DTexture2DNode- Parameters:
newValue- is new value for the repeatS field.- Returns:
PixelTexture- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getRepeatT
boolean getRepeatT()Provide boolean value from initializeOnly SFBool field named repeatT.
Tooltip: Whether to vertically repeat texture along T axis. *- Specified by:
getRepeatTin interfaceX3DTexture2DNode- Returns:
- value of repeatT field
-
setRepeatT
Accessor method to assign boolean value to initializeOnly SFBool field named repeatT.
Tooltip: Whether to vertically repeat texture along T axis. *- Specified by:
setRepeatTin interfaceX3DTexture2DNode- Parameters:
newValue- is new value for the repeatT field.- Returns:
PixelTexture- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getTextureProperties
TextureProperties getTextureProperties()Provide TextureProperties instance (using a properly typed node) from initializeOnly SFNode field textureProperties.- Specified by:
getTexturePropertiesin interfaceX3DTexture2DNode- Returns:
- value of textureProperties field
-
setTextureProperties
Accessor method to assign TextureProperties instance (using a properly typed node) to initializeOnly SFNode field textureProperties.- Specified by:
setTexturePropertiesin interfaceX3DTexture2DNode- Parameters:
newValue- is new value for the textureProperties field.- Returns:
PixelTexture- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-