|
Aviatrix3D 2.1.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.j3d.aviatrix3d.SceneGraphObject org.j3d.aviatrix3d.Node org.j3d.aviatrix3d.Leaf org.j3d.aviatrix3d.Background org.j3d.aviatrix3d.SphereBackground
public class SphereBackground
Background node that renders a single user-provided texture on a sphere.
The background geometry is created internally to be a sphere. The user's texture is applied to the sphere such that the seam is located in the direction of the +Z axis (ie behind the viewer from the default view direction along the -Z axis). The top of the texture image is located at the +Y direction. If the texture contains some transparent section(s) then the clear colour can be used as well.
Note that this will take any 2D texture component as the source. However, if that image defines mipmapping, the background ignores it. Only the first (primary) image is used to render the texture.
This will set the background colour to a single colour for the entire
viewport. If used, this will override the setClearColor() on
GraphicsOutputDevice
.
Field Summary | |
---|---|
protected int |
height
The height of the main texture. |
protected boolean |
stateChanged
Flag to say that the display lists must be cleared and regenerated because some state changed |
protected java.util.HashMap<javax.media.opengl.GL,java.lang.Integer> |
textureIdMap
The mapping of GL context to OpenGL texture ID |
protected int |
width
The width of the main texture. |
Fields inherited from class org.j3d.aviatrix3d.Background |
---|
color, dispListMap, INVALID_ALPHA_PROP, INVALID_BLUE_PROP, INVALID_GREEN_PROP, INVALID_RED_PROP, useClearColor |
Fields inherited from class org.j3d.aviatrix3d.Node |
---|
bounds, implicitBounds, INVALID_BOUNDS, parent |
Fields inherited from class org.j3d.aviatrix3d.SceneGraphObject |
---|
alive, LISTENER_SET_TIMING_ERR_PROP, updateHandler |
Constructor Summary | |
---|---|
SphereBackground()
Constructs a background node for a base colour of black. |
|
SphereBackground(float[] c)
Construct a background node for a user-provided colour. |
Method Summary | |
---|---|
void |
cleanup(javax.media.opengl.GL gl)
Cleanup the object now for the given GL context. |
int |
compareTo(java.lang.Object o)
Compares this object with the specified object for order. |
int |
compareTo(SphereBackground bg)
Compares this object with the specified object for order. |
boolean |
equals(java.lang.Object o)
Compare this object for equality to the given object. |
boolean |
equals(SphereBackground bg)
Compares this object with the specified object to check for equivalence. |
void |
getColor(float[] c)
Get the current drawing colour |
TextureComponent2D |
getTexture()
Get the current image that is being used on the background. |
boolean |
is2D()
Check to see whether this shape is something that represents 2D or 3D renderable background. |
void |
postRender(javax.media.opengl.GL gl)
Restore all openGL state to the given drawable. |
void |
render(javax.media.opengl.GL gl)
Issue ogl commands needed for this component |
void |
setColor(float[] c)
Change the colour to the new colour. |
void |
setColor(float r,
float g,
float b,
float a)
Change the colour to the new colour. |
void |
setTexture(TextureComponent2D srcImage)
Set the image source to be used for the background. |
Methods inherited from class org.j3d.aviatrix3d.Background |
---|
compareColor4, equalsColor4, getCullableParent, getRenderable, isColorClearEnabled, markBoundsDirty, setColorClearEnabled |
Methods inherited from class org.j3d.aviatrix3d.Node |
---|
boundsChanged, checkForCyclicParent, getBounds, getParent, recomputeBounds, removeParent, requestBoundsUpdate, setBounds, setParent, updateBounds, updateParentBounds |
Methods inherited from class org.j3d.aviatrix3d.SceneGraphObject |
---|
checkForCyclicChild, dataChanged, getAppUpdateWriteTimingMessage, getBoundsWriteTimingMessage, getDataWriteTimingMessage, getUserData, isLive, setLive, setUpdateHandler, setUserData |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected int width
protected int height
protected boolean stateChanged
protected java.util.HashMap<javax.media.opengl.GL,java.lang.Integer> textureIdMap
Constructor Detail |
---|
public SphereBackground()
public SphereBackground(float[] c)
c
- The array of colours to use, or null
java.lang.IllegalArgumentException
- The colour array is not long enoughMethod Detail |
---|
public void cleanup(javax.media.opengl.GL gl)
cleanup
in interface DeletableRenderable
gl
- The gl context to draw withpublic boolean is2D()
is2D
in interface BackgroundRenderable
public void render(javax.media.opengl.GL gl)
render
in interface ObjectRenderable
gl
- The gl context to draw withpublic void postRender(javax.media.opengl.GL gl)
postRender
in interface ObjectRenderable
gl
- The gl context to draw withpublic int compareTo(java.lang.Object o) throws java.lang.ClassCastException
compareTo
in interface java.lang.Comparable
o
- The objec to be compared
java.lang.ClassCastException
- The specified object's type prevents it from
being compared to this Objectpublic boolean equals(java.lang.Object o)
equals
in interface Renderable
equals
in class java.lang.Object
o
- The object to be compared
public void setColor(float[] c) throws InvalidWriteTimingException
setColor
in class Background
c
- The colour to copy in
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback methodpublic void setColor(float r, float g, float b, float a) throws InvalidWriteTimingException
setColor
in class Background
r
- The red colour component to useg
- The green colour component to useb
- The blue colour component to usea
- The alpha colour component to use
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback methodpublic void getColor(float[] c)
getColor
in class Background
c
- An array of length 4 or more to copy the colour topublic void setTexture(TextureComponent2D srcImage) throws InvalidWriteTimingException
srcImage
- The image data to use
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback methodpublic TextureComponent2D getTexture()
public int compareTo(SphereBackground bg)
bg
- The argument instance to be compared
public boolean equals(SphereBackground bg)
bg
- The background instance to be compared
|
Aviatrix3D 2.1.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |