Stellarium
1.2
|
Public Types | |
enum | StelPrimitiveType { Points = 0x0000, Lines = 0x0001, LineLoop = 0x0002, LineStrip = 0x0003, Triangles = 0x0004, TriangleStrip = 0x0005, TriangleFan = 0x0006 } |
Public Member Functions | |
StelVertexArray (StelPrimitiveType pType=StelVertexArray::Triangles) | |
StelVertexArray (const QVector< Vec3d > &v, StelPrimitiveType pType=StelVertexArray::Triangles, const QVector< Vec2f > &t=QVector< Vec2f >(), const QVector< unsigned short > i=QVector< unsigned short >(), const QVector< Vec3f > &col=QVector< Vec3f >()) | |
bool | isIndexed () const |
bool | isTextured () const |
bool | isColored () const |
template<class Func > | |
Func | foreachTriangle (Func func) const |
call a function for each triangle of the array. More... | |
StelVertexArray | removeDiscontinuousTriangles (const class StelProjector *prj) const |
Create a copy of the array with all the triangles intersecting the projector discontinuity removed. | |
Data Fields | |
QVector< Vec3d > | vertex |
OpenGL compatible array of 3D vertex to be displayed using vertex arrays. More... | |
QVector< Vec2f > | texCoords |
OpenGL compatible array of edge flags to be displayed using vertex arrays. | |
QVector< Vec3f > | colors |
OpenGL compatible array of vertex colors to be displayed using arrays. More... | |
QVector< unsigned short > | indices |
OpenGL compatible array of indices for the vertex and the textures. | |
StelPrimitiveType | primitiveType |
|
inline |
func should define the following method : void operator() (const Vec3d* vertex[3], const Vec2f* tex[3], const Vec3f* colors[3], unsigned int indices[3]) The method takes arrays of pointers as arguments because we can't assume the values are contiguous
QVector<Vec3f> StelVertexArray::colors |
The color (if exists) shall be multiplied with texture to modulate e.g. for extinction of Milky Way or other large items.
QVector<Vec3d> StelVertexArray::vertex |
TODO, move to float? Most of the vectors are normalized, thus the precision is around 1E-45 using float which is enough (=2E-37 milli arcsec).