H3D::Appearance Class Reference
[X3D node classes.]

The Appearance node specifies the visual properties of geometry. More...

#include <Appearance.h>

Inheritance diagram for H3D::Appearance:

Inheritance graph
List of all members.

Public Types

typedef DependentSFNode< FillProperties,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFFillProperties
 The SFFillProperties field is dependent on the displayList field of the containing FillProperties node.
typedef DependentSFNode< LineProperties,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFLineProperties
 The SFLineProperties field is dependent on the displayList field of the containing LineProperties node.
typedef DependentSFNode< X3DMaterialNode,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFMaterialNode
 The SFMaterialNode field is dependent on the displayList field of the containing X3DMaterialNode.
typedef DependentSFNode< X3DTextureTransformNode,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFTextureTransformNode
 The SFTextureTransformNode field is dependent on the displayList field of the containing X3DTextureTransformNode node.
typedef DependentSFNode< X3DTextureNode,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFTextureNode
 The SFTextureNode field is dependent on the displayList field of the containing X3DTextureNode node.
typedef DependentMFNode< X3DShaderNode,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
MFShaderNode
 The MFShaderNode field is dependent on the displayList field of the containing X3DShaderNode node.
typedef DependentSFNode< RenderProperties,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFRenderProperties
 The SFRenderProperties field is dependent on the displayList field of the containing X3DShaderNode node.

Public Member Functions

 Appearance (Inst< DisplayList > _displayList=0, Inst< SFFillProperties > _fillProperties=0, Inst< SFLineProperties > _lineProperties=0, Inst< SFMaterialNode > _material=0, Inst< SFNode > _metadata=0, Inst< SFTextureNode > _texture=0, Inst< SFTextureTransformNode > _textureTransform=0, Inst< MFShaderNode > _shaders=0, Inst< SFRenderProperties > _renderProperties=0)
 Constructor.
virtual void render ()
 Set up the appearance in OpenGL.
virtual void preRender ()
 This function will be called by the X3DShapeNode before any rendering of geometry and before the call to the render function.
virtual void postRender ()
 This function will be called by the X3DShapeNode after the geometry has been rendered to restore the states to what it was before the call to preRender().
virtual bool isTransparent ()
 This function checks the transparency field to determine if the material requires that the geometry is rendered with transparency.

Public Attributes

auto_ptr< SFFillPropertiesfillProperties
 If specified it ontains a FillProperties node that specifies additional properties to be applied to all polygonal areas.
auto_ptr< SFLinePropertieslineProperties
 If specified it contains a LineProperties node that specifies additional properties to be applied to all line geometry.
auto_ptr< SFMaterialNodematerial
 The material field, if specified, shall contain a Material node.
auto_ptr< SFTextureNodetexture
 Contains a X3DTextureNode to be used in the texturing.
auto_ptr< SFTextureTransformNodetextureTransform
 Contains a X3DTextureTransformNode that specifies a transformation of texture coordinates.
auto_ptr< MFShaderNodeshaders
 The shaders field defines the collection of shaders of various languages in the order of preference.
auto_ptr< SFRenderPropertiesrenderProperties
 The renderProperties field, if specified, shall contain a RenderProperties node.

Static Public Attributes

static H3DNodeDatabase database
 The H3DNodeDatabase for this node.

Detailed Description

The Appearance node specifies the visual properties of geometry.

The value for each of the fields in this node may be NULL. However, if the field is non-NULL, it shall contain one node of the appropriate type.

Internal routes:
Appearance.dot


Member Function Documentation

void Appearance::preRender  )  [virtual]
 

This function will be called by the X3DShapeNode before any rendering of geometry and before the call to the render function.

So this is the place to save the states that are going to be changed in render() in order to restore it in postRender().

Reimplemented from H3D::X3DAppearanceNode.


Member Data Documentation

auto_ptr< SFFillProperties > H3D::Appearance::fillProperties
 

If specified it ontains a FillProperties node that specifies additional properties to be applied to all polygonal areas.

Access type: inputOutput

Appearance_fillProperties.dot

auto_ptr< SFLineProperties > H3D::Appearance::lineProperties
 

If specified it contains a LineProperties node that specifies additional properties to be applied to all line geometry.

Access type: inputOutput

Appearance_lineProperties.dot

auto_ptr< SFMaterialNode > H3D::Appearance::material
 

The material field, if specified, shall contain a Material node.

If the material field is NULL or unspecified, lighting is off (all lights are ignored during rendering of the object that references this Appearance) and the unlit object colour is (1, 1, 1).

Access type: inputOutput

Appearance_material.dot

auto_ptr< SFRenderProperties > H3D::Appearance::renderProperties
 

The renderProperties field, if specified, shall contain a RenderProperties node.

If renderProperties is NULL or unspecified, the renderProperties field has no effect (this field is not part of the X3D specification)

Access type: inputOutput

Appearance_renderProperties.dot

auto_ptr< MFShaderNode > H3D::Appearance::shaders
 

The shaders field defines the collection of shaders of various languages in the order of preference.

The first node declared is the highest preference. If the language is not supported for the current preference level, the X3DShaderNode's isSelected field is set to false, and the next shader is checked.

Access type: inputOutput

auto_ptr< SFTextureNode > H3D::Appearance::texture
 

Contains a X3DTextureNode to be used in the texturing.

Access type: inputOutput

Appearance_texture.dot

auto_ptr< SFTextureTransformNode > H3D::Appearance::textureTransform
 

Contains a X3DTextureTransformNode that specifies a transformation of texture coordinates.

Access type: inputOutput

Appearance_textureTransform.dot


Generated on Thu Aug 24 12:38:47 2006 for H3D API by  doxygen 1.4.5