Coin  4.0.3
Coin3D core library
Loading...
Searching...
No Matches
SoScXMLDollyTarget Class Reference

SCXML event target service for zoom behaviour. More...

#include <Inventor/scxml/SoScXMLDollyTarget.h>

Inheritance diagram for SoScXMLDollyTarget:
SoScXMLNavigationTarget ScXMLEventTarget ScXMLObject

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 runtime type checking and "downward" casting.
 
- Public Member Functions inherited from ScXMLEventTarget
virtual const ScXMLEventgetCurrentEvent (void) const
 
const char * getEventTargetName (void) const
 
const char * getEventTargetType (void) const
 
virtual SbBool processEventQueue (void)
 
virtual void queueEvent (const SbName &eventid)
 
virtual void queueEvent (const ScXMLEvent *event)
 
virtual void queueInternalEvent (const SbName &eventid)
 
virtual void queueInternalEvent (const ScXMLEvent *event)
 
virtual SbBool sendExternalEvent (const ScXMLSendElt *sendelt)
 
virtual SbBool sendInternalEvent (const ScXMLEventElt *sendelt)
 
virtual void setEventTargetName (const char *targetname)
 
virtual void setEventTargetType (const char *targettype)
 
- Public Member Functions inherited from ScXMLObject
SbBool isOfType (SoType type) const
 Returns TRUE if the type of this object is either of the same type or inherited from type.
 

Static Public Member Functions

static const SbNameBEGIN (void)
 
static void cleanClass (void)
 
static SoScXMLDollyTargetconstructSingleton (void)
 
static voidcreateInstance (void)
 
static void destructSingleton (void)
 
static void dolly (SoCamera *camera, float diff)
 
static const SbNameEND (void)
 
static SoType getClassTypeId (void)
 
static void initClass (void)
 
static void jump (SoCamera *camera, float focaldistance)
 
static const SbNameJUMP (void)
 
static SoScXMLDollyTargetsingleton (void)
 
static void step (SoCamera *camera, SbBool exponential, float diff, float min=0.0f, float max=0.0f)
 
static const SbNameSTEP_IN (void)
 
static const SbNameSTEP_OUT (void)
 
static const SbNameUPDATE (void)
 
- Static Public Member Functions inherited from SoScXMLNavigationTarget
static void cleanClass (void)
 
static SoType getClassTypeId (void)
 
static void initClass (void)
 
- Static Public Member Functions inherited from ScXMLEventTarget
static void cleanClass (void)
 
static SoType getClassTypeId (void)
 
static void initClass (void)
 
- Static Public Member Functions inherited from ScXMLObject
static void cleanClass (void)
 Does the opposite of initClass, deallocates any class specific resources and resets the class to an uninitialized state with respect to the Coin type system.
 
static SoType getClassTypeId (void)
 This static method returns the SoType object associated with objects of this class.
 
static void initClass (void)
 Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
 

Protected Member Functions

 SoScXMLDollyTarget (void)
 
virtual SbBool processOneEvent (const ScXMLEvent *event)
 
- Protected Member Functions inherited from SoScXMLNavigationTarget
void freeSessionData (SbName sessionid)
 
DatagetSessionData (SbName sessionid, NewDataFunc *constructor)
 
- Protected Member Functions inherited from ScXMLEventTarget
virtual const ScXMLEventgetNextEvent (void)
 
virtual const ScXMLEventgetNextExternalEvent (void)
 
virtual const ScXMLEventgetNextInternalEvent (void)
 
virtual void setCurrentEvent (const ScXMLEvent *event)
 

Additional Inherited Members

- Protected Types inherited from SoScXMLNavigationTarget
typedef DataNewDataFunc(void)
 
- Static Protected Member Functions inherited from SoScXMLNavigationTarget
static SoCameragetActiveCamera (const ScXMLEvent *event, SbName sessionid)
 
static SbBool getEventDouble (const ScXMLEvent *event, const char *label, double &dbl_out, SbBool required=TRUE)
 
static SbBool getEventSbBool (const ScXMLEvent *event, const char *label, SbBool &bool_out, SbBool required=TRUE)
 
static SbBool getEventSbRotation (const ScXMLEvent *event, const char *label, SbRotation &rot_out, SbBool required=TRUE)
 
static SbBool getEventSbVec2f (const ScXMLEvent *event, const char *label, SbVec2f &vec_out, SbBool required=TRUE)
 
static SbBool getEventSbVec3f (const ScXMLEvent *event, const char *label, SbVec3f &vec_out, SbBool required=TRUE)
 
