9 #ifndef GlobeEngine_MultiLineObject_h
10 #define GlobeEngine_MultiLineObject_h
12 #include <vmmlib/vmmlib.hpp>
15 #include "OpenGL_Includes.h"
37 void create(
int _lineCount,
int _lineSize);
40 void draw(std::shared_ptr<ge::Camera> _cam);
46 int addLine(vmml::Vector3d _start, vmml::Vector3d _end);
51 int addPolyline(std::shared_ptr<PolyLine> _polyline);
67 const std::shared_ptr<PolyLine>
getPolyline(
int _idx)
const;
96 void setColorBuffer(
int _bufferID,
const vmml::Vector3f* _color=NULL);
107 return animatedColorUpdate;
116 void allocateLineStripArray(
int _size);
117 void createPointerList();
119 std::vector< std::shared_ptr<PolyLine> > entities;
120 std::vector<double> weights;
121 std::vector<vmml::Vector3f> weightColors;
129 double lineThickness;
131 GLsizei* lineStripLenght;
134 int maxPointCountInALine;
135 bool animatedColorUpdate;
142 float animatedTimeStep;
Definition: DrawableComponent.h:25
Definition: MultiLineObject.h:28
void setGeometryBufferAsRibbons(int _bufferID)
Definition: MultiLineObject.cpp:338
void clearGeometryMemory()
Definition: MultiLineObject.cpp:31
void moveAnimationForward()
Definition: MultiLineObject.cpp:654
void update()
Definition: MultiLineObject.cpp:50
Definition: AvalancheTrainingSimulationEngine.h:39
const std::shared_ptr< PolyLine > getPolyline(int _idx) const
Definition: MultiLineObject.cpp:608
int getLineSize()
Definition: MultiLineObject.cpp:626
void setAnimatedColorBuffer(int _bufferID, const vmml::Vector3f *_animationColor)
Definition: MultiLineObject.cpp:312
int getLineCount()
Definition: MultiLineObject.cpp:618
Definition: MultiLineObject.h:30
void addToLineWeight(int _idx, double _value)
Definition: MultiLineObject.cpp:556
void setExtrusionXZ(double _input)
Definition: MultiLineObject.cpp:635
void clear()
Definition: MultiLineObject.cpp:15
int addPolyline(std::shared_ptr< PolyLine > _polyline)
Definition: MultiLineObject.cpp:448
~MultiLineObject()
Definition: MultiLineObject.cpp:10
void setLineWeightAndColor(int _idx, double _wheight, vmml::Vector3f _color)
Definition: MultiLineObject.cpp:523
void moveAnimationBackward()
Definition: MultiLineObject.cpp:662
void removePolyline(int _id)
Definition: MultiLineObject.cpp:475
int addLine(vmml::Vector3d _start, vmml::Vector3d _end)
Definition: MultiLineObject.cpp:497
void setIndicesForRibbons()
Definition: MultiLineObject.cpp:226
void setExtrusionY(double _input)
Definition: MultiLineObject.cpp:640
void draw(std::shared_ptr< ge::Camera > _cam)
Definition: MultiLineObject.cpp:55
void createVAO(enum GEOMETRYMODE _mode=LINES)
Definition: MultiLineObject.cpp:122
void setColorBuffer(int _bufferID, const vmml::Vector3f *_color=NULL)
Definition: MultiLineObject.cpp:271
Definition: MultiLineObject.h:31
bool isAnimatedColorUpdated()
Definition: MultiLineObject.h:106
void setAnimatedTimeStep(float _timeStep)
Definition: MultiLineObject.cpp:670
void drawWithStandardShader(std::shared_ptr< ge::Camera > _cam)
void setPickIDBuffer(int _bufferID)
Definition: MultiLineObject.cpp:432
void setLineCount(int _input)
Definition: MultiLineObject.cpp:622
void setLineWeight(int _lineIdx, double _wheight)
Definition: MultiLineObject.cpp:513
void setWheightedColorBuffer(int _bufferID)
Definition: MultiLineObject.cpp:294
void insertPolyline(int _id, std::shared_ptr< PolyLine > _polyline)
Definition: MultiLineObject.cpp:454
void setIndicesForLines()
Definition: MultiLineObject.cpp:194
void setLinestripIndices()
Definition: MultiLineObject.cpp:168
void setGeometryBuffer(int _bufferID)
Definition: MultiLineObject.cpp:415
GEOMETRYMODE
Definition: MultiLineObject.h:27
MultiLineObject()
Definition: MultiLineObject.cpp:4
Definition: MultiLineObject.h:29
void setLineThickness(double _input)
Definition: MultiLineObject.cpp:613
double getLineThickness()
Definition: MultiLineObject.cpp:630
int getGraphPointCount() const
Definition: MultiLineObject.cpp:566
void updatePolyline(int _id, std::shared_ptr< PolyLine > _polyline)
Definition: MultiLineObject.cpp:491
void create()
Definition: MultiLineObject.cpp:39
double getLineWeight(int _idx)
Definition: MultiLineObject.cpp:534
enum GEOMETRYMODE getDrawMode() const
Definition: MultiLineObject.h:88
void setIndicesForOverlappingTriangles()
Definition: MultiLineObject.cpp:247
Definition: MultiLineObject.h:31
Definition: MultiLineObject.h:19
Definition: MultiLineObject.h:27
vmml::Vector3f getLineWeightColor(int _idx)
Definition: MultiLineObject.cpp:545