Coin Logo http://www.sim.no
http://www.coin3d.org

Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes

SoPickAction Class Reference

The SoPickAction class is the base class for picking actions.The basis for all interaction features that Coin provides for the application programmer is the pick actions. Draggers, manipulators, SoSelection nodes, etc all make use of the functionality provided by the pick actions for selecting and manipulating scene geometry in various ways. More...

#include <Inventor/actions/SoPickAction.h>

Inheritance diagram for SoPickAction:
SoAction SoRayPickAction

List of all members.

Public Member Functions

void setViewportRegion (const SbViewportRegion &newregion)
const SbViewportRegiongetViewportRegion (void)
void enableCulling (const SbBool flag)
SbBool isCullingEnabled () const

Static Public Member Functions

static void initClass (void)

Protected Member Functions

 SoPickAction (const SbViewportRegion &viewportregion)
virtual ~SoPickAction ()
virtual void beginTraversal (SoNode *node)

Protected Attributes

SbViewportRegion vpRegion

Detailed Description

The SoPickAction class is the base class for picking actions.

The basis for all interaction features that Coin provides for the application programmer is the pick actions. Draggers, manipulators, SoSelection nodes, etc all make use of the functionality provided by the pick actions for selecting and manipulating scene geometry in various ways.

This class is not supposed to be used directly by the application programmer, as it is more a place-holder for the common interface of picking operations. It does not contain any actual code for doing scenegraph picks.

Coin provides a fully functional picking action for the application programmer to use through the SoRayPickAction class (which inherits the SoPickAction class).

See also:
SoSelection

Constructor & Destructor Documentation

SoPickAction::SoPickAction ( const SbViewportRegion viewportregion) [protected]

Constructor.

SoPickAction::~SoPickAction ( void  ) [protected, virtual]

Destructor.


Member Function Documentation

void SoPickAction::initClass ( void  ) [static]

Initializes the run-time type system for this class, and sets up the enabled elements and action method list.

Reimplemented from SoAction.

Reimplemented in SoRayPickAction.

void SoPickAction::setViewportRegion ( const SbViewportRegion newregion)

Set a new viewport region to replace the one passed in with the constructor.

References vpRegion.

const SbViewportRegion & SoPickAction::getViewportRegion ( void  )

Returns the viewport region used by the action.

References vpRegion.

void SoPickAction::enableCulling ( const SbBool  flag)

Don't calculate bounding boxes and try to do culling when picking.

This can provide a speed-up in cases where the default setting of on would be inefficient.

SbBool SoPickAction::isCullingEnabled ( void  ) const

Returns the current state of the culling flag.

void SoPickAction::beginTraversal ( SoNode node) [protected, virtual]

This virtual method is called from SoAction::apply(), and is the entry point for the actual scenegraph traversal.

It can be overridden to initialize the action at traversal start, for specific initializations in the action subclasses inheriting SoAction.

Default method just calls traverse(), which any overridden implementation of the method must do too (or call SoAction::beginTraversal()) to trigger the scenegraph traversal.

Reimplemented from SoAction.

Reimplemented in SoRayPickAction.

References SoAction::beginTraversal(), SoAction::getState(), SoState::pop(), SoState::push(), and vpRegion.

Referenced by SoRayPickAction::beginTraversal().


Member Data Documentation

The viewport region used by pick actions.

Referenced by SoRayPickAction::beginTraversal(), beginTraversal(), getViewportRegion(), and setViewportRegion().


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

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Mon Feb 28 2011 10:12:17 for Coin by Doxygen. 1.7.3