FAST  3.2.0
Framework for Heterogeneous Medical Image Computing and Visualization
VertexRenderer.hpp
Go to the documentation of this file.
1 #ifndef POINT_RENDERER_HPP_
2 #define POINT_RENDERER_HPP_
3 
5 #include "FAST/Data/Mesh.hpp"
6 #include "FAST/Data/Color.hpp"
7 #include <mutex>
8 
9 namespace fast {
10 
11 class FAST_EXPORT VertexRenderer : public Renderer {
13  public:
14  uint addInputConnection(DataChannel::pointer port) override;
15  uint addInputConnection(DataChannel::pointer port, Color color, float size);
16  uint addInputData(DataObject::pointer data) override;
17  uint addInputData(Mesh::pointer data, Color color, float size);
18  void setDefaultColor(Color color);
19  void setDefaultSize(float size);
20  void setDefaultDrawOnTop(bool drawOnTop);
21  void setDrawOnTop(uint inputNr, bool drawOnTop);
22  void setColor(uint inputNr, Color color);
23  void setSize(uint inputNr, float size);
24  void draw(Matrix4f perspectiveMatrix, Matrix4f viewingMatrix, float zNear, float zFar, bool mode2D);
25  void draw2D(
26  cl::BufferGL PBO,
27  uint width,
28  uint height,
29  Affine3f pixelToViewportTransform,
30  float PBOspacing,
31  Vector2f translation
32  );
33  private:
35 
36  float mDefaultPointSize;
37  Color mDefaultColor;
38  bool mDefaultDrawOnTop;
39  bool mDefaultColorSet;
40  std::unordered_map<uint, float> mInputSizes;
41  std::unordered_map<uint, Color> mInputColors;
42  std::unordered_map<uint, bool> mInputDrawOnTop;
43  std::unordered_map<uint, uint> mVAO;
44 };
45 
46 }
47 
48 #endif
fast::Renderer
Definition: Renderer.hpp:14
fast
Definition: AffineTransformation.hpp:7
FAST_OBJECT
#define FAST_OBJECT(className)
Definition: Object.hpp:9
Renderer.hpp
fast::DataChannel::pointer
std::shared_ptr< DataChannel > pointer
Definition: DataChannel.hpp:12
fast::VertexRenderer
Definition: VertexRenderer.hpp:11
fast::DataObject::pointer
std::shared_ptr< DataObject > pointer
Definition: DataObject.hpp:16
Color.hpp
uint
unsigned int uint
Definition: DataTypes.hpp:16
fast::Color
Definition: Color.hpp:8
Mesh.hpp