SoScXMLDollyTarget(3)
π NAME π
okay so bestie, welcome to SoScXMLDollyTarget β it's the SCXML event target service for zoom behaviour. yes, the camera-zooming one. she's giving main character energy for your navigation events. π
This page is SoScXMLDollyTarget(3) from the Coin manual, and I'm gonna walk you through every single thing on it. no skips. periodt. π
β¨ SYNOPSIS β¨
First things first, you gotta include her:
#include <Inventor/scxml/SoScXMLDollyTarget.h>
She inherits from SoScXMLNavigationTarget. family tree matters, iykyk. πΈ
π«Ά Public Member Functions
virtual SoType getTypeId (void) constβ hands you the type identification of an object derived from a class inheritingSoBase. it's literally for runtime type checking and"downward"casting. the glow-up from generic to specific, fr fr.
π¦ Public Member Functions inherited from ScXMLEventTarget
virtual void setEventTargetType (const char *targettype)const char * getEventTargetType (void) constvirtual void setEventTargetName (const char *targetname)const char * getEventTargetName (void) constvirtual const ScXMLEvent * getCurrentEvent (void) constvirtual void queueEvent (const ScXMLEvent *event)virtual void queueEvent (const SbName &eventid)virtual SbBool processEventQueue (void)virtual SbBool sendExternalEvent (const ScXMLSendElt *sendelt)virtual SbBool sendInternalEvent (const ScXMLEventElt *sendelt)virtual void queueInternalEvent (const ScXMLEvent *event)virtual void queueInternalEvent (const SbName &eventid)
π Public Member Functions inherited from ScXMLObject
SbBool isOfType (SoType type) constβ returnsTRUEif the type of this object is either the same type or inherited from type. so she's like "am I one of y'all?" and the answer is honest. π―
π Static Public Member Functions
static SoType getClassTypeId (void)static void * createInstance (void)static void initClass (void)static void cleanClass (void)static SoScXMLDollyTarget * constructSingleton (void)static void destructSingleton (void)static SoScXMLDollyTarget * singleton (void)static const SbName & BEGIN (void)static const SbName & UPDATE (void)static const SbName & END (void)static const SbName & JUMP (void)static const SbName & STEP_IN (void)static const SbName & STEP_OUT (void)static void dolly (SoCamera *camera, float diff)static void jump (SoCamera *camera, float focaldistance)static void step (SoCamera *camera, SbBool exponential, float diff, float min=0.0f, float max=0.0f)
π Static Public Member Functions inherited from SoScXMLNavigationTarget
static SoType getClassTypeId (void)static void initClass (void)static void cleanClass (void)
π Static Public Member Functions inherited from ScXMLEventTarget
static SoType getClassTypeId (void)static void initClass (void)static void cleanClass (void)
β Static Public Member Functions inherited from ScXMLObject
static SoType getClassTypeId (void)β this static method returns theSoTypeobject 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.static void cleanClass (void)β does the opposite ofinitClass: deallocates any class specific resources and resets the class to an uninitialized state with respect to the Coin type system. it's the un-glow-up. π
π₯ Protected Member Functions
SoScXMLDollyTarget (void)virtual SbBool processOneEvent (const ScXMLEvent *event)
π₯ Protected Member Functions inherited from SoScXMLNavigationTarget
Data * getSessionData (SbName sessionid, NewDataFunc *constructor)void freeSessionData (SbName sessionid)
π₯ Protected Member Functions inherited from ScXMLEventTarget
virtual void setCurrentEvent (const ScXMLEvent *event)virtual const ScXMLEvent * getNextEvent (void)virtual const ScXMLEvent * getNextInternalEvent (void)virtual const ScXMLEvent * getNextExternalEvent (void)
π Additional Inherited Members
π§ Protected Types inherited from SoScXMLNavigationTarget
typedef Data * NewDataFunc(void)
π§ Static Protected Member Functions inherited from SoScXMLNavigationTarget
static SbName getSessionId (const ScXMLEvent *event)static ScXMLStateMachine * getStateMachine (const ScXMLEvent *event, SbName sessionid)static SoScXMLStateMachine * getSoStateMachine (const ScXMLEvent *event, SbName sessionid)static SoCamera * getActiveCamera (const ScXMLEvent *event, SbName sessionid)static SbBool getEventDouble (const ScXMLEvent *event, const char *label, double &dbl_out, SbBool required=TRUE)static SbBool getEventString (const ScXMLEvent *event, const char *label, SbString &str_out, SbBool required=TRUE)static SbBool getEventSbBool (const ScXMLEvent *event, const char *label, SbBool &bool_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 getEventSbRotation (const ScXMLEvent *event, const char *label, SbRotation &rot_out, SbBool required=TRUE)
π§ Static Protected Member Functions inherited from ScXMLEventTarget
static void registerEventTarget (ScXMLEventTarget *target, const char *sessionid=NULL)static void unregisterEventTarget (ScXMLEventTarget *target, const char *sessionid=NULL)static ScXMLEventTarget * getEventTarget (const char *targettype, const char *targetname, 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
char * targetnamechar * targettypeconst ScXMLEvent * currenteventSbBool isprocessingqueue
π Detailed Description π
okay so what is she? SCXML event target service for zoom behaviour. that's the whole vibe: she listens for dolly/zoom events and moves the camera accordingly. obsessed. π¦
The events she handles all live under this namespace:
x-coin-navigation.Dolly.*
and here's every single one of them, in all her glory:
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}
π«Ά little note: the[bracketed]bits are optional, the{braced}bits are the typed payloads, and_sessionidis always in the mix. don't come for me, that's just how the original reads.
β³ Since
Coin 3.1. she's been around a minute. vintage queen. π
π Constructor & Destructor Documentation π
SoScXMLDollyTarget::SoScXMLDollyTarget (void ) [protected]
the constructor registers the singleton with the proper name and target type. so like, the second she exists, she's already introducing herself. social butterfly behaviour, honestly. π¦
π Member Function Documentation π
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.
const SbName & SoScXMLDollyTarget::BEGIN (void ) [static]
returns the full name for the dolly BEGIN SCXML event. β¨
const SbName & SoScXMLDollyTarget::UPDATE (void ) [static]
returns the full name for the dolly UPDATE SCXML event. β¨
const SbName & SoScXMLDollyTarget::END (void ) [static]
returns the full name for the dolly END SCXML event. β¨
const SbName & SoScXMLDollyTarget::JUMP (void ) [static]
returns the full name for the dolly JUMP SCXML event. β¨
const SbName & SoScXMLDollyTarget::STEP_IN (void ) [static]
returns the full name for the dolly STEP_IN SCXML event. β¨
const SbName & SoScXMLDollyTarget::STEP_OUT (void ) [static]
returns the full name for the dolly STEP_OUT SCXML event. β¨
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. that's it. nothing else. don't @ me.
π heads up bestie: this function is more or less useless to use on an SoOrthographicCamera. like, genuinely. it's giving "not built for that."
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 isTRUE...FIXME. yeah. that's literally what the original says. the docs just stop. iconically unhinged of them.
SbBool SoScXMLDollyTarget::processOneEvent (const ScXMLEvent * event) [protected], [virtual]
dispatches incoming SCXML events to the corresponding functionality. she's the bouncer at the club β every event gets sent to exactly the right place. π
Reimplemented from ScXMLEventTarget.
π Author π
Generated automatically by Doxygen for Coin from the source code. so nobody's taking credit, the robot did it. slay, robot. π€β¨
and that's the whole page, bestie! π«Ά this was Coin version 4.0.10, dated Thu Jun 25 2026 00:00:00, and the page you just read is SoScXMLDollyTarget(3). go zoom some cameras. no cap. ππΈπ¦π
π¦ where this page comes from
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms