libVFRendering  0.14.0

A vector field rendering library
SphereRenderer.hxx
1 #ifndef VFRENDERING_SPHERE_RENDERER_HXX
2 #define VFRENDERING_SPHERE_RENDERER_HXX
3 
4 #include <VFRendering/GlyphRenderer.hxx>
5 
6 namespace VFRendering {
7 class SphereRenderer : public GlyphRenderer {
8 public:
9  enum Option {
10  SPHERE_RADIUS = 800,
11  LEVEL_OF_DETAIL
12  };
13 
14  SphereRenderer(const View& view, const VectorField& vf);
15  virtual void optionsHaveChanged(const std::vector<int>& changed_options) override;
16 };
17 
18 namespace Utilities {
19 template<>
20 struct Options::Option<SphereRenderer::Option::SPHERE_RADIUS> {
21  float default_value = 0.2f;
22 };
23 
24 
25 template<>
26 struct Options::Option<SphereRenderer::Option::LEVEL_OF_DETAIL> {
27  unsigned int default_value = 2;
28 };
29 }
30 }
31 
32 #endif
VFRendering::SphereRenderer
Definition: SphereRenderer.hxx:7
VFRendering::VectorField
Definition: VectorField.hxx:16
VFRendering::View
Definition: View.hxx:23
VFRendering::GlyphRenderer
Definition: GlyphRenderer.hxx:7