FiberVISH
0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
pond
eye
shaders
BiVectorOrientation.hpp
1
#ifndef __BIVECTORS_AS_SPIRAL_HPP
2
#define __BIVECTORS_AS_SPIRAL_HPP
3
4
#include <ocean/Anemonia/Programmable.hpp>
5
#include <ocean/Anemonia/Seagrass.hpp>
6
7
#include "shadersDllApi.h"
8
#include "Phong.hpp"
9
10
#include <elementary/meta/LIST.hpp>
11
12
#include <fish/pond/anemonefish/GridAnemone.hpp>
13
14
namespace
Wizt
15
{
16
21
struct
shaders_API
BivectorOrientation
:
Programmable
,
Phong
22
{
23
using
FieldType
=
META::LIST<Eagle::PhysicalSpace::bivector>
;
24
25
const
string
VectorFieldAttributeName;
26
27
VObject::in<double>
28
LengthScale,
29
inLineWidth,
30
31
inAngularOffset,
32
inAngularVelocity;
33
34
35
VObject::in<Color> inColor;
36
37
BivectorOrientation
(
VObject
*that);
38
39
~BivectorOrientation
();
40
41
42
double
AdjustLineWidth(
const
double
&DefaultValue,
VRenderContext
&V)
const
;
43
double
ComputeAngularOffset(
const
double
&DefaultValue,
VRenderContext
&V)
const
;
44
45
static
constexpr
bool
hasShaderConditionals =
false
;
46
48
bool
initializeAnemone(
Anemone
&RenderAnemone,
49
VRenderContext
&
Context
,
50
AnemoneCreator<>
&AC)
const
;
51
52
RenderBasin::Program::Parameters
setProgramParameters(
const
RenderBasin::Program::Parameters
&
P
,
53
Anemone
&RenderAnemone,
54
const
GridAnemone::AnemoneCreationContext
&
ARC
,
55
const
RefPtr<GridAnemone::AnemoneExplorer>
&
AE
)
const
;
56
57
bool
isValidAnemone(
const
Anemone
&RenderAnemone,
58
VRenderContext
&
Context
,
59
AnemoneCreator<>
&AC)
const
60
{
61
return
Phong::isValidAnemone(
Context
, AC);
62
}
63
64
glsl vertex_shader(
VRenderContext
&
Context
)
const override
;
65
66
glsl geometry_shader(
VRenderContext
&
Context
)
const override
;
67
68
glsl FragmentShaderPrefix(
VRenderContext
&
Context
)
const override
;
69
70
glsl fragment_shader(
VRenderContext
&
Context
)
const override
;
71
72
string
getShaderAttributeName()
const
73
{
74
return
VectorFieldAttributeName;
75
}
76
};
77
78
79
}
// namespace Wizt
80
81
#endif
// __BIVECTORS_AS_SPIRAL_HPP
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
Wizt::Anemone
Wizt::Programmable
Wizt::RenderBasin::Program::Parameters
Wizt::VObject
Wizt::VRenderContext
META::LIST
Wizt
note: cannot derive from FloatingSkeletonRenderer as long as independent base class TriangleRenderer ...
Wizt::BivectorOrientation
A shader for bivectors.
Definition
BiVectorOrientation.hpp:22
Wizt::GridAnemoneCreationContext
The context of creating a RenderAnemone.
Definition
AnemoneCreationContext.hpp:58
Wizt::Phong
Definition
Phong.hpp:16
Generated on Sun Mar 1 2026 10:23:16 for FiberVISH by
1.9.8