CGAL 5.0.2 - Three
|
#include <CGAL/Three/Point_container.h>
CGAL::Three::Primitive_container.
The Point_container struct wraps the OpenGL data for drawing lines.
Public Types | |
enum | vbosName { Vertices = 0, Indices, Colors, Normals, NbOfVbos } |
The vbosName enum. More... | |
Public Member Functions | |
Point_container (int program, bool indexed) | |
The constructor. More... | |
void | initGL (Viewer_interface *viewer) Q_DECL_OVERRIDE |
initGL creates the Vbo s and Vao s of this Point_container . More... | |
void | draw (CGAL::Three::Viewer_interface *viewer, bool is_color_uniform) Q_DECL_OVERRIDE |
draw is the function that actually renders the data. More... | |
![]() | |
Primitive_container (int program, bool indexed) | |
Primitive_container ructor. More... | |
void | bindUniformValues (CGAL::Three::Viewer_interface *viewer) |
bindUniformValues sets the uniform variables for the concerned shaders. More... | |
virtual void | initializeBuffers (CGAL::Three::Viewer_interface *viewer) |
initializeBuffers sends the data to the GPU memory. More... | |
void | removeViewer (CGAL::Three::Viewer_interface *viewer) |
removeViewer deletes and removes the Vao assigned to viewer from Vaos . More... | |
void | reset_vbos (Scene_item_rendering_helper::Gl_data_names) |
reset_vbos de-allocates the Vbo s. More... | |
void | setFlatDataSize (std::size_t) |
setFlatDataSize sets the number of un-indexed vertices of this container. More... | |
void | setIdxSize (std::size_t) |
setIdxDataSize sets the number of indexed vertices of this container. More... | |
void | setCenterSize (std::size_t) |
setCenterSize sets the number of instances of the item in this container. More... | |
bool | isGLInit (Viewer_interface *viewer) const |
Returns true if the container Vao s and Vbo s are created in the context of viewer . More... | |
void | allocate (std::size_t vbo_id, void *data, int datasize) |
allocate sets the data for a Vbo . More... | |
void | setVao (Viewer_interface *viewer, Vao *) |
setVao sets the Vao corresponding to viewer of this container. | |
void | setVbos (std::vector< Vbo *>) |
setVbos sets the vector of Vbo s for this container. More... | |
void | setVbo (std::size_t vbo_id, Vbo *vbo) |
setVbo sets the vbo_id th Vbo of this container to vbo . More... | |
void | setGLInit (Viewer_interface *viewer, bool) |
Use this to specify if the container Vao s and Vbo s are created in the context of viewer . | |
void | setTexture (Texture *) |
setter for the texture. | |
void | setTextureSize (const QSize &size) |
setter for the texture size. | |
void | setTextureData (int i, int j, int r, int g, int b) |
setter for the texture data at UV coordinates (i ,j ). | |
Vao * | getVao (Viewer_interface *viewer) const |
Returns the Vao bound to viewer . | |
Vbo * | getVbo (std::size_t id) const |
getVbo returns the id th Vbo of this container. | |
int | getProgram () const |
getProgram returns the OpenGL_program_IDs used with this container. | |
bool | isDataIndexed () |
isDataIndexed specifies if the data is indexed or not. More... | |
Texture * | getTexture () const |
getter for the texture. | |
GLuint | getTextureId () const |
getter for the texture id. | |
QSize | getTextureSize () const |
getter for the size of the texture. | |
bool | getClipping () const |
getter for the clipping. Default is true . | |
void | setInit (Viewer_interface *viewer, bool) |
Use this to specify if the container Vbo s are filled for viewer . | |
bool | isInit (Viewer_interface *viewer) const |
isInit returns true if the container Vbo s are filled for viewer . More... | |
std::size_t | getFlatDataSize () const |
getFlatDataSize returns the number of un-indexed vertices. More... | |
std::size_t | getIdxSize () const |
getIdxSize returns the number of indexed vertices. More... | |
int | getTupleSize () const |
getTupleSize returns the number of coordinates in one vertex. More... | |
std::size_t | getCenterSize () const |
getCenterSize returns the number of instances of the item in this container. More... | |
void | setSelected (bool) |
Setter for the "selected" uniform parameter. | |
void | setColor (QColor) |
Setter for the "color" parameter. | |
void | setStride (std::size_t id, int stride) |
Setter for the "stride" parameter. | |
void | setOffset (std::size_t id, int offset) |
Setter for the "offset" parameter. | |
void | setTupleSize (int ts) |
setter for the tuple size: the number of coordinates of one vertex. | |
void | setClipping (bool b) |
setter for the clipping. If b is false , then the clipping box will have no effect. | |
bool | isSelected () const |
getter for the "selected" parameter | |
QColor | getColor () const |
getter for the "color" parameter | |
Getters and Setters for the shaders parameters. | |
Each of those depends of the If the shaders of this program doesn't need one, you can ignore it. The others should be filled at each | |
QVector4D | getPlane () const |
getter for the "plane" parameter | |
QMatrix4x4 | getFrameMatrix () const |
getter for the "f_matrix" parameter | |
void | setFrameMatrix (const QMatrix4x4 &) |
setter for the "f_matrix" parameter | |
void | setPlane (const QVector4D &) |
setter for the "plane" parameter | |
void | setIsSurface (const bool) |
setter for the "is_surface" attribute. Used in PROGRAM_C3T3_EDGES | |
The vbosName enum.
Holds the Vbo
Ids of this container.
Enumerator | |
---|---|
Vertices | Designates the buffer that contains the vertex coordinates. |
Indices | Designates the buffer that contains the vertex indices. |
Colors | Designates the buffer that contains the color components. |
Normals | Designates the buffer that contains the normals components (for shaded points). |
NbOfVbos | Designates the size of the VBOs vector for |
CGAL::Three::Point_container::Point_container | ( | int | program, |
bool | indexed | ||
) |
The constructor.
program | is the QOpenGLShaderProgram that is used by this Point_container Vao . |
indexed | must be true if the data is indexed, false otherwise. If true , VBOs[Indices] must be filled. |
|
virtual |
draw is the function that actually renders the data.
viewer | the active Viewer_interface . |
is_color_uniform | must be false if VBOs [Colors ] is not empty, true otherwise. |
Implements CGAL::Three::Primitive_container.
|
virtual |
initGL creates the Vbo
s and Vao
s of this Point_container
.
draw()
function of an item is always a safe place to call this.viewer | the active Viewer_interface . |
Implements CGAL::Three::Primitive_container.