FiberVISH
0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
pond
eye
shaders
VectorArrow.hpp
1
#ifndef __VECTORS_AS_ARROW_HPP
2
#define __VECTORS_AS_ARROW_HPP
3
4
#include <ocean/Anemonia/Programmable.hpp>
5
#include <ocean/Anemonia/Seagrass.hpp>
6
7
#include <elementary/meta/LIST.hpp>
8
9
#include <fish/pond/anemonefish/GridAnemone.hpp>
10
11
#include "shadersDllApi.h"
12
13
namespace
Wizt
14
{
15
22
struct
shaders_API
VectorArrow
:
Programmable
23
{
24
using
FieldType
=
META::LIST<Eagle::PhysicalSpace::tvector>
;
25
26
const
string
VectorFieldAttributeName;
27
28
VObject::in<double>
29
LengthScale,
30
LineWidth,
31
inArrowHeadLength;
32
33
VectorArrow
(
VObject
*that);
34
35
~VectorArrow
();
36
37
static
constexpr
bool
hasShaderConditionals =
false
;
38
40
bool
initializeAnemone(
Anemone
&RenderAnemone,
41
VRenderContext
&
Context
,
42
const
AnemoneCreator<>
&AC)
const
;
43
44
bool
isValidAnemone(
const
Anemone
&RenderAnemone,
45
VRenderContext
&
Context
,
46
const
AnemoneCreator<>
&AC)
const
47
{
48
return
true
;
49
}
50
51
53
std::string
vertex_shader(
VRenderContext
&
Context
)
const override
;
54
55
56
RenderBasin::Program::Parameters
setProgramParameters(
const
RenderBasin::Program::Parameters
&
P
,
57
Anemone
&RenderAnemone,
58
const
GridAnemone::AnemoneCreationContext
&
ARC
,
59
const
RefPtr<GridAnemone::AnemoneExplorer>
&
AE
)
const
60
{
61
RenderBasin::Program::Parameters
retval
=
P
;
62
retval
.Geometry.Output.Vertices = 16;
63
return
retval
;
64
}
65
66
67
std::string
geometry_shader(
VRenderContext
&
Context
)
const override
;
68
70
std::string
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
// __VECTORS_AS_LINE_HPP
std::string
basic_string< char > string
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::GridAnemoneCreationContext
The context of creating a RenderAnemone.
Definition
AnemoneCreationContext.hpp:58
Wizt::VectorArrow
A minimalistic geometry shader that displays a vector field as a line segment.
Definition
VectorArrow.hpp:23
Generated on Sun Mar 1 2026 10:23:16 for FiberVISH by
1.9.8