visad.bom
Class TextureFillRendererJ3D

java.lang.Object
  extended by visad.DataRenderer
      extended by visad.java3d.RendererJ3D
          extended by visad.java3d.DefaultRendererJ3D
              extended by visad.bom.TextureFillRendererJ3D
All Implemented Interfaces:
Cloneable

public class TextureFillRendererJ3D
extends DefaultRendererJ3D

TextureFillRendererJ3D is the VisAD class for rendering Sets (usually Irregular2DSets) filled with a cross hatch pattern via texture mapping


Field Summary
 
Fields inherited from class visad.DataRenderer
enabled, pickCrawlToCursor
 
Constructor Summary
TextureFillRendererJ3D()
           
 
Method Summary
 Object clone()
           
 BranchGroup doTransform()
          create a BranchGroup scene graph for Data in links[0]
 float getScale()
           
 boolean getSmooth()
           
 int[] getTexture()
           
 int getTextureHeight()
           
 int getTextureWidth()
           
static boolean isRendererUsable(MathType type, ScalarMap[] maps)
          determine whether the given MathType and collection of ScalarMaps meets the criteria to use TextureFillRendererJ3D.
static boolean isSetType(MathType type)
          determine whether the given MathType is usable with TextureFillRendererJ3D
static void main(String[] args)
          run 'java visad.bom.TextureFillRendererJ3D smooth'
 ShadowType makeShadowSetType(SetType type, DataDisplayLink link, ShadowType parent)
          factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowSetType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;
 void setScale(float s)
          texture pattern will repreat 2 * s times across box
 void setSmooth(boolean s)
          set s = true to smooth texture
 void setTexture(int w, int h, int[] t)
          define texture pattern as a w * h rectangle of ints (RGB values); note w and h must be powers of 2, and t.length must be w * h
 
Methods inherited from class visad.java3d.DefaultRendererJ3D
addSwitch, clearScene, getLink, setLinks
 
Methods inherited from class visad.java3d.RendererJ3D
clearBranch, doAction, flush, getBranch, makeShadowFunctionType, makeShadowRealTupleType, makeShadowRealType, makeShadowTextType, makeShadowTupleType, setBranchEarly, toggle
 
Methods inherited from class visad.DataRenderer
addException, addPoint, checkAction, checkClose, checkDirect, clearAVControls, clearExceptions, computeRanges, constrainDragPoint, drag_direct, earthToSpatial, earthToSpatial, findRayManifoldIntersection, get_all_feasible, get_any_changed, get_any_transform_control, getBadScale, getDisplay, getDisplayCoordinateSystem, getDisplayRenderer, getEarthDimension, getEarthUnits, getEnabled, getExceptionVector, getIsDirectManipulation, getLastMouseModifiers, getLatLonIndices, getLatLonRange, getLinks, getPickCrawlToCursor, getRanges, getRealVectorTypes, getWhyNotDirect, isLegalTextureMap, isTransformControl, prepareAction, realCheckDirect, release_direct, removeLink, set_all_feasible, setDisplay, setDisplayRenderer, setEarthSpatialData, setEarthSpatialDisplay, setIsDirectManipulation, setLastMouseModifiers, setLatLonIndices, setLinks, setPickCrawlToCursor, setSpatialValues, spatialToEarth, spatialToEarth, stop_direct, suppressExceptions
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextureFillRendererJ3D

public TextureFillRendererJ3D()
Method Detail

setScale

public void setScale(float s)
texture pattern will repreat 2 * s times across box


getScale

public float getScale()

setTexture

public void setTexture(int w,
                       int h,
                       int[] t)
                throws VisADException
define texture pattern as a w * h rectangle of ints (RGB values); note w and h must be powers of 2, and t.length must be w * h

Throws:
VisADException

getTextureWidth

public int getTextureWidth()

getTextureHeight

public int getTextureHeight()

getTexture

public int[] getTexture()

setSmooth

public void setSmooth(boolean s)
set s = true to smooth texture


getSmooth

public boolean getSmooth()

isSetType

public static boolean isSetType(MathType type)
determine whether the given MathType is usable with TextureFillRendererJ3D


isRendererUsable

public static boolean isRendererUsable(MathType type,
                                       ScalarMap[] maps)
                                throws VisADException
determine whether the given MathType and collection of ScalarMaps meets the criteria to use TextureFillRendererJ3D. Throw a VisADException if ImageRenderer cannot be used, otherwise return true.

Throws:
VisADException

makeShadowSetType

public ShadowType makeShadowSetType(SetType type,
                                    DataDisplayLink link,
                                    ShadowType parent)
                             throws VisADException,
                                    RemoteException
Description copied from class: DataRenderer
factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowSetType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;

Overrides:
makeShadowSetType in class RendererJ3D
Parameters:
type - FunctionType that returned ShadowType will shadow
link - DataDisplayLink linking Data to be depicted
parent - parent in ShadowType tree structure
Returns:
constructed ShadowType
Throws:
VisADException - a VisAD error occurred
RemoteException - an RMI error occurred

doTransform

public BranchGroup doTransform()
                        throws VisADException,
                               RemoteException
Description copied from class: DefaultRendererJ3D
create a BranchGroup scene graph for Data in links[0]

Overrides:
doTransform in class DefaultRendererJ3D
Throws:
VisADException
RemoteException

clone

public Object clone()
Overrides:
clone in class DefaultRendererJ3D
Returns:
a copy of this DataRenderer

main

public static void main(String[] args)
                 throws VisADException,
                        RemoteException,
                        IOException
run 'java visad.bom.TextureFillRendererJ3D smooth'

Throws:
VisADException
RemoteException
IOException