Provided by: libcoin80-doc_3.1.4~abc9f50-4ubuntu2_all bug

NAME

       SoEnvironment -

       The SoEnvironment class is a node for specifying global rendering parameters.

       This node type provides the application programmer with the ability to set global
       parameters influencing lighting and fog.

SYNOPSIS

       #include <Inventor/nodes/SoEnvironment.h>

       Inherits SoNode.

   Public Types
       enum FogType { NONE = SoEnvironmentElement::NONE, HAZE = SoEnvironmentElement::HAZE, FOG =
           SoEnvironmentElement::FOG, SMOKE = SoEnvironmentElement::SMOKE }

   Public Member Functions
       virtual SoType getTypeId (void) const
           Returns the type identification of an object derived from a class inheriting SoBase.
           This is used for run-time type checking and 'downward' casting.
       SoEnvironment (void)
       virtual void GLRender (SoGLRenderAction *action)
       virtual void callback (SoCallbackAction *action)

   Static Public Member Functions
       static SoType getClassTypeId (void)
       static void initClass (void)

   Public Attributes
       SoSFFloat ambientIntensity
       SoSFColor ambientColor
       SoSFVec3f attenuation
       SoSFEnum fogType
       SoSFColor fogColor
       SoSFFloat fogVisibility

   Protected Member Functions
       virtual const SoFieldData * getFieldData (void) const
       virtual ~SoEnvironment ()

   Static Protected Member Functions
       static const SoFieldData ** getFieldDataPtr (void)

   Additional Inherited Members

Detailed Description

       The SoEnvironment class is a node for specifying global rendering parameters.

       This node type provides the application programmer with the ability to set global
       parameters influencing lighting and fog.

       FILE FORMAT/DEFAULTS:

       Environment {
           ambientIntensity 0.2
           ambientColor 1 1 1
           attenuation 0 0 1
           fogType NONE
           fogColor 1 1 1
           fogVisibility 0
       }

Member Enumeration Documentation

   enum SoEnvironment::FogType
       Enumeration of available types of fog.

       Enumerator

       NONE   No fog. Visibility will be equal for all objects, independent of distance to
              camera.

       HAZE   Fog where visibility will decrease linearly with distance to camera.

       FOG    Fog where visibility will decrease exponentially with distance to camera.

       SMOKE  Fog where visibility will decrease exponentially with the square of the distance to
              camera (simulating really thick fog).

Constructor & Destructor Documentation

   SoEnvironment::SoEnvironment (void)
       Constructor.

   SoEnvironment::~SoEnvironment () [protected],  [virtual]
       Destructor.

Member Function Documentation

   SoType SoEnvironment::getTypeId (void) const [virtual]
       Returns the type identification of an object derived from a class inheriting SoBase. This
       is used for run-time type checking and 'downward' casting. Usage example:

       void foo(SoNode * node)
       {
         if (node->getTypeId() == SoFile::getClassTypeId()) {
           SoFile * filenode = (SoFile *)node;  // safe downward cast, knows the type
         }
       }

       For application programmers wanting to extend the library with new nodes, engines,
       nodekits, draggers or others: this method needs to be overridden in all subclasses. This
       is typically done as part of setting up the full type system for extension classes, which
       is usually accomplished by using the pre-defined macros available through for instance
       Inventor/nodes/SoSubNode.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes),
       Inventor/engines/SoSubEngine.h (for engine classes) and so on.

       For more information on writing Coin extensions, see the class documentation of the
       toplevel superclasses for the various class groups.

       Implements SoBase.

   const SoFieldData * SoEnvironment::getFieldData (void) const [protected],  [virtual]
       Returns a pointer to the class-wide field data storage object for this instance. If no
       fields are present, returns NULL.

       Reimplemented from SoFieldContainer.

   void SoEnvironment::GLRender (SoGLRenderAction *action) [virtual]
       Action method for the SoGLRenderAction.

       This is called during rendering traversals. Nodes influencing the rendering state in any
       way or who wants to throw geometry primitives at OpenGL overrides this method.

       Reimplemented from SoNode.

   void SoEnvironment::callback (SoCallbackAction *action) [virtual]
       Action method for SoCallbackAction.

       Simply updates the state according to how the node behaves for the render action, so the
       application programmer can use the SoCallbackAction for extracting information about the
       scene graph.

       Reimplemented from SoNode.

Member Data Documentation

   SoSFFloat SoEnvironment::ambientIntensity
       A global ambient value for the light intensity for the complete scene. This will provide
       some light even when there are no light sources defined for the scene.

       Valid values is from 0.0 (no ambient light) to 1.0 (full ambient light intensity). Default
       value is 0.2.

   SoSFColor SoEnvironment::ambientColor
       The color of the global ambient light. Defaults to full intensity white, ie <1.0, 1.0,
       1.0>.

       Each component of this RGB vector is multiplied with the scalar value of
       SoEnvironment::ambientIntensity.

   SoSFVec3f SoEnvironment::attenuation
       Squared, linear, and constant light attenuation coefficients (in that order). Please note
       that this is the reverse order of how attenuation is usually specified.

   SoSFEnum SoEnvironment::fogType
       The fog model. See SoEnvironment::FoType.

   SoSFColor SoEnvironment::fogColor
       Color of fog. Defaults to full intensity white.

   SoSFFloat SoEnvironment::fogVisibility
       The 'cut-off' distance from the camera where objects will be totally obscured by fog. If
       set to 0.0, the far plane distance will be used instead.

       Default value is 0.0.

Author

       Generated automatically by Doxygen for Coin from the source code.