FiberVISH
0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
pond
anemonefish
FloatingAnemoneExplorer.hpp
1
#ifndef __ANEMONEFISH_FLOATING_ANEMONE_EXPLORER_HPP
2
#define __ANEMONEFISH_FLOATING_ANEMONE_EXPLORER_HPP
3
4
#include <ocean/Anemonia/FloatOrigin.hpp>
5
6
#include "GridAnemone.hpp"
7
//#include "FloatingOriginShaderFunctions.hpp"
8
9
namespace
Wizt
10
{
11
26
struct
anemonefish_API
FloatingAnemoneExplorer
:
GridAnemone::AnemoneExplorer
27
{
28
Eagle::tvector3 myVertexOffset, oldVertexOffset;
29
VRenderContext::ModelViewState myModelViewState;
30
31
FloatingAnemoneExplorer
(
const
WeakPtr<GridAnemone>
&
theGridAnemone
,
32
VRenderContext
&
Context
,
33
const
pRegionOfInterest
&
theRegionOfInterest
,
34
const
FloatOrigin
*
theFloatOrigin
);
35
36
bool
hasChangedAbsoluteTranslationVector()
const
;
37
38
/*
39
superceded by LayeredMultiViews::updateTranslatedViews()
40
41
42
struct anemonefish_API TranslationInterface : Interface<TranslationInterface>
43
{
44
// TODO revise into view arrays
45
WeakPtr<RenderBasin::RenderParameter>
46
TranslationVectorParameter, // this one is per view, should be array
47
CenterShiftVectorParameter, // this one is constant
48
49
RelativeObserver; // observer relative to CenterShift
50
// should be array and part of the views
51
52
TranslationInterface(const WeakPtr<RenderBasin::RenderParameter>&theTranslationVectorParameter,
53
const WeakPtr<RenderBasin::RenderParameter>&theCenterShiftVectorParameter,
54
const WeakPtr<RenderBasin::RenderParameter>&theRelativeObserver)
55
: TranslationVectorParameter( theTranslationVectorParameter )
56
, CenterShiftVectorParameter( theCenterShiftVectorParameter )
57
, RelativeObserver( theRelativeObserver )
58
{}
59
60
protected:
61
~TranslationInterface();
62
};
63
*/
64
65
/*
66
TODO rename to something like translateVertices,
67
these functions will translate the given points by the
68
given translation vector.
69
*/
70
71
RefPtr<RenderBasin::VertexAttribute>
72
computeCenterShift(
const
RefPtr
<
TypedChunk<Eagle::PhysicalSpace::point>
>&
Points
,
73
const
Eagle::PhysicalSpace::tvector&myVertexOffset,
74
const
GridAnemone::AnemoneCreationContext
&
ARC
)
const
;
75
81
RefPtr<RenderBasin::VertexAttribute>
82
computeCenterShift(
const
RefPtr
<
TypedChunk<Eagle::PhysicalSpace::point>
>&
Points
,
83
const
BoundingBox
&BBox,
84
const
GridAnemone::AnemoneCreationContext
&
ARC
)
const
;
85
86
RefPtr<RenderBasin::VertexAttribute>
87
computeCenterShift(
const
RefPtr<Fiber::MemBase>
&
Coordinates
,
88
const
BoundingBox
&BBox,
89
const
GridAnemone::AnemoneCreationContext
&
ARC
,
90
const
MemCore::Attributes
&
Attribs
)
const
;
97
static
bool
initializeTranslation(
Anemone
&RenderAnemone,
98
const
GridAnemone::AnemoneCreationContext
&
ARC
,
99
const
RefPtr<GridAnemone::AnemoneExplorer>
&
AE
);
100
101
/*
102
Calls LayeredMultiViews::updateTranslatedViews() .
103
*/
104
static
bool
updateTranslation(
Anemone
&RenderAnemone,
105
const
GridAnemone::AnemoneCreationContext
&
ARC
,
106
const
RefPtr<GridAnemone::AnemoneExplorer>
&
AE
);
107
108
109
110
protected
:
111
~FloatingAnemoneExplorer
();
112
};
113
114
115
}
// namespace
116
117
#endif
// __ANEMONEFISH_FLOATING_ANEMONE_EXPLORER_HPP
Eagle::BoundingBox
Eagle::Context
Fiber::CreativeIterator
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition
CreativeIterator.hpp:34
MemCore::Attributes
MemCore::StrongPtr
Wizt::Anemone
Wizt::VRenderContext
Wizt
note: cannot derive from FloatingSkeletonRenderer as long as independent base class TriangleRenderer ...
Wizt::FloatOrigin
Wizt::FloatingAnemoneExplorer
An Anemone explorer that takes care of a floating origin.
Definition
FloatingAnemoneExplorer.hpp:27
Wizt::GridAnemoneCreationContext
The context of creating a RenderAnemone.
Definition
AnemoneCreationContext.hpp:58
Wizt::GridAnemone::AnemoneExplorer
The Anemone Explorer is an object that lives throughout rendering of a set of Anemones.
Definition
GridAnemone.hpp:204
Generated on Sun Mar 1 2026 10:23:11 for FiberVISH by
1.9.8