|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jzy3d.plot3d.primitives.AbstractDrawable
org.jzy3d.plot3d.primitives.AbstractWireframeable
org.jzy3d.plot3d.primitives.CompileableComposite
public class CompileableComposite
A CompileableComposite allows storage and subsequent faster execution
of individual contained instances drawing routines in an OpenGL display list.
Compiling the object take the time needed to render it as a standard
AbstractComposite, and rendering it once it is compiled seems to take
roughly half the time up to now. Since compilation occurs during a draw(), the first call to draw() is supposed to be 1.5x longer than
a standard AbstractComposite, while all next cycles would be 0.5x
longer.
Compilation occurs when the content or the display attributes of this
Composite changes (then all add(), remove(), setColor(),
setWireFrameDisplayed(), etc). One can also force rebuilding the object by
calling recompile();
IMPORTANT: for the moment, CompileableComposite should not be use in
a charts using a Quality superior to Intermediate, in other word, you
should not desire to have alpha enabled in your scene. Indeed, alpha requires
ordering of polygons each time the viewpoint changes, which would require to
recompile the object.
Unsupported in Android / OpenGL ES
| Field Summary | |
|---|---|
protected Color |
color
|
protected List<AbstractDrawable> |
components
|
protected boolean |
detailedToString
|
protected ColorMapper |
mapper
|
| Fields inherited from class org.jzy3d.plot3d.primitives.AbstractWireframeable |
|---|
facestatus, wfcolor, wfstatus, wfwidth |
| Fields inherited from class org.jzy3d.plot3d.primitives.AbstractDrawable |
|---|
bbox, boundingBoxColor, boundingBoxDisplayed, displayed, hasListeners, legend, legendDisplayed, listeners, transform, transformBefore |
| Constructor Summary | |
|---|---|
CompileableComposite()
|
|
| Method Summary | |
|---|---|
void |
add(AbstractDrawable drawable)
Add a Drawable to this composite. |
void |
add(List<? extends AbstractDrawable> drawables)
Append a list of Drawables to this composite. |
void |
applyGeometryTransform(Transform transform)
|
void |
clear()
Clear the list of Drawables from this composite. |
protected void |
compile(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
If you call compile, the display list will be regenerated. |
void |
draw(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
Reset the object if required, compile the object if it is not compiled, and execute actual rendering. |
protected void |
drawComponents(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
|
protected void |
execute(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
|
AbstractDrawable |
get(int p)
Get a Drawable stored by this composite. |
BoundingBox3d |
getBounds()
Return the BoundingBox of this object. |
Color |
getColor()
Get the color. |
ColorMapper |
getColorMapper()
Get the colormapper. |
List<AbstractDrawable> |
getDrawables()
|
boolean |
isDetailedToString()
|
protected void |
nullifyChildrenTransforms()
When a drawable has a null transform, no transform is applied at draw(...). |
void |
recompile()
Force the object to be rebuilt and stored as a display list at the next call to draw(). |
void |
remove(AbstractDrawable drawable)
Remove a Drawable from this composite. |
protected void |
reset(javax.media.opengl.GL gl)
|
void |
setColor(Color color)
Set the color. |
void |
setColorMapper(ColorMapper mapper)
Set the colormapper that will be used by the Drawable, instead of using precomputed colors. |
void |
setDetailedToString(boolean detailedToString)
When to true, the toString() method will give the detail of each
element of this composite object in a tree like layout. |
void |
setFaceDisplayed(boolean status)
Set the face display status to on or off. |
void |
setWireframeColor(Color color)
Set the wireframe color. |
void |
setWireframeDisplayed(boolean status)
Set the wireframe display status to on or off. |
void |
setWireframeWidth(float width)
Set the wireframe width. |
int |
size()
Return the number of Drawable stored by this composite. |
String |
toString()
Print out information concerning all Drawable of this composite. |
String |
toString(int depth)
|
void |
updateBounds()
|
| Methods inherited from class org.jzy3d.plot3d.primitives.AbstractWireframeable |
|---|
getFaceDisplayed, getWireframeColor, getWireframeDisplayed, getWireframeWidth |
| Methods inherited from class org.jzy3d.plot3d.primitives.AbstractDrawable |
|---|
addDrawableListener, call, call, callWithAlphaFactor, dispose, doDrawBounds, doTransform, fireDrawableChanged, fireDrawableChanged, getBarycentre, getBoundingBoxColor, getDistance, getLegend, getLongestDistance, getShortestDistance, getTransform, getTransformBefore, hasLegend, isBoundingBoxDisplayed, isDisplayed, isLegendDisplayed, negative, removeDrawableListener, setBoundingBoxColor, setBoundingBoxDisplayed, setDisplayed, setLegend, setLegendDisplayed, setTransform, setTransformBefore |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected ColorMapper mapper
protected Color color
protected boolean detailedToString
protected List<AbstractDrawable> components
| Constructor Detail |
|---|
public CompileableComposite()
| Method Detail |
|---|
public void recompile()
public void draw(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
draw in interface IGLRendererdraw in class AbstractDrawablegl - GL2 contextglu - GLU contextcam - a reference to a shooting Camera.
protected void compile(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
protected void execute(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
protected void reset(javax.media.opengl.GL gl)
protected void nullifyChildrenTransforms()
protected void drawComponents(javax.media.opengl.GL gl,
javax.media.opengl.glu.GLU glu,
Camera cam)
public void applyGeometryTransform(Transform transform)
applyGeometryTransform in class AbstractDrawablepublic BoundingBox3d getBounds()
AbstractDrawable
getBounds in class AbstractDrawablepublic void updateBounds()
updateBounds in class AbstractDrawablepublic void add(List<? extends AbstractDrawable> drawables)
public void clear()
public void add(AbstractDrawable drawable)
public void remove(AbstractDrawable drawable)
public AbstractDrawable get(int p)
public List<AbstractDrawable> getDrawables()
public int size()
public void setWireframeColor(Color color)
AbstractWireframeable
setWireframeColor in class AbstractWireframeablepublic void setWireframeDisplayed(boolean status)
AbstractWireframeable
setWireframeDisplayed in class AbstractWireframeablepublic void setWireframeWidth(float width)
AbstractWireframeable
setWireframeWidth in class AbstractWireframeablepublic void setFaceDisplayed(boolean status)
AbstractWireframeable
setFaceDisplayed in class AbstractWireframeablepublic void setColorMapper(ColorMapper mapper)
IMultiColorable
setColorMapper in interface IMultiColorablepublic ColorMapper getColorMapper()
IMultiColorable
getColorMapper in interface IMultiColorablepublic void setColor(Color color)
ISingleColorable
setColor in interface ISingleColorablecolor - the colorpublic Color getColor()
ISingleColorable
getColor in interface ISingleColorablepublic String toString()
toString in class AbstractDrawablepublic String toString(int depth)
toString in class AbstractDrawablepublic boolean isDetailedToString()
public void setDetailedToString(boolean detailedToString)
toString() method will give the detail of each
element of this composite object in a tree like layout.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||