static SbBool getEventString (const ScXMLEvent *event, const char *label, SbString &str_out, SbBool required=TRUE)
 
static SbName getSessionId (const ScXMLEvent *event)
 
static SoScXMLStateMachinegetSoStateMachine (const ScXMLEvent *event, SbName sessionid)
 
static ScXMLStateMachinegetStateMachine (const ScXMLEvent *event, SbName sessionid)
 
- Static Protected Member Functions inherited from ScXMLEventTarget
static ScXMLEventTargetgetEventTarget (const char *targettype, const char *targetname, const char *sessionid=NULL)
 
static void registerEventTarget (ScXMLEventTarget *target, const char *sessionid=NULL)
 
static void unregisterEventTarget (ScXMLEventTarget *target, const char *sessionid=NULL)
 
- Static Protected Member Functions inherited from ScXMLObject
static void registerClassType (const char *xmlns, const char *classname, SoType type)
 
static void registerInvokeClassType (const char *xmlns, const char *targettype, const char *source, SoType type)
 
- Protected Attributes inherited from ScXMLEventTarget
const ScXMLEventcurrentevent
 
SbBool isprocessingqueue
 
char * targetname
 
char * targettype
 

Detailed Description

SCXML event target service for zoom behaviour.

Events:

x-coin-navigation.Dolly.*

BEGIN _sessionid {string} mouseposition {SbVec2f} [absminfocaldistance] {float} [absmaxfocaldistance] {float} [setfocaldistance] {float} [motiontype] {string:exponential,linear}

UPDATE _sessionid {string} mouseposition {SbVec2f}

END _sessionid {string} mouseposition {SbVec2f}

JUMP _sessionid {string} focaldistance {float}

STEP_IN _sessionid [count=1] {float} [absminfocaldistance] {float} [motiontype] {string:exponential,linear}

STEP_OUT _sessionid [count=1] {float} [absmaxfocaldistance] {float} [motiontype] {string:exponential,linear}

Since
Coin 3.1

Constructor & Destructor Documentation

◆ SoScXMLDollyTarget()

SoScXMLDollyTarget::SoScXMLDollyTarget ( void )
protected

The constructor registers the singleton with the proper name and target type.

Member Function Documentation

◆ BEGIN()

const SbName & SoScXMLDollyTarget::BEGIN ( void )
static

Returns the full name for the dolly BEGIN SCXML event.

◆ END()

const SbName & SoScXMLDollyTarget::END ( void )
static

Returns the full name for the dolly END SCXML event.

◆ getTypeId()

SoType SoScXMLDollyTarget::getTypeId ( void ) const
virtual

Returns the type identification of an object derived from a class inheriting SoBase. This is used for runtime type checking and "downward" casting.

See also
SoBase::getTypeId() const

Implements SoScXMLNavigationTarget.

◆ jump()

void SoScXMLDollyTarget::jump ( SoCamera * camera,
float focaldistance )
static

Jumps the camera to focaldistance distance from the current focal point of the camera. This function only changes the SoCamera::position field.

This function is more or less useless to use on an SoOrthographicCamera.

◆ JUMP()

const SbName & SoScXMLDollyTarget::JUMP ( void )
static

Returns the full name for the dolly JUMP SCXML event.

◆ processOneEvent()

SbBool SoScXMLDollyTarget::processOneEvent ( const ScXMLEvent * event)
protectedvirtual

Dispatches incoming SCXML events to the corresponding functionality.

Reimplemented from ScXMLEventTarget.

◆ step()

void SoScXMLDollyTarget::step ( SoCamera * camera,
SbBool exponential,
float diff,
float mindistance = 0.0f,
float maxdistance = 0.0f )
static

Steps the camera relative to its orientation and focal point by diff.

If exponential is FALSE, then the diff value is treated as an absolute distance value.

If mindistance and/or maxdistance is anything but 0.0, they are checked against the focal distance, and the focal distance will be clamped inside the range. Both are not needed, if only one is specified, only that part of the range will be used to limit the dollying.

If exponential is TRUE...FIXME

◆ STEP_IN()

const SbName & SoScXMLDollyTarget::STEP_IN ( void )
static

Returns the full name for the dolly STEP_IN SCXML event.

◆ STEP_OUT()

const SbName & SoScXMLDollyTarget::STEP_OUT ( void )
static

Returns the full name for the dolly STEP_OUT SCXML event.

◆ UPDATE()

const SbName & SoScXMLDollyTarget::UPDATE ( void )
static

Returns the full name for the dolly UPDATE SCXML event.


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