|
Developer Documentation
|
#include <Plugin-SkeletonEditing/SkeletonEditingPlugin.hh>
Public Slots | |
| QString | version () |
Scriptable Functions | |
| void | splitBone (int _objectId, int _tailJoint) |
| insert a joint in the middle of a bone given by its (unique) tailJoint | |
| void | addJoint (int _objectId, int _parent, Vector _position) |
| add joint to the skeleton | |
| void | deleteJoint (int _objectId, int _jointId) |
| delete joint from the skeleton | |
| void | transformJoint (int _objectId, int _jointId, Matrix4x4 _matrix) |
| transform joint with given matrix | |
| Matrix4x4 | globalMatrix (int _objectId, int _jointId) |
| get global matrix of a joint in the active pose | |
| Matrix4x4 | localMatrix (int _objectId, int _jointId) |
| get local matrix of a joint in the active pose | |
| Vector | globalTranslation (int _objectId, int _jointId) |
| get global translation of a joint in the active pose | |
| Vector | localTranslation (int _objectId, int _jointId) |
| get local translation of a joint in the active pose | |
| int | animationCount (int _objectId) |
| get the number of animations | |
| int | frameCount (int _objectId, int _animationIndex) |
| get the number of frames | |
| int | activeAnimation (int _objectId) |
| get active animation | |
| int | activeFrame (int _objectId) |
| get active frame | |
| void | setActivePose (int _objectId, int _animationIndex, int _frame) |
| set active pose | |
| void | addAnimation (int _objectId, QString _name, int _frames) |
| add animation | |
| void | splitJoint (QMouseEvent *_event) |
| split selected Joint | |
Signals | |
| void | updateView () |
| void | updatedObject (int, const UpdateType &_type) |
| void | nodeVisibilityChanged (int) |
| void | setRenderer (unsigned int _viewer, QString _rendererName) |
| void | getCurrentRenderer (unsigned int _viewer, QString &_rendererName) |
| void | addPickMode (const std::string &_mode) |
| void | addHiddenPickMode (const std::string &_mode) |
| void | setPickModeMouseTracking (const std::string &_mode, bool _mouseTracking) |
| void | setPickModeToolbar (const std::string &_mode, QToolBar *_toolbar) |
| void | addContextMenuItem (QAction *_action, ContextMenuType _type) |
| void | log (Logtype _type, QString _message) |
| void | log (QString _message) |
| void | scriptInfo (QString _functionName) |
| void | setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions) |
| void | addToolbar (QToolBar *_toolbar) |
| void | getToolBar (QString _name, QToolBar *&_toolbar) |
| void | registerKey (int _key, Qt::KeyboardModifiers _modifiers, QString _description, bool _multiUse=false) |
| void | addToolbox (QString _name, QWidget *_widget) |
| void | addEmptyObject (DataType _type, int &_id) |
| void | deleteObject (int _id) |
| void | createBackup (int _objectid, QString _name, UpdateType _type=UPDATE_ALL) |
Signals inherited from BaseInterface | |
| virtual void | updateView () |
| Update current view in Main Application. | |
| virtual void | setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions) |
| Set a description for a public slot. | |
| virtual void | setRenderer (unsigned int _viewer, QString _rendererName) |
| Set a renderer for the given viewer. | |
Signals inherited from KeyInterface | |
| virtual void | registerKey (int _key, Qt::KeyboardModifiers _modifiers, QString _description, bool _multiUse=false) |
| Register a key-combination for your plugin. | |
Signals inherited from PickingInterface | |
| virtual void | addPickMode (const std::string &_mode) |
| Add a new picking mode to the examiner. | |
Signals inherited from ToolboxInterface | |
| virtual void | addToolbox (QString _name, QWidget *_widget) |
| Add a toolbox widget to the gui with the given name. | |
Signals inherited from LoggingInterface | |
| virtual void | log (Logtype _type, QString _message)=0 |
| virtual void | log (QString _message)=0 |
Signals inherited from ScriptInterface | |
| virtual void | scriptInfo (QString _functionWithParameters) |
| Emit this signal if a scriptable function is executed. | |
| virtual void | getScriptingEngine (QScriptEngine *&_engine) |
| virtual void | executeFileScript (QString _filename) |
| virtual void | getAvailableFunctions (QStringList &_functions) |
Signals inherited from ToolbarInterface | |
| virtual void | addToolbar (QToolBar *_toolbar) |
| Adds a Toolbar to the main widget. | |
Signals inherited from ContextMenuInterface | |
| virtual void | addContextMenuItem (QAction *_action, ContextMenuType _type) |
| Add an entry for a context Menu. | |
Signals inherited from LoadSaveInterface | |
| virtual void | save (int _id, QString _filename) |
| Save object to a file. | |
| virtual void | load (QString _filename, DataType _type, int &_id) |
| Load object from file with a specific DataType. | |
Signals inherited from BackupInterface | |
| virtual void | createBackup (int _objectid, QString _name, UpdateType _type=UPDATE_ALL) |
| Tell Backup Plugin to create a backup. | |
| virtual void | aboutToRestore (int _objectid) |
| Backup Plugin tells other Plugins that a restore will happen. | |
| virtual void | generateBackup (int _id, QString _name, UpdateType _type) |
| This signal is emitted by a BackupPlugin and tells a TypePlugin to generate a backup. | |
Signals inherited from RPCInterface | |
| virtual void | pluginExists (QString _pluginName, bool &_exists) |
Public Member Functions | |
| SkeletonEditingPlugin () | |
| Default Constructor. | |
| ~SkeletonEditingPlugin () | |
| Destructor. | |
| QString | name () |
| Name of the Plugin. | |
| QString | description () |
| Description of the Plugin. | |
Private Slots | |
| void | initializePlugin () |
| void | pluginsInitialized () |
| Initialization of the plugin when it is loaded by the core. | |
| void | slotObjectUpdated (int _id, const UpdateType &_type) |
| void | slotMouseWheelEvent (QWheelEvent *_event, const std::string &_mode) |
| void | slotMouseEvent (QMouseEvent *_event) |
| MousePress event occured. | |
| void | slotKeyEvent (QKeyEvent *_event) |
| void | slotKeyReleaseEvent (QKeyEvent *_event) |
| void | slotPickModeChanged (const std::string &_mode) |
| slot is called when the pickMode changed | |
| void | slotSetEditingMode (QAction *_action) |
| void | slotPickToolbarAction (QAction *_action) |
| void | setDescriptions () |
| Set Descriptions for Scripting Slots. | |
| void | manipulatorMoved (QtTranslationManipulatorNode *_node, QMouseEvent *_event) |
| move the object when its manipulator moves | |
| void | ManipulatorPositionChanged (QtTranslationManipulatorNode *_node) |
| update object when its manipulator changes position | |
| void | slotRotateManipulator (bool _toggled) |
Private Slots inherited from BaseInterface | |
| virtual void | exit () |
| virtual QString | version () |
| Return a version string for your plugin. | |
Private Slots inherited from KeyInterface | |
| virtual void | slotKeyEvent (QKeyEvent *_event) |
| Key Event from Main App. | |
Private Member Functions | |
| void | moveJoint (QMouseEvent *_event) |
| bool | canModify (QMouseEvent *_event) |
| checks, if the skeleton can be modified. a skeleton can be modified, if the active pose is the reference pose | |
| void | insertJoint (QMouseEvent *_event) |
| void | cancelJointInsertion () |
| void | deleteJoint (QMouseEvent *_event) |
| void | selectJoint (QMouseEvent *_event) |
| Skeleton::Pose * | activePose (SkeletonObject *_skeletonObj) |
| void | setJointPosition (SkeletonObject *_skeletonObj, Skeleton::Joint *_joint, ACG::Vec3d &_position) |
| OpenMesh::Vec3d | getNearestJoint (SkeletonObject *_skeletonObj, OpenMesh::Vec3d &_hitPoint, int &_bestJointID) |
| Get nearest joint to hitPoint (used for snapping) | |
| void | placeManip (QMouseEvent *_event) |
| Place and show the Manipulator. | |
| void | showManipulators () |
| Show/Hide active manipulators. | |
| void | updateManipulatorPosition (BaseObjectData *_skeletonObj) |
| make sure the manipulator is positioned on a joint | |
| void | inverseKinematic (ACG::Vec3d dest, Skeleton::Pose *currentPose, Skeleton::Joint *pickedJoint, std::vector< Skeleton::Joint * > rotatableJoints) |
| function for computing the position of our joints using inverse Kinematic | |
Private Member Functions inherited from BaseInterface | |
| virtual void | noguiSupported () |
| virtual | ~BaseInterface () |
| Destructor. | |
| virtual void | blockScenegraphUpdates (bool _block) |
| Tell the core to prevent scenegraph updates. | |
| virtual void | updatedObject (int _objectId) |
| An object has been changed or added by this plugin. | |
| virtual void | updatedObject (int _identifier, const UpdateType &_type) |
| An object has been changed or added by this plugin. | |
| virtual void | nodeVisibilityChanged (int _identifier) |
| A scenegraph node has been shown or hidden. | |
| virtual void | getCurrentRenderer (unsigned int _viewer, QString &_rendererName) |
| Get the current renderer for the given viewer. | |
Private Member Functions inherited from MouseInterface | |
| virtual | ~MouseInterface () |
| Destructor. | |
Private Member Functions inherited from KeyInterface | |
| virtual void | slotKeyReleaseEvent (QKeyEvent *_event) |
| Key Release Event from Main App. | |
| virtual | ~KeyInterface () |
| Destructor. | |
Private Member Functions inherited from PickingInterface | |
| virtual void | addHiddenPickMode (const std::string &_mode) |
| Add a new picking mode to the examiner which will be invisible. | |
| virtual void | setPickModeCursor (const std::string &_mode, QCursor _cursor) |
| Set the cursor of the given PickMode. | |
| virtual void | setPickModeMouseTracking (const std::string &_mode, bool _mouseTracking) |
| Set mouse tracking for the given PickMode. | |
| virtual void | setPickModeToolbar (const std::string &_mode, QToolBar *_toolbar) |
| Set the additional toolbar of the given PickMode. | |
| virtual void | removePickModeToolbar (const std::string &_mode) |
| Removes the additional toolbar of the given PickMode. | |
| virtual | ~PickingInterface () |
| Destructor. | |
Private Member Functions inherited from ToolboxInterface | |
| virtual | ~ToolboxInterface () |
| Destructor. | |
| virtual void | addToolbox (QString _name, QWidget *_widget, QIcon *_icon) |
| Add a toolbox widget to the gui with the given name and an icon. | |
| virtual void | addToolbox (QString _name, QWidget *_widget, QIcon *_icon, QWidget *_headerAreaWidget) |
| Add a toolbox widget to the gui with the given name, icon and header area widget. | |
Private Member Functions inherited from LoggingInterface | |
| virtual | ~LoggingInterface () |
| Destructor. | |
Private Member Functions inherited from ScriptInterface | |
| virtual | ~ScriptInterface () |
| Destructor. | |
| virtual void | showScriptInEditor (QString _filename) |
| virtual void | executeScript (QString _script) |
| virtual void | getDescription (QString _function, QString &_description, QStringList &_parameters, QStringList &_descriptions) |
Private Member Functions inherited from ToolbarInterface | |
| virtual | ~ToolbarInterface () |
| Destructor. | |
| virtual void | removeToolbar (QToolBar *_toolbar) |
| Remove a Toolbar from the main widget. | |
| virtual void | getToolBar (QString _name, QToolBar *&_toolbar) |
| Get a pointer to a Toolbar of the given name or 0 if it does not exist. | |
Private Member Functions inherited from ContextMenuInterface | |
| virtual | ~ContextMenuInterface () |
| Destructor. | |
| virtual void | addContextMenuItem (QAction *_action, DataType _objectType, ContextMenuType _type) |
| Add an entry for a context Menu. | |
| virtual void | hideContextMenu () |
| hide the main context menu | |
Private Member Functions inherited from LoadSaveInterface | |
| virtual | ~LoadSaveInterface () |
| Destructor. | |
| virtual void | addEmptyObject (DataType _type, int &_id) |
| virtual void | copyObject (int _oldId, int &_newId) |
| virtual void | emptyObjectAdded (int _id) |
| DEPRECATED HERE (Moved to Type Interface)! Emit this signal if an empty object has been created. | |
| virtual void | deleteObject (int _id) |
| Delete an object This signal can be called from any thread. . | |
| virtual void | deleteAllObjects () |
| Delete all Objects. | |
| virtual void | getAllFileFilters (QStringList &_filters) |
| Get all file filters that are registered. | |
Private Member Functions inherited from BackupInterface | |
| virtual void | createBackup (IdList _objectids, QString _name, std::vector< UpdateType > _types) |
| Tell Backup Plugin to create a group backup. | |
| virtual void | undo (int _objectid) |
| Tell Backup Plugin to undo the last action of an object. | |
| virtual void | redo (int _objectid) |
| Tell Backup Plugin to redo the last action on an object. | |
| virtual void | undo () |
| Tell Backup Plugin to undo the last action. | |
| virtual void | redo () |
| Tell Backup Plugin to redo the last action. | |
| virtual | ~BackupInterface () |
| Destructor. | |
| virtual void | restored (int _objectid) |
| Backup Plugin tells other Plugins that a restore has happened. | |
Private Member Functions inherited from RPCInterface | |
| virtual | ~RPCInterface () |
| Destructor. | |
| virtual void | functionExists (QString _pluginName, QString _functionName, bool &_exists) |
Private Attributes | |
| QToolBar * | toolbar_ |
| QActionGroup * | toolBarActions_ |
| QAction * | skeletonEditingAction_ |
| QToolBar * | pickToolbar_ |
| QActionGroup * | pickToolBarActions_ |
| QAction * | selectJointAction_ |
| QAction * | insertJointAction_ |
| QAction * | splitJointAction_ |
| QAction * | deleteJointAction_ |
| QAction * | moveJointAction_ |
| QAction * | transformChildManipAction_ |
| QAction * | transformAllManipAction_ |
| QAction * | rotateManipAction_ |
| QAction * | inverseKinematicAction_ |
| int | currentSkeleton_ |
| int | currentJoint_ |
| bool | jointPreview_ |
| bool | transformChildJoints_ |
| bool | transformAllFrames_ |
| bool | inverseKinematic_ |
| bool | dblClick_ |
| QString | lastRenderer_ |
| Stores the last active renderer before we switched to skeleton editing mode. | |
| bool | rendererChanged_ |
| Remembers, if we changed the renderer. | |
| std::vector< int > | activeManipulators_ |
| double | manip_size_ |
| double | manip_size_modifier_ |
| SkeletonMarker | objectMarker_ |
| ACG::Matrix4x4d | accumMatrix_ |
Plugin for creating and editing skeletons
Definition at line 71 of file SkeletonEditingPlugin.hh.
| SkeletonEditingPlugin::SkeletonEditingPlugin | ( | ) |
Default Constructor.
Definition at line 61 of file SkeletonEditingPlugin.cc.
| SkeletonEditingPlugin::~SkeletonEditingPlugin | ( | ) |
Destructor.
Definition at line 97 of file SkeletonEditingPlugin.cc.
|
slot |
get active animation
Definition at line 814 of file SkeletonEditingScripting.cc.
|
slot |
get active frame
Definition at line 841 of file SkeletonEditingScripting.cc.
|
private |
Definition at line 1271 of file SkeletonEditingPlugin.cc.
|
slot |
add animation
Definition at line 911 of file SkeletonEditingScripting.cc.
|
slot |
add joint to the skeleton
Definition at line 218 of file SkeletonEditingScripting.cc.
|
slot |
get the number of animations
Definition at line 753 of file SkeletonEditingScripting.cc.
|
private |
Definition at line 1329 of file SkeletonEditingPlugin.cc.
|
private |
checks, if the skeleton can be modified. a skeleton can be modified, if the active pose is the reference pose
| _event | the event that occurred |
Definition at line 293 of file SkeletonEditingPlugin.cc.
|
slot |
delete joint from the skeleton
Definition at line 264 of file SkeletonEditingScripting.cc.
|
private |
Definition at line 901 of file SkeletonEditingPlugin.cc.
|
inlinevirtual |
Description of the Plugin.
Implements BaseInterface.
Definition at line 175 of file SkeletonEditingPlugin.hh.
|
slot |
get the number of frames
Definition at line 780 of file SkeletonEditingScripting.cc.
|
private |
Get nearest joint to hitPoint (used for snapping)
Definition at line 1417 of file SkeletonEditingPlugin.cc.
|
slot |
get global matrix of a joint in the active pose
Definition at line 578 of file SkeletonEditingScripting.cc.
|
slot |
get global translation of a joint in the active pose
Definition at line 665 of file SkeletonEditingScripting.cc.
|
privateslot |
Definition at line 260 of file SkeletonEditingPlugin.cc.
|
private |
Definition at line 1029 of file SkeletonEditingPlugin.cc.
|
private |
function for computing the position of our joints using inverse Kinematic
Definition at line 635 of file SkeletonEditingPlugin.cc.
|
slot |
get local matrix of a joint in the active pose
Definition at line 622 of file SkeletonEditingScripting.cc.
|
slot |
get local translation of a joint in the active pose
Definition at line 709 of file SkeletonEditingScripting.cc.
|
privateslot |
move the object when its manipulator moves
| _node | the manipulator node |
| _event | the mouse event |
Definition at line 716 of file SkeletonEditingPlugin.cc.
|
privateslot |
update object when its manipulator changes position
| _node | the manipulator node |
Definition at line 845 of file SkeletonEditingPlugin.cc.
|
private |
Definition at line 1360 of file SkeletonEditingPlugin.cc.
|
inlinevirtual |
Name of the Plugin.
Implements BaseInterface.
Definition at line 172 of file SkeletonEditingPlugin.hh.
|
private |
Place and show the Manipulator.
| _event | mouseEvent that occured |
Definition at line 539 of file SkeletonEditingPlugin.cc.
|
privateslot |
Initialization of the plugin when it is loaded by the core.
Definition at line 110 of file SkeletonEditingPlugin.cc.
|
private |
Definition at line 1375 of file SkeletonEditingPlugin.cc.
|
slot |
set active pose
Definition at line 867 of file SkeletonEditingScripting.cc.
|
privateslot |
Set Descriptions for Scripting Slots.
Definition at line 55 of file SkeletonEditingScripting.cc.
|
private |
Definition at line 1291 of file SkeletonEditingPlugin.cc.
|
private |
Show/Hide active manipulators.
Checks if the manipulators should be visible or not.
Definition at line 865 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 369 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 377 of file SkeletonEditingPlugin.cc.
|
privateslot |
MousePress event occured.
| _event | the event that occured |
Definition at line 341 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 270 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 237 of file SkeletonEditingPlugin.cc.
|
privateslot |
slot is called when the pickMode changed
| _mode | new pickMode |
Definition at line 391 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 439 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 503 of file SkeletonEditingPlugin.cc.
|
privateslot |
Definition at line 483 of file SkeletonEditingPlugin.cc.
|
slot |
insert a joint in the middle of a bone given by its (unique) tailJoint
Definition at line 146 of file SkeletonEditingScripting.cc.
|
slot |
split selected Joint
split the selected joint. selected joint will be child of new joint
| _event | mouseEvent that occured |
Definition at line 989 of file SkeletonEditingPlugin.cc.
|
slot |
transform joint with given matrix
transform selected joint with given matrix
Definition at line 300 of file SkeletonEditingScripting.cc.
|
private |
make sure the manipulator is positioned on a joint
Definition at line 1448 of file SkeletonEditingPlugin.cc.
|
inlineslot |
Definition at line 232 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 284 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 275 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 259 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 258 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 266 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 251 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 249 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 264 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 256 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 260 of file SkeletonEditingPlugin.hh.
|
private |
Stores the last active renderer before we switched to skeleton editing mode.
Definition at line 269 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 277 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 279 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 252 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 282 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 246 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 247 of file SkeletonEditingPlugin.hh.
|
private |
Remembers, if we changed the renderer.
Definition at line 271 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 255 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 248 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 244 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 250 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 242 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 243 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 263 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 254 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 262 of file SkeletonEditingPlugin.hh.
|
private |
Definition at line 253 of file SkeletonEditingPlugin.hh.