FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
CarpetAnemone.hpp
1#ifndef __FISH_POND_ANEMONEFISH_CarpetAnemone_HPP
2#define __FISH_POND_ANEMONEFISH_CarpetAnemone_HPP
3
4#include <ocean/Anemonia/Colorizer.hpp>
5#include <fiber/fiberop/Range.hpp>
6#include "GridAnemone.hpp"
7
8namespace Wizt
9{
10
51
62{
63public:
64 template <class T, int EL = VSlotContainer::InvalidExpertLevel >
65 using in_t = VObject::in<T, EL>;
66
67
97
98
99 VObject::in<bool> inUseLocalBoundingBoxForHeightRange;
100
102 const string&slotname = "colormap",
103 int EL = 0);
104
106
107
108 std::string scalarfield_vertex_shader(VRenderContext&Context) const;
109
111 getColormapTexture(const GridAnemone::AnemoneCreationContext&ACC, int TextureUnit);
112
113
130 createColormapTexture(Anemone&RenderAnemone,
133 int ColormapTextureUnit = 0,
134 const std::string&ColorMapShaderName = "Colormap"
135 ) const;
136
138 createColormapTexture(Anemone&RenderAnemone,
140 int ColormapTextureUnit = 0,
141 const std::string&ColorMapShaderName = "Colormap"
142 ) const;
143
144
161static void setupRangeFromBoundingBoxHeight(const string&HeightRangeShaderVariableName,
162 Anemone&RenderAnemone,
163 const VObject::in<Range>&inHeightRange,
165 std::function<RefPtr<Fiber::DataRangeBase>(VRenderContext&)>Ranger =nullptr);
166
167static void setupRangeFromBoundingBoxHeight(const string&HeightRangeShaderVariableName,
168 Anemone&RenderAnemone,
169 const VObject::in<Range>&inHeightRange,
171 std::function<RefPtr<Fiber::DataRangeBase>(VRenderContext&)>Ranger=nullptr)
172 {
173 setupRangeFromBoundingBoxHeight(HeightRangeShaderVariableName,
174 RenderAnemone,
175 inHeightRange,
176 ARC.myContext, Ranger);
177 }
178};
179
180
181} // namespace Wizt
182
183
184#endif // __FISH_POND_ANEMONEFISH_CarpetAnemone_HPP
185
constexpr _InputIterator find(_InputIterator __first, _InputIterator __last, const _Tp &__val)
basic_string< char > string
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition CreativeIterator.hpp:34
The CarpetAnemone handles a colormap attached to an Anemone.
Definition CarpetAnemone.hpp:62
note: cannot derive from FloatingSkeletonRenderer as long as independent base class TriangleRenderer ...
A ColormapTexture object is an interface that allows to remember a set of textures.
Definition CarpetAnemone.hpp:73
set< WeakPtr< RenderBasin::TextureTentacle > > myTextures
a set of textures to be remembered here.
Definition CarpetAnemone.hpp:75
The context of creating a RenderAnemone.
Definition AnemoneCreationContext.hpp:58