SoScale1Dragger - Online Linux Manual PageSection : 3
Updated : Mon Jan 25 2021
Source : Version 2.5.0
Note : Coin

NAMESoScale1Dragger − The SoScale1Dragger class provides a mechanism for the end-user to scale in one dimension​.

SYNOPSIS
#include <Inventor/draggers/SoScale1Dragger​.h> Inherits SoDragger​.

Public Member Functionsvirtual SoType getTypeId (void) const
virtual const SoNodekitCatalog * getNodekitCatalog (void) const
SoScale1Dragger (void)

Static Public Member Functionsstatic SoType getClassTypeId (void)
static const SoNodekitCatalog * getClassNodekitCatalog (void)
static void initClass (void)

Public AttributesSoSFVec3f scaleFactor

Protected Member Functionsvirtual const SoFieldData * getFieldData (void) const
~SoScale1Dragger ()
virtual SbBool setUpConnections (SbBool onoff, SbBool doitalways=0)
void dragStart (void)
void drag (void)
void dragFinish (void)

Static Protected Member Functionsstatic const SoFieldData ** getFieldDataPtr (void)
static const SoNodekitCatalog ** getClassNodekitCatalogPtr (void)
static void startCB (void *f, SoDragger *d)
static void motionCB (void *f, SoDragger *d)
static void finishCB (void *f, SoDragger *d)
static void fieldSensorCB (void *f, SoSensor *s)
static void valueChangedCB (void *f, SoDragger *d)

Protected AttributesSoSFNode feedback
SoSFNode feedbackActive
SoSFNode feedbackSwitch
SoSFNode scaler
SoSFNode scalerActive
SoSFNode scalerSwitch
SoFieldSensor * fieldSensor
SbLineProjector * lineProj

Additional Inherited Members

Detailed DescriptionThe SoScale1Dragger class provides a mechanism for the end-user to scale in one dimension​. Here's how the dragger looks with its default geometry in the inactive state: Use this dragger to allow the end-user of your application to scale along the X-axis​. (Use a transformation node in front of the dragger to position it and re-orient it to scale along any vector​.) See also SoScale2Dragger, SoScaleUniformDragger, SoScale2UniformDragger

Constructor & Destructor Documentation

SoScale1Dragger::SoScale1Dragger (void)Default constructor, sets up the dragger nodekit catalog with the interaction and feedback geometry​. Node kit structure (new entries versus parent class marked with arrow prefix): CLASS SoScale1Dragger -->"this" "callbackList" "topSeparator" "motionMatrix" "geomSeparator" --> "scalerSwitch" --> "scaler" --> "scalerActive" --> "feedbackSwitch" --> "feedback" --> "feedbackActive"(See SoBaseKit::printDiagram() for information about the output formatting​.) Detailed information on catalog parts: CLASS SoScale1Dragger PVT "this", SoScale1Dragger --- "callbackList", SoNodeKitListPart [ SoCallback, SoEventCallback ] PVT "topSeparator", SoSeparator --- PVT "motionMatrix", SoMatrixTransform --- PVT "geomSeparator", SoSeparator --- PVT "scalerSwitch", SoSwitch --- "scaler", SoSeparator --- "scalerActive", SoSeparator --- PVT "feedbackSwitch", SoSwitch --- "feedback", SoSeparator --- "feedbackActive", SoSeparator --- (See SoBaseKit::printTable() for information about the output formatting​.) References SoDragger::addFinishCallback(), SoDragger::addMotionCallback(), SoDragger::addStartCallback(), SoDragger::addValueChangedCallback(), fieldSensor, fieldSensorCB(), finishCB(), lineProj, motionCB(), SoInteractionKit::readDefaultParts(), scaleFactor, SoInteractionKit::setPartAsDefault(), SoDelayQueueSensor::setPriority(), SoInteractionKit::setSwitchValue(), setUpConnections(), startCB(), and valueChangedCB()​.

SoScale1Dragger::~SoScale1Dragger () [protected]Protected destructor​. (Dragger classes are derived from SoBase, so they are reference counted and automatically destroyed when their reference count goes to 0​.) References fieldSensor, and lineProj​.

Member Function Documentation

