GlobeEngine
SmallBodyPointCloud.h
Go to the documentation of this file.
1 #ifndef ExoViewer_SmallBodyPointCloud_h
2 #define ExoViewer_SmallBodyPointCloud_h
3 
4 #include "OpenGL_Includes.h"
5 #include <math.h>
6 #include "Common.h"
7 #include "DrawableComponent.h"
8 
9 namespace geAstro{
10 
12  {
13  public:
16  void clear();
17  void clearVectors();
18  void update();
19 
20  void addPoint(vmml::Vector3d _point, int _category);
21  void create(std::shared_ptr<ge::Shader> _programForOrbits, vmml::Vector3d _color, bool _colorPerVertex, bool _isVisible);
22  void createPointGeometry();
23 
24  void setScaleFactor(double _scaleFactor);
25  void setScaled(bool _scaled);
26  void draw(std::shared_ptr<ge::Camera> _cam);
27 
28  std::vector<vmml::Vector3d>* getPoints();
29 
30  private:
31  void create(){};
32  std::vector<vmml::Vector3d> points;
33  std::vector<int> categories;
34 
35  const int numberOfPoints = 360;
36 
37  double scale(double _value);
38 
39  double scaleFactor;
40  bool scaled;
41  };
42 
43 }
44 
45 #endif
Definition: DrawableComponent.h:25
SmallBodyPointCloud()
Definition: SmallBodyPointCloud.cpp:5
Definition: SmallBodyPointCloud.h:11
void create(std::shared_ptr< ge::Shader > _programForOrbits, vmml::Vector3d _color, bool _colorPerVertex, bool _isVisible)
Definition: SmallBodyPointCloud.cpp:32
std::vector< vmml::Vector3d > * getPoints()
Definition: SmallBodyPointCloud.cpp:108
void clearVectors()
Definition: SmallBodyPointCloud.cpp:22
void draw(std::shared_ptr< ge::Camera > _cam)
Definition: SmallBodyPointCloud.cpp:78
Definition: AstroCommon.h:18
void update()
Definition: SmallBodyPointCloud.cpp:74
void createPointGeometry()
Definition: SmallBodyPointCloud.cpp:41
void clear()
Definition: SmallBodyPointCloud.cpp:14
void addPoint(vmml::Vector3d _point, int _category)
Definition: SmallBodyPointCloud.cpp:27
void setScaled(bool _scaled)
Definition: SmallBodyPointCloud.cpp:100
~SmallBodyPointCloud()
Definition: SmallBodyPointCloud.cpp:10
void setScaleFactor(double _scaleFactor)
Definition: SmallBodyPointCloud.cpp:96