Developer Documentation
ACG::SceneGraph::MaterialNode Class Reference

#include <ACG/Scenegraph/MaterialNode.hh>

Inheritance diagram for ACG::SceneGraph::MaterialNode:
ACG::SceneGraph::BaseNode ACG::SceneGraph::ArrowNode ACG::SceneGraph::BoundingBoxNode ACG::SceneGraph::BoxesNode ACG::SceneGraph::CoordFrameNode ACG::SceneGraph::GridNode ACG::SceneGraph::LineNode ACG::SceneGraph::StatusNodeBaseT< Mesh, Mod, false > ACG::SceneGraph::StatusNodeBaseT< Mesh, Mod, true >

Public Types

enum  ApplyProperties {
  None =0 , All =0xffff , BaseColor =1 , Material =2 ,
  PointSize =4 , LineWidth =8 , RoundPoints =16 , LineSmooth =32 ,
  AlphaTest =64 , Blending =128 , BackFaceCulling =256 , ColorMaterial =512 ,
  MultiSampling =1024
}
 Apply which properties? Others will be ignored. Values may be OR'ed. More...
 
- Public Types inherited from ACG::SceneGraph::BaseNode
enum  StatusMode { Active = 0x1 , HideNode = 0x2 , HideChildren = 0x4 , HideSubtree = 0x8 }
 Status modi. More...
 
enum  TraverseMode { NodeFirst = 0x1 , ChildrenFirst = 0x2 , SecondPass = 0x4 }
 Node traverse types. More...
 
typedef std::vector< BaseNode * >::const_iterator ConstChildIter
 allows to iterate over children More...
 
typedef std::vector< BaseNode * >::iterator ChildIter
 allows to iterate over children More...
 
typedef std::vector< BaseNode * >::const_reverse_iterator ConstChildRIter
 allows to reverse iterate over children More...
 
typedef std::vector< BaseNode * >::reverse_iterator ChildRIter
 allows to reverse iterate over children More...
 
enum  PASSES {
  NOPASS = 0 , ALLPASSES = 1 << 0 , PASS_1 = 1 << 1 , PASS_2 = 1 << 2 ,
  PASS_3 = 1 << 3 , PASS_4 = 1 << 4 , PASS_5 = 1 << 5 , PASS_6 = 1 << 6 ,
  PASS_7 = 1 << 7 , PASS_8 = 1 << 8
}
 This enum should be used to enable rendering of a node in different. More...
 
typedef unsigned int MultipassBitMask
 Multipass pass bit mask type. More...
 

Public Member Functions

 MaterialNode (BaseNode *_parent=0, const std::string &_name="<MaterialNode>", unsigned int _applyProperties=(All &~BackFaceCulling))
 Default constructor. Applies all properties. More...
 
virtual ~MaterialNode ()
 Destructor. More...
 
void read (std::istream &_is)
 read MaterialFile More...
 
float alpha_value ()
 get current alpha value for alpha_test More...
 
bool blending ()
 
GLenum blending_param1 ()
 
GLenum blending_param2 ()
 
void enable_blending (GLenum _p1=GL_SRC_ALPHA, GLenum _p2=GL_ONE_MINUS_SRC_ALPHA)
 enable blending with Parameters (_p1, _p2) More...
 
void disable_blending ()
 disable blending More...
 
bool backface_culling ()
 
void enable_backface_culling ()
 enable backface culling (not active by default, see applyProperties) More...
 
void disable_backface_culling ()
 disable backface culling (not active by default, see applyProperties) More...
 
