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
-
Method Summary
Modifier and TypeMethodDescriptionprotected int
computeGeometrySize
(DrawableVBO drawable) protected int
computeVerticeBufferSize
(int type, int n, int dim, int geometrySize, boolean hasNormal, boolean hasColor) protected void
fillWithCollection
(DrawableVBO drawable, Collection<Coord3d> coordinates, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds) protected void
fillWithCollection
(DrawableVBO drawable, Collection<Coord3d> coordinates, ColorMapper colors, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds) protected void
fillWithCollection
(DrawableVBO drawable, List<Coord3d> coordinates, FloatVBO vbo) protected void
fillWithCollection
(DrawableVBO drawable, List<Coord3d> coordinates, FloatVBO vbo, ColorMapper coloring) protected void
fillWithRandomBar
(int n, DrawableVBO drawable, FloatBuffer vertices, IntBuffer indices, BoundingBox3d bounds, ColorMapper colors) protected void
fillWithRandomBar
(int n, DrawableVBO drawable, FloatVBO vbo, ColorMapper colors) protected int
geometryTypeToMultiplier
(int geometrySize) protected FloatVBO
initFloatVBO
(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 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)protected FloatVBO
initFloatVBO
(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 void
protected void
putColor
(FloatBuffer vertices, Color color) protected void
protected void
putCoord
(FloatBuffer vertices, Coord3d c) protected void
protected 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
-