Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
Wizt::VectorArrow Struct Reference

A minimalistic geometry shader that displays a vector field as a line segment. More...

#include <VectorArrow.hpp>

Inheritance diagram for Wizt::VectorArrow:
Wizt::Programmable

Public Types

using FieldType = META::LIST<Eagle::PhysicalSpace::tvector>
Public Types inherited from Wizt::Programmable
typedef RenderBasin::Program Program

Public Member Functions

 VectorArrow (VObject *that)
bool initializeAnemone (Anemone &RenderAnemone, VRenderContext &Context, const AnemoneCreator<> &AC) const
bool isValidAnemone (const Anemone &RenderAnemone, VRenderContext &Context, const AnemoneCreator<> &AC) const
std::string vertex_shader (VRenderContext &Context) const override
 Vertexshader GLGS code.
RenderBasin::Program::Parameters setProgramParameters (const RenderBasin::Program::Parameters &P, Anemone &RenderAnemone, const GridAnemone::AnemoneCreationContext &ARC, const RefPtr< GridAnemone::AnemoneExplorer > &AE) const
std::string geometry_shader (VRenderContext &Context) const override
std::string fragment_shader (VRenderContext &Context) const override
 Fragmentshader GLGS code that might stem from an text file.
string getShaderAttributeName () const
Public Member Functions inherited from Wizt::Programmable
RefPtr< RenderBasin::ProgramCompileShader (VRenderContext &Context, const std::string &Name, const RenderBasin::Program::Setup &SetupFunction=nullptr, const RefPtr< RenderBasin::Program > &ExistingProgram=nullptr, const glsl &LocalVertexShaderPrefixCode="", const glsl &LocalGeometryShaderPrefixCode="", const glsl &LocalFragmentShaderPrefixCode="") const
void enableViewportArray (bool EnableFragmentLayerViewport=true)
virtual glsl GeometryShaderPrefix (VRenderContext &Context) const
std::pair< glsl, stringgetCode (VRenderContext &Context, const std::string &Name, const std::string &Ext, std::string(Programmable::*shader)(VRenderContext &Context) const, const string &PrefixCode) const
void setGLSLVersion (const string &v_version, const string &g_version, const string &f_version)
void setGLSLVersion (const string &version)

Public Attributes

const string VectorFieldAttributeName
VObject::in< double > LengthScale
VObject::in< double > LineWidth
VObject::in< double > inArrowHeadLength
Public Attributes inherited from Wizt::Programmable
glsl f_prefix
glsl g_prefix
RenderBasin::GeometryInputType GeometryInput
RenderBasin::GeometryOutputType GeometryOutput
glsl v_prefix

Static Public Attributes

static constexpr bool hasShaderConditionals = false
Static Public Attributes inherited from Wizt::Programmable
static const char default_fragment_shader []
static const char default_geometry_shader []
static const char default_vertex_shader []

Additional Inherited Members

Static Public Member Functions inherited from Wizt::Programmable
static string OptionalFileRead (const string &filename, const string &text)
static glsl setNumberOfLightSources (VRenderContext &Context, const std::string &VariableName="lightNum")

Detailed Description

A minimalistic geometry shader that displays a vector field as a line segment.

Member Function Documentation

◆ fragment_shader()

glsl Wizt::VectorArrow::fragment_shader ( VRenderContext & Context) const
overridevirtual

Fragmentshader GLGS code that might stem from an text file.

Implements Wizt::Programmable.

◆ geometry_shader()

glsl Wizt::VectorArrow::geometry_shader ( VRenderContext & Context) const
overridevirtual

Reimplemented from Wizt::Programmable.

◆ vertex_shader()

glsl Wizt::VectorArrow::vertex_shader ( VRenderContext & Context) const
overridevirtual

Vertexshader GLGS code.

Implements Wizt::Programmable.

References vertex_shader().

Referenced by vertex_shader().