unsigned int applyProperties () const
 get properties that will be applied (OR'ed ApplyProperties) More...
 
void applyProperties (unsigned int _applyProperties)
 set properties that will be applied (OR'ed ApplyProperties) More...
 
ACG::SceneGraph::Materialmaterial ()
 Get material object reference. More...
 
void set_material (const ACG::SceneGraph::Material &_m)
 Set material object. More...
 
Scenegraph functions
 ACG_CLASSNAME (MaterialNode)
 set current GL-color and GL-material
 
void enter (GLState &_state, const DrawModes::DrawMode &_drawmode) override
 set current GL-color and GL-material More...
 
void leave (GLState &_state, const DrawModes::DrawMode &_drawmode) override
 restores original GL-color and GL-material More...
 
void enterPick (GLState &_state, PickTarget _target, const DrawModes::DrawMode &_drawMode) override
 Do nothing in picking. More...
 
void leavePick (GLState &_state, PickTarget _target, const DrawModes::DrawMode &_drawMode) override
 Do nothing in picking. More...
 
Color and material settings ( Applied to all objects below this node )
void set_color (const Vec4f &_c)
 set color (base, ambient, diffuse, specular) based on _c More...
 
void set_random_color ()
 Generates a random color and sets it. More...
 
void set_base_color (const Vec4f &_c)
 set the base color ( Same as set_emission(const Vec4f& _c) ) More...
 
const Vec4fbase_color () const
 get the base color ( same as emission() ) More...
 
void set_emission (const Vec4f &_c)
 set emission ( same as set_base_color(const Vec4f& _c) ) More...
 
const Vec4femission () const
 get emission ( same as base_color() ) More...
 
void set_ambient_color (const Vec4f &_a)
 set the ambient color. More...
 
const Vec4fambient_color () const
 get the ambient color. More...
 
void set_diffuse_color (const Vec4f &_d)
 set the diffuse color. More...
 
const Vec4fdiffuse_color () const
 get the diffuse color. More...
 
void set_specular_color (const Vec4f &_s)
 set the specular color More...
 
const Vec4fspecular_color () const
 get the specular color More...
 
void set_overlay_color (const Vec4f &_s)
 set the overlay color More...
 
const Vec4foverlay_color () const
 get the overlay color More...
 
void colorMaterial (const bool _cm)
 Set colorMaterial. More...
 
void enable_color_material ()
 Enable Color Material. More...
 
void disable_color_material ()
 Disable Color Material. More...
 
bool colorMaterial ()
 get colorMaterial state More...
 
void set_shininess (float _s)
 set shininess More...
 
float shininess () const
 get shininess More...
 
void set_reflectance (double _m)
 set reflectance More...
 
double reflectance () const
 get reflectance More...
 
void set_indexOfRefraction (double _m)
 set index of refraction More...
 
double indexOfRefraction () const
 get index of refraction More...
 
void set_refractive (bool _r)
 set refractive flag More...
 
bool isRefractive () const
 get refractive flag More...
 
Point/Line controls
void set_point_size (float _sz)
 set point size (default: 1.0) More...
 
float point_size () const
 get point size More...
 
void set_line_width (float _sz)
 set line width (default: 1.0) More...
 
float line_width () const
 get line width More...
 
void set_round_points (bool _b)
 set round points enabled More...
 
bool round_points () const
 get round points enabled More...
 
void set_line_smooth (bool _b)
 set: smooth lines enabled More...
 
bool line_smooth () const
 get: rsmooth lines enabled More...
 
Tests
void enable_alpha_test (float _clip)
 enable alpha test (draw pixels if alpha >= _clip) More...
 
void disable_alpha_test ()
 disable alpha test More...
 
bool alpha_test ()
 Return state of Alpha test. More...
 
Other Rendering options
void enable_multisampling ()
 Enable Multisampling. More...
 
void disable_multisampling ()
 enable alpha test (draw pixels if alpha >= _clip) More...
 
bool multiSampling ()
 Get state of multisampling. More...
 
void set_multisampling (bool _state)
 Set state of multisampling. More...
 
- Public Member Functions inherited from ACG::SceneGraph::BaseNode
 BaseNode (BaseNode *_parent=0, std::string _name="<unknown>")
 Default constructor. More...
 
 BaseNode (BaseNode *_parent, BaseNode *_child, std::string _name="<unknown>")
 Put this node between _parent and _child. More...
 
virtual ~BaseNode ()
 Destructor. More...
 
void delete_subtree ()
 Delete the whole subtree of this node. More...
 
virtual const std::string & className () const =0
 Return class name (implemented by the ACG_CLASSNAME macro)
 
virtual DrawModes::DrawMode availableDrawModes () const
 
virtual void boundingBox (Vec3d &, Vec3d &)
 
virtual void enter (GLState &, const DrawModes::DrawMode &)
 
virtual void enter (IRenderer *, GLState &_state, const DrawModes::DrawMode &_drawMode)
 
virtual void draw (GLState &, const DrawModes::DrawMode &)
 Draw this node using the draw modes _drawMode. More...
 
virtual void getRenderObjects (IRenderer *_renderer, GLState &_state, const DrawModes::DrawMode &_drawMode, const Material *_mat)
 Deferred draw call with shader based renderer. More...
 
virtual void leave (GLState &, const DrawModes::DrawMode &)
 
virtual void leave (IRenderer *, GLState &_state, const DrawModes::DrawMode &_drawMode)
 
virtual void enterPick (GLState &_state, PickTarget _target, const DrawModes::DrawMode &_drawMode)
 
virtual void pick (GLState &, PickTarget)
 
virtual void leavePick (GLState &_state, PickTarget _target, const DrawModes::DrawMode &_drawMode)
 
void enablePicking (bool _enable)
 
bool pickingEnabled ()
 
virtual void mouseEvent (GLState &, QMouseEvent *)
 Handle mouse event (some interaction, e.g. modeling) More...
 
void setDirty (bool _dirty=true)
 mark node for redrawn More...
 
bool isDirty () const
 Check if node should be redrawn. More...
 
ChildIter childrenBegin ()
 Returns: begin-iterator of children. More...
 
ConstChildIter childrenBegin () const
 Same but cont. More...
 
ChildIter childrenEnd ()
 Returns: end-iterator of children. More...
 
ConstChildIter childrenEnd () const
 Same but const. More...
 
ChildRIter childrenRBegin ()
 Returns: reverse begin-iterator of children. More...
 
ConstChildRIter childrenRBegin () const
 Same but const. More...
 
ChildRIter childrenREnd ()
 Returns: reverse end-iterator of children. More...
 
ConstChildRIter childrenREnd () const
 Same but const. More...
 
void push_back (BaseNode *_node)
 Insert _node at the end of the list of children. More...
 
void remove (ChildIter _pos)
 
size_t nChildren () const
 number of children More...
 
ChildIter find (BaseNode *_node)
 
BaseNodefind (const std::string &_name)
 
BaseNodeparent ()
 Get the nodes parent node. More...
 
const BaseNodeparent () const
 Get the nodes parent node. More...
 
void set_parent (BaseNode *_parent)
 Set the parent of this node. More...
 
StatusMode status () const
 Get node's status. More...
 
void set_status (StatusMode _s)
 Set the status of this node. More...
 
void hide ()
 Hide Node: set status to HideNode. More...
 
void show ()
 Show node: set status to Active. More...
 
bool visible ()
 Is node visible (status == Active)? More...
 
bool hidden ()
 Is node not visible (status != Active)? More...
 
std::string name () const
 Returns: name of node (needs not be unique) More...
 
void name (const std::string &_name)
 rename a node More...
 
unsigned int id () const
 
DrawModes::DrawMode drawMode () const
 Return the own draw modes of this node. More...
 
void drawMode (DrawModes::DrawMode _drawMode)
 
unsigned int traverseMode () const
 Return how the node should be traversed. More...
 
void setTraverseMode (unsigned int _mode)
 Set traverse mode for node. More...
 
MultipassBitMask multipassStatus () const
 Get the current multipass settings for the nodes status functions. More...
 
void setMultipassStatus (const MultipassBitMask _passStatus)
 Set multipass settings for the nodes status functions. More...
 
void multipassStatusSetActive (const unsigned int _i, bool _active)
 Set multipass status to traverse in a specific pass. More...
 
bool multipassStatusActive (const unsigned int _i) const
 Get multipass status to traverse in a specific pass. More...
 
MultipassBitMask multipassNode () const
 Get the current multipass settings for the node. More...
 
void setMultipassNode (const MultipassBitMask _passNode)
 Set multipass settings for the node. More...
 
void multipassNodeSetActive (const unsigned int _i, bool _active)
 Set Node status to traverse in a specific pass. More...
 
bool multipassNodeActive (const unsigned int _i) const
 Get Node status to traverse in a specific pass. More...
 
void setRenderObjectShaders (const std::string &_vertexShaderFile, const std::string &_geometryShaderFile, const std::string &_fragmentShaderFile, bool _relativePaths=true, DrawModes::DrawModePrimitive _primitiveType=DrawModes::PRIMITIVE_POLYGON)
 Set custom shaders. More...
 
void setRenderObjectShaders (const std::string &_vertexShaderFile, const std::string &_tessControlShaderFile, const std::string &_tessEvalShaderFile, const std::string &_geometryShaderFile, const std::string &_fragmentShaderFile, bool _relativePaths=true, DrawModes::DrawModePrimitive _primitiveType=DrawModes::PRIMITIVE_POLYGON)
 Set custom shaders. More...
 
void setRenderObjectUniformPool (const GLSL::UniformPool *_pool)
 Set uniforms for shader based rendering. More...
 
const GLSL::UniformPoolgetRenderObjectUniformPool ()
 Get uniforms for shader based rendering. More...
 
void setRenderObjectTexture (int _samplerSlot, GLuint _texId, GLenum _texType=GL_TEXTURE_2D)
 Set textures for shader based rendering. More...
 
void setRenderObjectModifier (RenderObjectModifier *_modifier)
 Set modifier for render objects. More...
 
RenderObjectModifiergetRenderObjectModifier ()
 Get render-object modifier. More...
 
void applyRenderObjectSettings (DrawModes::DrawModePrimitive _primitive, RenderObject *_obj) const
 Set shaders, textures and uniforms as provided by user to a render-object. More...
 

Private Attributes

int applyProperties_
 OR'ed ApplyProperties. More...
 
ACG::SceneGraph::Material material_
 Local material class that actually stores the properties. More...
 
ACG::SceneGraph::Material materialBackup_
 Material Backup. More...
 

Detailed Description

Set material and some other stuff like alphatest and blending for this node and all its children. All changes will be done in the enter() method undone in the leave() method.

Definition at line 317 of file MaterialNode.hh.

Member Enumeration Documentation

◆ ApplyProperties

Apply which properties? Others will be ignored. Values may be OR'ed.

Enumerator
None 

apply nothing

All 

apply all properites

BaseColor 

apply base color

Material 

apply material (ambient, diffuse, specular, shininess)

PointSize 

apply point size

LineWidth 

apply line width

RoundPoints 

draw smooth (round) points using glPoint()

LineSmooth 

draw smooth lines using glLine()

AlphaTest 

use alpha test

Blending 

use blending

BackFaceCulling 

backface culling

ColorMaterial 

Color Material ( Only when a drawmode using shading and lighting is enabled )

MultiSampling 

MultiSampling.

Definition at line 322 of file MaterialNode.hh.

Constructor & Destructor Documentation

◆ MaterialNode()

ACG::SceneGraph::MaterialNode::MaterialNode ( BaseNode _parent = 0,
const std::string &  _name = "<MaterialNode>",
unsigned int  _applyProperties = (All & ~BackFaceCulling) 
)

Default constructor. Applies all properties.

Definition at line 162 of file MaterialNode.cc.

◆ ~MaterialNode()

virtual ACG::SceneGraph::MaterialNode::~MaterialNode ( )
inlinevirtual

Destructor.

Definition at line 358 of file MaterialNode.hh.

Member Function Documentation

◆ alpha_test()

bool ACG::SceneGraph::MaterialNode::alpha_test ( )
inline

Return state of Alpha test.

Definition at line 498 of file MaterialNode.hh.

◆ alpha_value()

float ACG::SceneGraph::MaterialNode::alpha_value ( )
inline

get current alpha value for alpha_test

Definition at line 522 of file MaterialNode.hh.

◆ ambient_color()

const Vec4f & ACG::SceneGraph::MaterialNode::ambient_color ( ) const
inline

get the ambient color.

Definition at line 412 of file MaterialNode.hh.

◆ applyProperties() [1/2]

unsigned int ACG::SceneGraph::MaterialNode::applyProperties ( ) const
inline

get properties that will be applied (OR'ed ApplyProperties)

Definition at line 546 of file MaterialNode.hh.

◆ applyProperties() [2/2]

void ACG::SceneGraph::MaterialNode::applyProperties ( unsigned int  _applyProperties)
inline

set properties that will be applied (OR'ed ApplyProperties)

Definition at line 549 of file MaterialNode.hh.

◆ backface_culling()

bool ACG::SceneGraph::MaterialNode::backface_culling ( )
inline

Definition at line 537 of file MaterialNode.hh.

◆ base_color()

const Vec4f & ACG::SceneGraph::MaterialNode::base_color ( ) const
inline

get the base color ( same as emission() )

Definition at line 402 of file MaterialNode.hh.

◆ blending()

bool ACG::SceneGraph::MaterialNode::blending ( )
inline

Definition at line 524 of file MaterialNode.hh.

◆ blending_param1()

GLenum ACG::SceneGraph::MaterialNode::blending_param1 ( )
inline

Definition at line 526 of file MaterialNode.hh.

◆ blending_param2()

GLenum ACG::SceneGraph::MaterialNode::blending_param2 ( )
inline

Definition at line 527 of file MaterialNode.hh.

◆ colorMaterial() [1/2]

bool ACG::SceneGraph::MaterialNode::colorMaterial ( )
inline

get colorMaterial state

Definition at line 436 of file MaterialNode.hh.

◆ colorMaterial() [2/2]

void ACG::SceneGraph::MaterialNode::colorMaterial ( const bool  _cm)
inline

Set colorMaterial.

Definition at line 430 of file MaterialNode.hh.

◆ diffuse_color()

const Vec4f & ACG::SceneGraph::MaterialNode::diffuse_color ( ) const
inline

get the diffuse color.

Definition at line 417 of file MaterialNode.hh.

◆ disable_alpha_test()

void ACG::SceneGraph::MaterialNode::disable_alpha_test ( )
inline

disable alpha test

Definition at line 495 of file MaterialNode.hh.

◆ disable_backface_culling()

void ACG::SceneGraph::MaterialNode::disable_backface_culling ( )
inline

disable backface culling (not active by default, see applyProperties)

Definition at line 543 of file MaterialNode.hh.

◆ disable_blending()

void ACG::SceneGraph::MaterialNode::disable_blending ( )
inline

disable blending

Definition at line 535 of file MaterialNode.hh.

◆ disable_color_material()

void ACG::SceneGraph::MaterialNode::disable_color_material ( )
inline

Disable Color Material.

Definition at line 434 of file MaterialNode.hh.

◆ disable_multisampling()

void ACG::SceneGraph::MaterialNode::disable_multisampling ( )
inline

enable alpha test (draw pixels if alpha >= _clip)

Definition at line 511 of file MaterialNode.hh.

◆ emission()

const Vec4f & ACG::SceneGraph::MaterialNode::emission ( ) const
inline

get emission ( same as base_color() )

Definition at line 407 of file MaterialNode.hh.

◆ enable_alpha_test()

void ACG::SceneGraph::MaterialNode::enable_alpha_test ( float  _clip)
inline

enable alpha test (draw pixels if alpha >= _clip)

Definition at line 492 of file MaterialNode.hh.

◆ enable_backface_culling()

void ACG::SceneGraph::MaterialNode::enable_backface_culling ( )
inline

enable backface culling (not active by default, see applyProperties)

Definition at line 540 of file MaterialNode.hh.

◆ enable_blending()

void ACG::SceneGraph::MaterialNode::enable_blending ( GLenum  _p1 = GL_SRC_ALPHA,
GLenum  _p2 = GL_ONE_MINUS_SRC_ALPHA 
)
inline

enable blending with Parameters (_p1, _p2)

Definition at line 530 of file MaterialNode.hh.

◆ enable_color_material()

void ACG::SceneGraph::MaterialNode::enable_color_material ( )
inline

Enable Color Material.

Definition at line 432 of file MaterialNode.hh.

◆ enable_multisampling()

void ACG::SceneGraph::MaterialNode::enable_multisampling ( )
inline

Enable Multisampling.

Definition at line 508 of file MaterialNode.hh.

◆ enter()

void ACG::SceneGraph::MaterialNode::enter ( GLState _state,
const DrawModes::DrawMode _drawmode 
)
overridevirtual

set current GL-color and GL-material

Reimplemented from ACG::SceneGraph::BaseNode.

Definition at line 173 of file MaterialNode.cc.

◆ enterPick()

void ACG::SceneGraph::MaterialNode::enterPick ( GLState _state,
PickTarget  _target,
const DrawModes::DrawMode _drawMode 
)
overridevirtual

Do nothing in picking.

Reimplemented from ACG::SceneGraph::BaseNode.

Definition at line 315 of file MaterialNode.cc.

◆ indexOfRefraction()

double ACG::SceneGraph::MaterialNode::indexOfRefraction ( ) const
inline

get index of refraction

Definition at line 451 of file MaterialNode.hh.

◆ isRefractive()

bool ACG::SceneGraph::MaterialNode::isRefractive ( ) const
inline

get refractive flag

Definition at line 456 of file MaterialNode.hh.

◆ leave()

void ACG::SceneGraph::MaterialNode::leave ( GLState _state,
const DrawModes::DrawMode _drawmode 
)
overridevirtual

restores original GL-color and GL-material

Reimplemented from ACG::SceneGraph::BaseNode.

Definition at line 348 of file MaterialNode.cc.

◆ leavePick()

void ACG::SceneGraph::MaterialNode::leavePick ( GLState _state,
PickTarget  _target,
const DrawModes::DrawMode _drawMode 
)
overridevirtual

Do nothing in picking.

Reimplemented from ACG::SceneGraph::BaseNode.

Definition at line 330 of file MaterialNode.cc.

◆ line_smooth()

bool ACG::SceneGraph::MaterialNode::line_smooth ( ) const
inline

get: rsmooth lines enabled

Definition at line 482 of file MaterialNode.hh.

◆ line_width()

float ACG::SceneGraph::MaterialNode::line_width ( ) const
inline

get line width

Definition at line 472 of file MaterialNode.hh.

◆ material()

ACG::SceneGraph::Material & ACG::SceneGraph::MaterialNode::material ( )
inline

Get material object reference.

Definition at line 554 of file MaterialNode.hh.

◆ multiSampling()

bool ACG::SceneGraph::MaterialNode::multiSampling ( )
inline

Get state of multisampling.

Definition at line 514 of file MaterialNode.hh.

◆ overlay_color()

const Vec4f & ACG::SceneGraph::MaterialNode::overlay_color ( ) const
inline

get the overlay color

Definition at line 427 of file MaterialNode.hh.

◆ point_size()

float ACG::SceneGraph::MaterialNode::point_size ( ) const
inline

get point size

Definition at line 467 of file MaterialNode.hh.

◆ read()

void ACG::SceneGraph::MaterialNode::read ( std::istream &  _is)

read MaterialFile

Definition at line 455 of file MaterialNode.cc.

◆ reflectance()

double ACG::SceneGraph::MaterialNode::reflectance ( ) const
inline

get reflectance

Definition at line 446 of file MaterialNode.hh.

◆ round_points()

bool ACG::SceneGraph::MaterialNode::round_points ( ) const
inline

get round points enabled

Definition at line 477 of file MaterialNode.hh.

◆ set_ambient_color()

void ACG::SceneGraph::MaterialNode::set_ambient_color ( const Vec4f _a)
inline

set the ambient color.

Definition at line 410 of file MaterialNode.hh.

◆ set_base_color()

void ACG::SceneGraph::MaterialNode::set_base_color ( const Vec4f _c)
inline

set the base color ( Same as set_emission(const Vec4f& _c) )

Definition at line 400 of file MaterialNode.hh.

◆ set_color()

void ACG::SceneGraph::MaterialNode::set_color ( const Vec4f _c)
inline

set color (base, ambient, diffuse, specular) based on _c

Definition at line 390 of file MaterialNode.hh.

◆ set_diffuse_color()

void ACG::SceneGraph::MaterialNode::set_diffuse_color ( const Vec4f _d)
inline

set the diffuse color.

Definition at line 415 of file MaterialNode.hh.

◆ set_emission()

void ACG::SceneGraph::MaterialNode::set_emission ( const Vec4f _c)
inline

set emission ( same as set_base_color(const Vec4f& _c) )

Definition at line 405 of file MaterialNode.hh.

◆ set_indexOfRefraction()

void ACG::SceneGraph::MaterialNode::set_indexOfRefraction ( double  _m)
inline

set index of refraction

Definition at line 449 of file MaterialNode.hh.

◆ set_line_smooth()

void ACG::SceneGraph::MaterialNode::set_line_smooth ( bool  _b)
inline

set: smooth lines enabled

Definition at line 480 of file MaterialNode.hh.

◆ set_line_width()

void ACG::SceneGraph::MaterialNode::set_line_width ( float  _sz)
inline

set line width (default: 1.0)

Definition at line 470 of file MaterialNode.hh.

◆ set_material()

void ACG::SceneGraph::MaterialNode::set_material ( const ACG::SceneGraph::Material _m)
inline

Set material object.

Definition at line 557 of file MaterialNode.hh.

◆ set_multisampling()

void ACG::SceneGraph::MaterialNode::set_multisampling ( bool  _state)
inline

Set state of multisampling.

Definition at line 517 of file MaterialNode.hh.

◆ set_overlay_color()

void ACG::SceneGraph::MaterialNode::set_overlay_color ( const Vec4f _s)
inline

set the overlay color

Definition at line 425 of file MaterialNode.hh.

◆ set_point_size()

void ACG::SceneGraph::MaterialNode::set_point_size ( float  _sz)
inline

set point size (default: 1.0)

Definition at line 465 of file MaterialNode.hh.

◆ set_random_color()

void ACG::SceneGraph::MaterialNode::set_random_color ( )
inline

Generates a random color and sets it.

Definition at line 395 of file MaterialNode.hh.

◆ set_reflectance()

void ACG::SceneGraph::MaterialNode::set_reflectance ( double  _m)
inline

set reflectance

Definition at line 444 of file MaterialNode.hh.

◆ set_refractive()

void ACG::SceneGraph::MaterialNode::set_refractive ( bool  _r)
inline

set refractive flag

Definition at line 454 of file MaterialNode.hh.

◆ set_round_points()

void ACG::SceneGraph::MaterialNode::set_round_points ( bool  _b)
inline

set round points enabled

Definition at line 475 of file MaterialNode.hh.

◆ set_shininess()

void ACG::SceneGraph::MaterialNode::set_shininess ( float  _s)
inline

set shininess

Definition at line 439 of file MaterialNode.hh.

◆ set_specular_color()

void ACG::SceneGraph::MaterialNode::set_specular_color ( const Vec4f _s)
inline

set the specular color

Definition at line 420 of file MaterialNode.hh.

◆ shininess()

float ACG::SceneGraph::MaterialNode::shininess ( ) const
inline

get shininess

Definition at line 441 of file MaterialNode.hh.

◆ specular_color()

const Vec4f & ACG::SceneGraph::MaterialNode::specular_color ( ) const
inline

get the specular color

Definition at line 422 of file MaterialNode.hh.

Member Data Documentation

◆ applyProperties_

int ACG::SceneGraph::MaterialNode::applyProperties_
private

OR'ed ApplyProperties.

Definition at line 562 of file MaterialNode.hh.

◆ material_

ACG::SceneGraph::Material ACG::SceneGraph::MaterialNode::material_
private

Local material class that actually stores the properties.

Definition at line 565 of file MaterialNode.hh.

◆ materialBackup_

ACG::SceneGraph::Material ACG::SceneGraph::MaterialNode::materialBackup_
private

Material Backup.

Definition at line 568 of file MaterialNode.hh.


The documentation for this class was generated from the following files: