Workspace 6.21.5
Public Member Functions | List of all members
HighlightElementShader Class Reference

A basic lambertian shader which can be attached to meshmodels.

#include <Rendering/SceneComponents/Shaders/highlightelementshader.h>

Inheritance diagram for HighlightElementShader:
[legend]

Public Member Functions

 HighlightElementShader ()
 
 HighlightElementShader (const HighlightElementShader &shader)
 
 ~HighlightElementShader () override
 
bool appliesTransparency () const override
 
HighlightElementShaderclone () const override
 
ShadergetBaseShader () const
 
const QColor & getColor () const
 
unsigned getElementId () const
 
HighlightElementShaderoperator= (const HighlightElementShader &shader)
 
void setBaseShader (Shader &shader)
 
void setColor (const QColor &color)
 
void setElementId (unsigned elementId)
 
- Public Member Functions inherited from TypedShader< HighlightElementShader >
 ~TypedShader () override=default
 
- Public Member Functions inherited from Shader
 ~Shader () override
 
bool activate (SceneRenderer &renderer)
 Activates the shader on the target WSGLRenderer in preparation for drawing an object.
 
virtual bool appliesScreenSpaceAmbientOcclusion ()
 
virtual bool appliesSpecular ()
 
virtual bool appliesTransparency () const =0
 
Shaderclone () const override=0
 
bool deactivate (SceneRenderer &renderer)
 Deactivates the shader on the target WSGLRenderer, setting it back to the state it was in before the shader was bound.
 
int getId () const
 
Mesh::MeshModelSource::MeshModelInterfaceLockedPtr getMeshModelInterface (const QString &modelId, Mesh::MeshModelLibrary &modelLib)
 
bool getModelSourceUpdateRequested () const
 
bool getOptimizeOutInternalVolumeElements () const
 
double getSegmentLineWidth () const
 
virtual TexturizergetTexturizer ()
 
virtual const TexturizergetTexturizer () const
 
bool renderCurrentModel (SceneRenderer &renderer)
 Renders the model currently being processed by the specified renderer.s.
 
bool renderCurrentModelGlyphs (SceneRenderer &renderer)
 
void setOptimizeOutInternalVolumeElements (bool val)
 
void setSegmentLineWidth (double width)
 
- Public Member Functions inherited from Clonable
virtual ~Clonable ()=default
 
virtual Clonableclone () const =0
 

Additional Inherited Members

- Static Public Member Functions inherited from TypedShader< HighlightElementShader >
static void registerImplementation (const SceneRendererTypeId &rendererId, const ShaderImplementationFactory &factory)
 
- Protected Member Functions inherited from TypedShader< HighlightElementShader >
 TypedShader ()
 
 TypedShader (const TypedShader &shader)
 
TypedShaderclone () const override=0
 
- Protected Member Functions inherited from Shader
 Shader ()
 
 Shader (const Shader &shader)
 
void addImplementation (const SceneRendererContext &context, ShaderImplementation &impl)
 
void setId (int id)
 

Constructor & Destructor Documentation

◆ HighlightElementShader() [1/2]

◆ HighlightElementShader() [2/2]

◆ ~HighlightElementShader()

~HighlightElementShader ( )
override

Member Function Documentation

◆ appliesTransparency()

bool appliesTransparency ( ) const
overridevirtual

Subclasses must override this to specify whether they apply transparency to objects or not when they are enabled.

Implements Shader.

◆ clone()

HighlightElementShader * clone ( ) const
overridevirtual
Returns
A clone of this object.
Note
Subclasses would normally return their own type rather than the Clonable type. The C++ language rules allow a more derived type to be returned from a virtual function and the compiler will still treat it as a valid override.

Implements TypedShader< HighlightElementShader >.

◆ getBaseShader()

Shader & getBaseShader ( ) const

◆ getColor()

const QColor & getColor ( ) const

◆ getElementId()

unsigned getElementId ( ) const

◆ operator=()

HighlightElementShader & operator= ( const HighlightElementShader shader)

◆ setBaseShader()

void setBaseShader ( Shader shader)

◆ setColor()

void setColor ( const QColor &  color)

◆ setElementId()

void setElementId ( unsigned  elementId)