SoType SoScale1Dragger::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 } else if (node->getTypeId()​.isOfType(SoGroup::getClassTypeId())) { SoGroup * group = (SoGroup *)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​. Reimplemented from SoDragger​.

const SoFieldData * SoScale1Dragger::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 SoDragger​.

const SoNodekitCatalog * SoScale1Dragger::getNodekitCatalog (void) const [virtual]Returns the nodekit catalog which defines the layout of this class' kit​. Reimplemented from SoDragger​.

SbBool SoScale1Dragger::setUpConnections (SbBool onoff, SbBool doitalways = 0) [protected], [virtual]Sets up all internal connections for instances of this class​. (This method will usually not be of interest to the application programmer, unless you want to extend the library with new custom nodekits or dragger classes​. If so, see the SoBaseKit class documentation​.) Reimplemented from SoInteractionKit​. References SoFieldSensor::attach(), SoBaseKit::connectionsSetUp, SoFieldSensor::detach(), fieldSensor, fieldSensorCB(), SoFieldSensor::getAttachedField(), scaleFactor, and SoInteractionKit::setUpConnections()​. Referenced by SoScale1Dragger()​.

void SoScale1Dragger::startCB (void * f, SoDragger * d) [static], [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

References dragStart()​. Referenced by SoScale1Dragger()​.

void SoScale1Dragger::motionCB (void * f, SoDragger * d) [static], [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

References drag()​. Referenced by SoScale1Dragger()​.

void SoScale1Dragger::finishCB (void * f, SoDragger * d) [static], [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

References dragFinish()​. Referenced by SoScale1Dragger()​.

void SoScale1Dragger::fieldSensorCB (void * d, SoSensor * s) [static], [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

References SoDragger::getMotionMatrix(), SbMatrix::getTransform(), scaleFactor, SoDragger::setMotionMatrix(), and SbMatrix::setTransform()​. Referenced by setUpConnections(), and SoScale1Dragger()​.

void SoScale1Dragger::valueChangedCB (void * f, SoDragger * d) [static], [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

References SoFieldSensor::attach(), SoFieldSensor::detach(), fieldSensor, SoDragger::getMotionMatrix(), SbMatrix::getTransform(), and scaleFactor​. Referenced by SoScale1Dragger()​.

void SoScale1Dragger::dragStart (void) [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

Called when dragger is selected (picked) by the user​.
References SoDragger::getLocalStartingPoint(), lineProj, SbLineProjector::setLine(), and SoInteractionKit::setSwitchValue()​. Referenced by startCB()​.

void SoScale1Dragger::drag (void) [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

Called when user drags the mouse after picking the dragger​.
References SoDragger::appendScale(), SoDragger::getLocalStartingPoint(), SoDragger::getLocalToWorldMatrix(), SoDragger::getNormalizedLocaterPosition(), SoDragger::getStartMotionMatrix(), SoDragger::getViewVolume(), lineProj, SbLineProjector::project(), SoDragger::setMotionMatrix(), SbProjector::setViewVolume(), and SbProjector::setWorkingSpace()​. Referenced by motionCB()​.

void SoScale1Dragger::dragFinish (void) [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

Called when mouse button is released after picking and interacting with the dragger​.
References SoInteractionKit::setSwitchValue()​. Referenced by finishCB()​.

Member Data Documentation

SoSFVec3f SoScale1Dragger::scaleFactorContinuously updated to contain the current vector of scaling along the X, Y and Z axes​. For the SoScale1Dragger, only the X component is used, the Y and Z components will always be equal to 1 (ie no scaling)​. Referenced by fieldSensorCB(), setUpConnections(), SoScale1Dragger(), and valueChangedCB()​.

SoFieldSensor * SoScale1Dragger::fieldSensor [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

Referenced by setUpConnections(), SoScale1Dragger(), valueChangedCB(), and ~SoScale1Dragger()​.

SbLineProjector * SoScale1Dragger::lineProj [protected]This API member is considered internal to the library, as it is not likely to be of interest to the application programmer​.

Referenced by drag(), dragStart(), SoScale1Dragger(), and ~SoScale1Dragger()​.

AuthorGenerated automatically by Doxygen for Coin from the source code​.
0
Johanes Gumabo
Data Size   :   47,310 byte
man-SoScale1Dragger.3coin2Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   3 / 199,105
Visitor ID   :     :  
Visitor IP   :   3.138.134.247   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.