Class Volume
java.lang.Object
org.jzy3d.plot3d.primitives.Drawable
org.jzy3d.plot3d.primitives.volume.Volume
- All Implemented Interfaces:
IGLBindedResource
,IGLRenderer
,ISortableDraw
https://developer.nvidia.com/gpugems/gpugems/part-vi-beyond-triangles/chapter-39-volume-rendering-techniques
https://www.codeproject.com/Articles/352270/Getting-Started-with-Volume-Rendering-using-OpenGL
https://community.khronos.org/t/volume-rendering-with-3d-textures/73681
-
Field Summary
Modifier and TypeFieldDescriptionprotected Buffer
protected boolean
protected boolean
protected int[]
protected int
The GL texture ID.Fields inherited from class org.jzy3d.plot3d.primitives.Drawable
bbox, boundingBoxColor, boundingBoxDisplayed, displayed, hasListeners, legend, legendDisplayed, listeners, spaceTransformer, transform, transformBefore
-
Constructor Summary
ConstructorDescriptionVolume
(FloatBuffer buffer, int[] shape, BoundingBox3d bbox) Instanciate a drawable volume. -
Method Summary
Modifier and TypeMethodDescriptionvoid
applyGeometryTransform
(Transform transform) void
bind
(com.jogamp.opengl.GL2 gl) void
dispose()
Performs all required operation to cleanup the Drawable.void
Call OpenGL2 routines for rendering the object.boolean
Return true if mount(...) has been called at least one timevoid
Mount resources to gl contextvoid
Methods inherited from class org.jzy3d.plot3d.primitives.Drawable
addDrawableListener, asWireframeable, doDrawBoundsIfDisplayed, doTransform, fireDrawableChanged, fireDrawableChanged, getBarycentre, getBoundingBoxColor, getBounds, getDistance, getLegend, getLongestDistance, getShortestDistance, getSpaceTransformer, getTransform, getTransformBefore, hasLegend, isBoundingBoxDisplayed, isDisplayed, isLegendDisplayed, removeDrawableListener, setBoundingBoxColor, setBoundingBoxDisplayed, setDisplayed, setLegend, setLegendDisplayed, setSpaceTransformer, setTransform, setTransformBefore, toString, toString
-
Field Details
-
texID
protected int texIDThe GL texture ID. -
buffer
-
shape
protected int[] shape -
mounted
protected boolean mounted -
disposed
protected boolean disposed
-
-
Constructor Details
-
Volume
Instanciate a drawable volume.- Parameters:
buffer
- provides (x,y,z,V) tuples where (x,y,z) are voxel index in the volume and V the value used for coloring voxelsshape
- a 3 element array indicating the number of voxels for each dimensionbbox
- the real world range of each axis, since the input buffer provide tuples with index and not coordinatesmapper
- the colormap handler that will apply a colormap to a value range
-
-
Method Details
-
mount
Description copied from interface:IGLBindedResource
Mount resources to gl context- Specified by:
mount
in interfaceIGLBindedResource
-
hasMountedOnce
public boolean hasMountedOnce()Description copied from interface:IGLBindedResource
Return true if mount(...) has been called at least one time- Specified by:
hasMountedOnce
in interfaceIGLBindedResource
-
bind
public void bind(com.jogamp.opengl.GL2 gl) throws com.jogamp.opengl.GLException - Throws:
com.jogamp.opengl.GLException
-
draw
Description copied from class:Drawable
Call OpenGL2 routines for rendering the object.- Specified by:
draw
in interfaceIGLRenderer
- Specified by:
draw
in classDrawable
-
applyGeometryTransform
- Specified by:
applyGeometryTransform
in classDrawable
-
dispose
public void dispose()Description copied from class:Drawable
Performs all required operation to cleanup the Drawable. -
updateBounds
public void updateBounds()- Specified by:
updateBounds
in classDrawable
-