Class VBOBuilder
java.lang.Object
org.jzy3d.plot3d.primitives.vbo.builders.VBOBuilder
- All Implemented Interfaces:
IGLLoader<DrawableVBO>
- Direct Known Subclasses:
CubeVBOBuilder,ShaderMeshVBOBuilder,ShaderWaterfallVBOBuilder,VBOBuilderListCoord3d
The
once GL context is ready to store geometry
in GPU for the given DrawableVBO instance. This is where builder actually draw the object by
setting coordinates, colors, and rendering parameters.
A
VBOBuilder is responsible for sizing a FloatVBO, filling it with vertex
coordinates and colors properties, and configure a DrawableVBO with filled buffer.
The builder will be called via method
invalid @link
load()
Quality setting can be given to configure GL properties of the drawable:
- Author:
- Martin Pernollet
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected intcomputeGeometrySize(DrawableVBO drawable) protected intcomputeVerticeBufferSize(int type, int n, int dim, int geometrySize, boolean hasNormal, boolean hasColor) protected voidfillWithCollection(DrawableVBO drawable, Collection<Coord3d> coordinates, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds) protected voidfillWithCollection(DrawableVBO drawable, Collection<Coord3d> coordinates, ColorMapper colors, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds) protected voidfillWithCollection(DrawableVBO drawable, List<Coord3d> coordinates, FloatVBO vbo) protected voidfillWithCollection(DrawableVBO drawable, List<Coord3d> coordinates, FloatVBO vbo, ColorMapper coloring) protected voidfillWithRandomBar(int n, DrawableVBO drawable, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds, ColorMapper colors) protected voidfillWithRandomBar(int n, DrawableVBO drawable, FloatVBO vbo, ColorMapper colors) protected intgeometryTypeToMultiplier(int geometrySize) protected FloatVBOinitFloatVBO(DrawableVBO drawable, boolean hasNormal, boolean hasColor, int n) Setup buffers dimensions according to various parameters: target drawable representation type (point, line, etc), having color per vertex or not, having normals defined (default to false) 3 dimensionsprotected FloatVBOinitFloatVBO(DrawableVBO drawable, boolean hasNormal, boolean hasColor, int n, int dimension) Setup buffers dimensions according to various parameters: target drawable representation type (point, line, etc), having color per vertex or not, having normals defined (default to false) number of dimensions (default to 3)protected FloatVBOinitFloatVBO(DrawableVBO drawable, boolean hasColor, int n) Setup buffers dimensions according to various parameters: target drawable representation type (point, line, etc), having color per vertex or not, no normals defined 3 dimensionsprotected voidprotected voidputColor(FloatBuffer vertices, Color color) protected voidprotected voidputCoord(FloatBuffer vertices, Coord3d c) protected voidprotected void
-
Constructor Details
-
VBOBuilder
public VBOBuilder()
-
-
Method Details
-
fillWithCollection
protected void fillWithCollection(DrawableVBO drawable, Collection<Coord3d> coordinates, ColorMapper colors, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds) -
fillWithCollection
-
fillWithCollection
protected void fillWithCollection(DrawableVBO drawable, List<Coord3d> coordinates, FloatVBO vbo, ColorMapper coloring) -
fillWithCollection
protected void fillWithCollection(DrawableVBO drawable, Collection<Coord3d> coordinates, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds) -
fillWithRandomBar
protected void fillWithRandomBar(int n, DrawableVBO drawable, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds, ColorMapper colors) -
fillWithRandomBar
-
putBar
-
putPoint
-
putCoord
-
putCoord
-
putColor
-
putColor
-
initFloatVBO
protected FloatVBO initFloatVBO(DrawableVBO drawable, boolean hasNormal, boolean hasColor, int n, int dimension) Setup buffers dimensions according to various parameters:- target drawable representation type (point, line, etc),
- having color per vertex or not,
- having normals defined (default to false)
- number of dimensions (default to 3)
-
geometryTypeToMultiplier
protected int geometryTypeToMultiplier(int geometrySize) -
initFloatVBO
Setup buffers dimensions according to various parameters:- target drawable representation type (point, line, etc),
- having color per vertex or not,
- having normals defined (default to false)
- 3 dimensions
-
initFloatVBO
Setup buffers dimensions according to various parameters:- target drawable representation type (point, line, etc),
- having color per vertex or not,
- no normals defined
- 3 dimensions
-
computeVerticeBufferSize
protected int computeVerticeBufferSize(int type, int n, int dim, int geometrySize, boolean hasNormal, boolean hasColor) -
computeGeometrySize
-