PluginFunctions Namespace Reference

Classes

class  ObjectIterator
 Core Data Iterator. More...
class  BaseObjectIterator
 Core Data Iterator used to iterate over all objects (Including groups). More...

Functions

bool getObject (int _identifier, BSplineCurveObject *&_object)
BSplineCurvesplineCurve (BaseObjectData *_object)
 Get a Bspline curve from an object.
BSplineCurveObjectbsplineCurveObject (BaseObjectData *_object)
 Cast an BaseObject to a BSplineCurveObject if possible.
bool getObject (int _identifier, BSplineSurfaceObject *&_object)
BSplineSurfacesplineSurface (BaseObjectData *_object)
 Get a Bspline Surface from an object.
BSplineSurfaceObjectbsplineSurfaceObject (BaseObjectData *_object)
 Cast an BaseObject to a BSplineSurfaceObject if possible.
bool getSourceCameras (std::vector< CameraNode * > &_cameras)
 Get a pointer to every Camera which is marked as a source.
bool getTargetCameras (std::vector< CameraNode * > &_cameras)
 Get a pointer to every Camera which is marked as a target.
bool getObject (int _identifier, CameraObject *&_object)
CameraObjectcameraObject (int _objectId)
 Get a CameraObject from an object id if possible.
CameraNodecameraNode (BaseObjectData *_object)
 Get a CameraNode from an object.
CameraObjectcameraObject (BaseObjectData *_object)
 Cast an BaseObject to a CameraObject if possible.
bool getObject (int _identifier, CoordsysObject *&_object)
CoordsysNodecoordsysNode (BaseObjectData *_object)
 Get a CoordsysNode from an object.
CoordsysObjectcoordsysObject (BaseObjectData *_object)
 Cast an BaseObject to a CoordsysObject if possible.
CoordsysObjectcoordsysObject (int _objectId)
 Get a CoordsysObject with its identifier.
bool getObject (int _identifier, LightObject *&_object)
LightNodelightNode (BaseObjectData *_object)
 Get a LightNode from an object.
LightObjectlightObject (BaseObjectData *_object)
 Cast an BaseObject to a LightObject if possible.
LightSourcelightSource (BaseObjectData *_object)
 Get the lightSource in this Object.
DLLEXPORT LightSourcelightSource (LightObject *_object)
 Get the lightSource in this Object.
bool getObject (int _identifier, PlaneObject *&_object)
PlaneNodeplaneNode (BaseObjectData *_object)
 Get a PlaneNode from an object.
PlaneObjectplaneObject (BaseObjectData *_object)
 Cast an BaseObject to a PlaneObject if possible.
PlaneObjectplaneObject (int _objectId)
 Get a PlaneObject from an object id if possible.
bool getObject (int _identifier, SkeletonObject *&_object)
Skeletonskeleton (BaseObjectData *_object)
 Get a skeleton from an object.
SkeletonObjectskeletonObject (BaseObjectData *_object)
 Cast an BaseObject to a SkeletonObject if possible.
bool getObject (int _identifier, SphereObject *&_object)
SphereObjectsphereObject (int _objectId)
 Get a SphereObject from id if possible.
SphereNodesphereNode (BaseObjectData *_object)
 Get a SphereNode from an object.
SphereObjectsphereObject (BaseObjectData *_object)
 Cast an BaseObject to a SphereObject if possible.
int viewerId ()
 Return unique viewer id.
bool object_exists (const int _identifier)
bool get_all_object_identifiers (std::vector< int > &_identifiers)
void get_all_objects (std::vector< BaseObjectData * > &_objects)
BaseObject *& objectRoot ()
 Get the root of the object structure.
Active Objects

bool getSourceMeshes (std::vector< PolyMesh * > &_meshes)
 Get a pointer to every Poly Mesh which is marked as a source mesh.
bool getTargetMeshes (std::vector< PolyMesh * > &_meshes)
 Get a pointer to every Poly Mesh which is marked as a target mesh.
bool getSourceMeshes (std::vector< TriMesh * > &_meshes)
 Get a pointer to every Triangle Mesh which is marked as a source mesh.
bool getTargetMeshes (std::vector< TriMesh * > &_meshes)
 Get a pointer to every Triangle Mesh which is marked as a target mesh.
bool getPickedObject (const unsigned int _node_idx, BaseObjectData *&_object)
 Get the picked mesh.
Identifier handling

bool getObject (int _identifier, PolyMeshObject *&_object)
bool getMesh (int _identifier, PolyMesh *&_mesh)
 Get the Poly Mesh which has the given identifier.
bool getMesh (int _identifier, TriMesh *&_mesh)
 Get the Triangle Mesh which has the given identifier.
bool getSourceIdentifiers (std::vector< int > &_identifiers)
 Get the identifiers of all objects marked as a source object.
bool getTargetIdentifiers (std::vector< int > &_identifiers)
 Get the identifiers of all objects marked as a target object.
bool getObject (const int _identifier, BaseObject *&_object)
 Get the object which has the given identifier.
bool getObject (const int _identifier, BaseObjectData *&_object)
int getObjectId (const QString _name)
bool getAllMeshes (std::vector< int > &_identifiers)
 Get identifiers of all meshes.
int objectCount ()
 Get the number of available objects.
int targetCount ()
 Get the number of target objects.
int sourceCount ()
 Get the number of source objects.
int visibleCount ()
 Get the number of visible objects.
DLLEXPORT bool getAllObjectIdentifiers (std::vector< int > &_identifiers)
 Get identifiers of all objects.
DLLEXPORT bool objectExists (const int _identifier)
 Check if an object with this identifier exists.
Getting data from objects and casting between them

PolyMeshpolyMesh (BaseObjectData *_object)
 Get a poly mesh from an object.
PolyMeshpolyMesh (int _identifier)
 Get a poly mesh from an object id.
PolyMeshObjectpolyMeshObject (BaseObjectData *_object)
 Cast an BaseObject to a PolyMeshObject if possible.
PolyMeshObjectpolyMeshObject (int _objectId)
 Get an PolyMeshObject from the given id If possible.
TriMeshtriMesh (BaseObjectData *_object)
 Get a triangle mesh from an object.
TriMeshtriMesh (int _identifier)
 Get a triangle mesh from an object id.
TriMeshObjecttriMeshObject (BaseObjectData *_object)
 Cast an BaseObject to a TriMeshObject if possible.
TriMeshObjecttriMeshObject (int _objectId)
 Get an TriMeshObject from the given id If possible.
BaseObjectDatabaseObjectData (BaseObject *_object)
 Cast an BaseObject to a BaseObjectData if possible.
Do never use!!

void setDataRoot (BaseObject *_root)
Examiner handling

int viewers ()
 Get the number of viewers.
void disableExaminerLightHandling ()
 Disable the core light handling.
bool examinerLightHandling ()
 returns if internal light handling is active.
void setActiveExaminer (const unsigned int _id)
 Set the active id of the examiner which got the last mouse events.
unsigned int activeExaminer ()
 Get the id of the examiner which got the last mouse events.
QString getEncodedExaminerView ()
 Get the encoded view for the active examiner.
QString getEncodedExaminerView (int _viewerId)
 Get the encoded view for the given.
void setEncodedExaminerView (QString _view)
 Set the encoded view for the active examiner.
void setEncodedExaminerView (int _viewerId, QString _view)
 Set the encoded view for the given.
QPoint mapToGlobal (const QPoint _point)
 Map coordinates of GL Widget to global coordinates.
QPoint mapToLocal (const QPoint _point)
 Map global coordinates to GL Widget local coordinates.
bool scenegraphPick (ACG::SceneGraph::PickTarget _pickTarget, const QPoint &_mousePos, unsigned int &_nodeIdx, unsigned int &_targetIdx, ACG::Vec3d *_hitPointPtr=0)
bool scenegraphPick (const unsigned int _examiner, ACG::SceneGraph::PickTarget _pickTarget, const QPoint &_mousePos, unsigned int &_nodeIdx, unsigned int &_targetIdx, ACG::Vec3d *_hitPointPtr=0)
bool scenegraphRegionPick (ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list)
bool scenegraphRegionPick (const unsigned int _examiner, ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list)
bool scenegraphRegionPick (ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list, QVector< ACG::Vec3d > &_points)
bool scenegraphRegionPick (const unsigned int _examiner, ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list, QVector< ACG::Vec3d > &_points)
bool scenegraphRegionPick (ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list, QVector< float > &_depths)
bool scenegraphRegionPick (const unsigned int _examiner, ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list, QVector< float > &_depths)
bool scenegraphRegionPick (ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list, QVector< float > &_depths, QVector< ACG::Vec3d > &_points)
bool scenegraphRegionPick (const unsigned int _examiner, ACG::SceneGraph::PickTarget _pickTarget, const QRegion &_region, QList< QPair< unsigned int, unsigned int > > &_list, QVector< float > &_depths, QVector< ACG::Vec3d > &_points)
void traverse (ACG::SceneGraph::MouseEventAction &_action)
const std::string pickMode ()
 Get the current Picking mode.
void pickMode (const std::string _mode)
 Set the current Picking mode for all examiner widgets.
Viewer::ActionMode actionMode ()
 Get the current Action mode.
void actionMode (Viewer::ActionMode _mode)
 Set the current Action Mode (PickMode,ExamineMode,...).
void shareGLWidget (QGLWidget *_widget)
 Sets the main QGLWidget for gl data sharing.
QGLWidget * shareGLWidget ()
 Returns the main QGLWidget for gl data sharing.
void getCurrentViewImage (QImage &_image)
 Returns a QImage of the current View.
void setSceneCenter (const ACG::Vec3d &_center, int _viewer)
void setViewObjectMarker (ViewObjectMarker *_marker)
void setDefaultViewObjectMarker (ViewObjectMarker *_marker)
ViewObjectMarkerdefaultViewObjectMarker ()
 Get the default ViewObjectMarker.
ACG::SceneGraph::BaseNodegetSceneGraphRootNode ()
 get scenegraph root node
ACG::SceneGraph::BaseNodegetRootNode ()
 Get the root node for data objects.
void addGlobalStatusNode (ACG::SceneGraph::BaseNode *_node)
 Adds a global status node.
void addGlobalNode (ACG::SceneGraph::BaseNode *_node)
 Add a global node.
void addObjectRenderingNode (ACG::SceneGraph::BaseNode *_node)
 Add scenegraph node modifing object rendering.
DLLEXPORT void allowRotation (bool _mode)
Setup Functions

void setViewers (std::vector< glViewer * > _viewerWidgets)
 Set the internal Viewer pointer ( DO NOT USE!! ).
void setViewerProperties (std::vector< Viewer::ViewerProperties * > _viewerProperties)
 Set the internal viewerProperties pointer ( DO NOT USE!! ).
glViewerviewer (int _viewerId)
 Get a Viewer.
void setDataSeparatorNodes (SeparatorNode *_dataRootNode)
 Set the internal data root node pointers ( DO NOT USE!! ).
void setSceneGraphRootNode (SeparatorNode *_root_node)
void setSceneGraphRootNodeGlobal (SeparatorNode *_root_node)
View settings

void setBackColor (OpenMesh::Vec4f _color)
 Set the background color of the examiner widget.
void setFixedView (int _mode, int _viewer=ACTIVE_VIEWER)
 Set a fixed View for a viewer.
void setDrawMode (const ACG::SceneGraph::DrawModes::DrawMode _mode, int _viewer=ALL_VIEWERS)
 Set the draw Mode of a Viewer.
.
ACG::SceneGraph::DrawModes::DrawMode drawMode (int _viewer=ACTIVE_VIEWER)
 Get the current draw Mode of a Viewer.
void perspectiveProjection (int _viewer=ALL_VIEWERS)
 Switch to perspective Projection.
void orthographicProjection (int _viewer=ALL_VIEWERS)
 Switch to orthographic Projection.
void setFOVY (double _fovy)
 Set field of view angle.
void allowRotation (bool _mode, int _viewer)
bool allowRotation (int _viewer)
void setMainGLContext ()
 Set current GL Context to main context.
void viewingDirection (const ACG::Vec3d &_dir, const ACG::Vec3d &_up, int _viewer=ACTIVE_VIEWER)
 Set the viewing direction.
void lookAt (const ACG::Vec3d &_eye, const ACG::Vec3d &_center, const ACG::Vec3d &_up, int _viewer=ACTIVE_VIEWER)
 Set the look at transformation directly.
const ACG::Vec3d trackBallCenter (int _viewer)
 Get the trackball Center.
void setTrackBallCenter (const ACG::Vec3d &_center, int _viewer)
 Set the trackball Center.
void setScenePos (const ACG::Vec3d &_center, const double _radius, int _viewer=ALL_VIEWERS)
 Set the Scene position.
void setScenePos (const ACG::Vec3d &_center, int _viewer=ALL_VIEWERS)
 Set the scene position.
const ACG::Vec3d sceneCenter (int _viewer=ALL_VIEWERS)
 Get the current scene center.
double sceneRadius ()
 Returns the current scene radius from the active examiner widget.
double sceneRadius (int _viewer)
 Returns the current scene radius from a given examiner viewer.
void translate (const ACG::Vec3d &_vector, int _viewer=ALL_VIEWERS)
 Translate viewer pos by given vector.
void rotate (const ACG::Vec3d &_axis, const double _angle, const ACG::Vec3d &_center, int _viewer=ALL_VIEWERS)
 Rotate Scene around axis.
void viewHome (int _viewer=ALL_VIEWERS)
 Go to home position.
void viewAll (int _viewer=ALL_VIEWERS)
 View the whole scene.
ACG::Vec3d viewingDirection (int _viewer=ACTIVE_VIEWER)
 Get the current viewing Direction.
bool isProjectionOrthographic (int _viewer=ACTIVE_VIEWER)
 Check if the projection is orthographic.
ACG::Vec3d eyePos (int _viewer=ACTIVE_VIEWER)
 Get the current viewer position.
ACG::Vec3d upVector (int _viewer=ACTIVE_VIEWER)
 Get the current up vector.
Viewer Status and properties

Viewer::ViewerPropertiesviewerProperties (int _id=ACTIVE_VIEWER)
 Get the viewer properties Use this functions to get basic viewer properties such as backgroundcolor or rendering options.
Animations

void flyTo (const ACG::Vec3d &_position, const ACG::Vec3d &_center, double _time)
 Fly to point and viewing direction (animated).
void flyTo (const ACG::Vec3d &_center, bool _move_back, double _time)
 Fly to point and keep viewing direction (animated).
Snapshots

void viewerSnapshot (int _viewer, QImage &_image, int _width, int _height, bool _alpha, bool _hideCoordsys, int _samples)
 Take a snapshot of a viewer.
Internal Counters

void increaseObjectCount ()
 Decrease the number of current Object.
void decreaseObjectCount ()
 Increase the number of current Object.
void increaseTargetCount ()
 Decrease the number of current Object.
void decreaseTargetCount ()
 Increase the number of current Object.
Internal object handle container

void addObjectToMap (int _objectId, BaseObject *_object)
 Add object to internal object map.
void removeObjectFromMap (int _objectId)
 Remove object from internal object map.
Internal container for scenegraph widget generators

void addSceneGraphGenerator (ACG::QtWidgets::SceneGraphWidgetGenerator *_generator)
 Add a scenegraph generator ( the handled type will be extracted from the generator).
QMap< std::string,ACG::QtWidgets::SceneGraphWidgetGenerator * > getSceneGraphGeneratorList ()

Variables

static BaseObjectobjectRoot_ = 0
 DONT USE DIRECTLY!!
static std::vector< glViewer * > examiner_widgets_
 DONT USE DIRECTLY!!
static std::vector
< Viewer::ViewerProperties * > 
viewerProperties_
 DONT USE DIRECTLY!!
static glViewerexaminer_widget_
 TODO : Remove this variable and implement multiView correctly here.
static unsigned int activeExaminer_ = 0
 Contains the currently active examiner.
static bool internalLightHandling_ = true
static SeparatorNodedataRootNode_ = 0
 DONT USE DIRECTLY!!
static SeparatorNodedataSeparatorNode_ = 0
static SeparatorNodesceneGraphRootNodeGlobal_ = 0
 Scenegraph global nodes root.
static SeparatorNodesceneGraphRootNode_ = 0
 Scenegraph root node.
static Viewer::ViewerProperties dummyProperties (-1)
 a dummy properties object returned as a reference if the real object does not exist
static ViewObjectMarkerdefaultMarker_ = 0
 DONT USE DIRECTLY!!
static QGLWidget * shareGLWidget_ = 0
 DONT USE DIRECTLY!!
static int viewerId_ = 0
static int objectCounter_ = 0
 Number of currently open objects.
static int targetCounter_ = 0
 Number of current target objects.
static std::map< int,
BaseObject * > 
objectMap_
 Map that holds the object handles.
QMap< std::string,ACG::QtWidgets::SceneGraphWidgetGenerator * > sceneGraphGenerators_
 Map of scenegraph widget generators.
const int ALL_VIEWERS = -2
const int ACTIVE_VIEWER = -1
const int VIEW_FREE = 0
const int VIEW_TOP = 1
const int VIEW_BOTTOM = 2
const int VIEW_LEFT = 3
const int VIEW_RIGHT = 4
const int VIEW_FRONT = 5
const int VIEW_BACK = 6

Iterators



typedef QStringList IteratorRestriction
const QStringList ALL_OBJECTS
const QStringList TARGET_OBJECTS ("target")
const QStringList SOURCE_OBJECTS ("source")
DLLEXPORT ObjectIterator objectsEnd ()
 Return Iterator to Object End.
DLLEXPORT BaseObjectIterator baseObjectsEnd ()
 Return Iterator to Object End.

Detailed Description

The Namespace PluginFunctions contains functions for all plugins.

The Namespace PluginFunctions contains functions for all plugins. These functions should be used to get the objects to work on or to set modes in the examiner widget.


Function Documentation

DLLEXPORT void PluginFunctions::addGlobalNode ( ACG::SceneGraph::BaseNode _node  ) 

Add a global node.

The node will be added as a global node. Only the global status nodes will be above this node.

Referenced by SelectionBasePlugin::pluginsInitialized().

void PluginFunctions::addGlobalStatusNode ( ACG::SceneGraph::BaseNode _node  ) 

Adds a global status node.

The node will be added at the top of the scenegraph, before all other nodes except The scenegraphs real node. It will therefore influence all nodes in the scenegraph.

Referenced by LightObject::init().

DLLEXPORT void PluginFunctions::addObjectRenderingNode ( ACG::SceneGraph::BaseNode _node  ) 

Add scenegraph node modifing object rendering.

This function adds nodes in front of the object root node. Therefore all objects renderings will be modified by the state changes in the added node. This might be usefull for adding for example a slicing node, which adds clipping planes such that the objects will be sliced.

Referenced by SlicePlugin::initializePlugin().

DLLEXPORT void PluginFunctions::allowRotation ( bool  _mode  ) 

Lock scene rotation via mouse

Parameters:
_mode allow or disallow rotation

Referenced by Core::applyOptions(), and CoreWidget::slotLockRotation().

DLLEXPORT bool PluginFunctions::allowRotation ( int  _viewer = ACTIVE_VIEWER  ) 

is scene rotation locked

Parameters:
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT void PluginFunctions::allowRotation ( bool  _mode,
int  _viewer = ACTIVE_VIEWER 
)

Lock scene rotation via mouse

Parameters:
_mode allow or disallow rotation
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by CoreWidget::slotSetViewingDirection().

DLLEXPORT BaseObjectData * PluginFunctions::baseObjectData ( BaseObject _object  ) 

Cast an BaseObject to a BaseObjectData if possible.

Parameters:
_object The object should be of type BaseObject. If the content is a BaseObjectData, a a BaseObjectData is returned. Otherwise a NULL pointer is returned.

Referenced by OBJImporter::setObject().

DLLEXPORT BSplineCurveObject * PluginFunctions::bsplineCurveObject ( BaseObjectData _object  ) 
DLLEXPORT BSplineSurfaceObject * PluginFunctions::bsplineSurfaceObject ( BaseObjectData _object  ) 
DLLEXPORT CameraNode * PluginFunctions::cameraNode ( BaseObjectData _object  ) 

Get a CameraNode from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a camera, a CameraNode will be returned. Otherwise a NULL pointer is returned.
DLLEXPORT CameraObject * PluginFunctions::cameraObject ( BaseObjectData _object  ) 

Cast an BaseObject to a CameraObject if possible.

Parameters:
_object The object should be of type BaseDataObject. If the content is a camera, a a CameraObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT CameraObject * PluginFunctions::cameraObject ( int  _objectId  ) 

Get a CameraObject from an object id if possible.

Parameters:
_object If the object is a camera, a CameraObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT CoordsysNode * PluginFunctions::coordsysNode ( BaseObjectData _object  ) 

Get a CoordsysNode from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a coordsys, a CoordsysNode will be returned. Otherwise a NULL pointer is returned.
CoordsysObject * PluginFunctions::coordsysObject ( int  _objectId  ) 

Get a CoordsysObject with its identifier.

Parameters:
_objectId The object should be of type CoordsysObject. If the id belongs to a coordsys, a a CoordsysObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT CoordsysObject * PluginFunctions::coordsysObject ( BaseObjectData _object  ) 

Cast an BaseObject to a CoordsysObject if possible.

Parameters:
_object The object should be of type BaseDataObject. If the content is a coordsys, a a CoordsysObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT void PluginFunctions::disableExaminerLightHandling (  ) 

Disable the core light handling.

Use this function to disable OpenFlippers Core light handling. Use this function only if the light is handled by your plugin Normally this function is called by the light plugin which fully takes control over the glLighting and adds its own light nodes.

Referenced by TypeLightPlugin::pluginsInitialized().

DLLEXPORT ACG::SceneGraph::DrawModes::DrawMode PluginFunctions::drawMode ( int  _viewer  ) 

Get the current draw Mode of a Viewer.

Get the current draw Mode of the examiner widget.

The DrawModes are defined at ACG/Scenegraph/DrawModes.hh
They can be combined.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by TextureControlPlugin::slotObjectUpdated(), CoreWidget::slotUpdateGlobalDrawMenu(), CoreWidget::slotUpdateViewerDrawMenu(), and TextureControlPlugin::switchDrawMode().

DLLEXPORT bool PluginFunctions::examinerLightHandling (  ) 

returns if internal light handling is active.

Internal light handling could only be deactivated. From than on a plugin has to manage all light handling.

DLLEXPORT ACG::Vec3d PluginFunctions::eyePos ( int  _viewer = ACTIVE_VIEWER  ) 

Get the current viewer position.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by ViewControlPlugin::eyePosition(), FileViewPlugin::loadObject(), and DataControlPlugin::slotZoomTo().

DLLEXPORT void PluginFunctions::flyTo ( const ACG::Vec3d _center,
bool  _move_back = true,
double  _time = 1000.0 
)

Fly to point and keep viewing direction (animated).

Fly to point and keep viewing direction (animated).

Parameters:
_center The new scene center ( the point we are looking at )
_move_back Get closer if _move_back=true, get more distant else.
_time Animation time in ms
DLLEXPORT void PluginFunctions::flyTo ( const ACG::Vec3d _position,
const ACG::Vec3d _center,
double  _time = 1000.0 
)

Fly to point and viewing direction (animated).

Fly to point and set new viewing direction (animated).

Parameters:
_position New viewer position ( the new eye point of the viewer )
_center The new scene center ( the point we are looking at )
_time Animation time in ms

Referenced by DataControlPlugin::slotZoomTo().

void PluginFunctions::get_all_objects ( std::vector< BaseObjectData * > &  _objects  ) 

Returns a vector containing all currently available objects

Parameters:
_objects vector of all objects

Definition at line 1003 of file PluginFunctions.cc.

References DATA_ALL, and objectsEnd().

DLLEXPORT bool PluginFunctions::getAllMeshes ( std::vector< int > &  _identifiers  ) 

Get identifiers of all meshes.

Parameters:
_identifiers ( vector returning the identifiers )
Returns:
false, if no mesh is found
DLLEXPORT bool PluginFunctions::getAllObjectIdentifiers ( std::vector< int > &  _identifiers  ) 

Get identifiers of all objects.

Parameters:
_identifiers ( vector returning the identifiers )
Returns:
false, if no mesh is found
DLLEXPORT bool PluginFunctions::getMesh ( int  _identifier,
TriMesh *&  _mesh 
)

Get the Triangle Mesh which has the given identifier.

Every loaded object has a unique identifier which is stored in the id field of the object container. Use this function to get the mesh which has this id. This can be used for a consistent mapping even if the data objects change during plugin operations (e.g. selection and main algorithm).
This function checks, if the object requested contains a mesh.

Parameters:
_identifier Object id to search for
_mesh returns the mesh
Returns:
Mesh found?
DLLEXPORT bool PluginFunctions::getMesh ( int  _identifier,
PolyMesh *&  _mesh 
)

Get the Poly Mesh which has the given identifier.

Every loaded object has a unique identifier which is stored in the id field of the object container. Use this function to get the mesh which has this id. This can be used for a consistent mapping even if the data objects change during plugin operations (e.g. selection and main algorithm).
This function checks, if the object requested contains a mesh.

Parameters:
_identifier Object id to search for
_mesh returns the mesh
Returns:
Mesh found?

Referenced by MeshRepairPlugin::detectFlatValence3Vertices(), MeshRepairPlugin::detectSkinnyTriangleByAngle(), MeshRepairPlugin::detectTriangleAspect(), MeshRepairPlugin::flipOrientation(), MeshRepairPlugin::removeSelectedEdges(), MeshRepairPlugin::removeSelectedVal3Vertices(), and MeshRepairPlugin::selectionEdgeLength().

DLLEXPORT bool PluginFunctions::getObject ( const int  _identifier,
BaseObjectData *&  _object 
)

This functions returns the object with the given id regardless of the type of object. See get_object( int _identifier , ject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( const int  _identifier,
BaseObject *&  _object 
)

Get the object which has the given identifier.

Every loaded object has a unique identifier which is stored in the id field of the object container. Use this function to get the object which has this id. This can be used for a consistent mapping even if the data objects change during plugin operations (e.g. selection and main algorithm).
This function only returns visible objects.

Parameters:
_identifier Object id to search for
_object returns the object
Returns:
Object found?
DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
SphereObject *&  _object 
)

This functions returns the object with the given id if it is a SphereObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
SkeletonObject *&  _object 
)

This functions returns the object with the given id if it is a SkeletonObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
PolyMeshObject *&  _object 
)

This functions returns the object with the given id if it is a PolyMeshObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

This functions returns the object with the given id if it is a TriMeshObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

Definition at line 83 of file PluginFunctionsTriangleMesh.cc.

References BaseObject::childExists(), and objectRoot().

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
PlaneObject *&  _object 
)

This functions returns the object with the given id if it is a PlaneObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
LightObject *&  _object 
)

This functions returns the object with the given id if it is a LightObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
CoordsysObject *&  _object 
)

This functions returns the object with the given id if it is a CoordsysObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
CameraObject *&  _object 
)

This functions returns the object with the given id if it is a CameraObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
BSplineSurfaceObject *&  _object 
)

This functions returns the object with the given id if it is a BSplineSurfaceObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

DLLEXPORT bool PluginFunctions::getObject ( int  _identifier,
BSplineCurveObject *&  _object 
)

This functions returns the object with the given id if it is a BSplineCurveObject. See get_object( int _identifier , BaseObject*& _object ) for more details.

Referenced by SkeletonEditingPlugin::activeAnimation(), SkeletonEditingPlugin::activeFrame(), TopologyPlugin::add_face(), SkeletonEditingPlugin::addAnimation(), CoreWidget::addContextMenus(), TypeLightPlugin::addedEmptyObject(), TextureControlPlugin::addedEmptyObject(), SelectionBasePlugin::addedEmptyObject(), SkeletonEditingPlugin::addJoint(), SkeletonEditingPlugin::animationCount(), InfoMeshObjectPlugin::aspectRatio(), InfoMeshObjectPlugin::boundaryCount(), InfoMeshObjectPlugin::boundingBoxMax(), InfoMeshObjectPlugin::boundingBoxMin(), InfoMeshObjectPlugin::boundingBoxSize(), TopologyPlugin::clearAddFaceVertices(), MeshObjectSelectionPlugin::clearEdgeSelection(), MeshObjectSelectionPlugin::clearFaceSelection(), MeshObjectSelectionPlugin::clearHalfedgeSelection(), MeshObjectSelectionPlugin::clearHandleVertices(), MeshObjectSelectionPlugin::clearModelingVertices(), MeshObjectSelectionPlugin::clearVertexSelection(), InfoMeshObjectPlugin::cog(), MeshObjectSelectionPlugin::colorizeEdgeSelection(), MeshObjectSelectionPlugin::colorizeFaceSelection(), MeshObjectSelectionPlugin::colorizeHalfedgeSelection(), MeshObjectSelectionPlugin::colorizeVertexSelection(), InfoMeshObjectPlugin::componentCount(), TreeModel::data(), DecimaterPlugin::decimate(), MeshObjectSelectionPlugin::deleteEdgeSelection(), MeshObjectSelectionPlugin::deleteFaceSelection(), SkeletonEditingPlugin::deleteJoint(), BSplineCurveSelectionPlugin::deleteSelectedControlPoints(), BSplineCurveSelectionPlugin::deleteSelectedKnots(), MeshObjectSelectionPlugin::deleteVertexSelection(), BSplineSurfaceSelectionPlugin::deselectAllControlPoints(), BSplineCurveSelectionPlugin::deselectAllControlPoints(), BSplineSurfaceSelectionPlugin::deselectAllKnots(), BSplineCurveSelectionPlugin::deselectAllKnots(), MeshRepairPlugin::detectFoldover(), ViewControlPlugin::disableShader(), InfoMeshObjectPlugin::edgeCount(), InfoMeshObjectPlugin::edgeLength(), InfoMeshObjectPlugin::faceArea(), InfoMeshObjectPlugin::faceCount(), TextureControlPlugin::fileOpened(), DataControlPlugin::fileOpened(), SkeletonEditingPlugin::frameCount(), TypeTriangleMeshPlugin::generateBackup(), TypeSkeletonPlugin::generateBackup(), TypePolyMeshPlugin::generateBackup(), TypeBSplineCurvePlugin::generateBackup(), InfoMeshObjectPlugin::genus(), BSplineSurfaceSelectionPlugin::getControlPointSelection(), BSplineCurveSelectionPlugin::getControlPointSelection(), InfoMeshObjectPlugin::getEdgeLengths(), MeshObjectSelectionPlugin::getEdgeSelection(), MeshObjectSelectionPlugin::getFaceSelection(), MeshObjectSelectionPlugin::getHalfedgeSelection(), MeshObjectSelectionPlugin::getHandleVertices(), BSplineCurveSelectionPlugin::getKnotSelection(), BSplineSurfaceSelectionPlugin::getKnotSelectionU(), MovePlugin::getLastManipulatorMatrix(), MeshObjectSelectionPlugin::getModelingVertices(), SkeletalAnimationPlugin::getNumberOfFrames(), DataControlPlugin::getObjectName(), MeshObjectSelectionPlugin::getVertexSelection(), SkeletonEditingPlugin::globalMatrix(), SkeletonEditingPlugin::globalTranslation(), DataControlPlugin::groupObjects(), MeshObjectSelectionPlugin::growFaceSelection(), MeshObjectSelectionPlugin::growVertexSelection(), TextureControlPlugin::handleFileOpenTextures(), MovePlugin::hideManipulator(), DataControlPlugin::hideObject(), BSplineSurfaceSelectionPlugin::invertControlPointSelection(), BSplineCurveSelectionPlugin::invertControlPointSelection(), MeshObjectSelectionPlugin::invertEdgeSelection(), MeshObjectSelectionPlugin::invertFaceSelection(), MeshObjectSelectionPlugin::invertHalfedgeSelection(), BSplineSurfaceSelectionPlugin::invertKnotSelection(), BSplineCurveSelectionPlugin::invertKnotSelection(), MeshObjectSelectionPlugin::invertVertexSelection(), MeshObjectSelectionPlugin::loadFlipperModelingSelection(), MeshObjectSelectionPlugin::loadIniFile(), INIPlugin::loadIniFile(), FileSKLPlugin::loadIniFile(), FileSTLPlugin::loadObject(), FileSPHPlugin::loadObject(), FileSKLPlugin::loadObject(), FilePLYPlugin::loadObject(), FilePlaPlugin::loadObject(), FileOMPlugin::loadObject(), FileLightPlugin::loadObject(), FileBVHPlugin::loadObject(), Core::loadObject(), FilePLYPlugin::loadPolyMeshObject(), FileOMPlugin::loadPolyMeshObject(), FilePLYPlugin::loadTriMeshObject(), FileOMPlugin::loadTriMeshObject(), SkeletonEditingPlugin::localMatrix(), SkeletonEditingPlugin::localTranslation(), MovePlugin::manipulatorDirectionX(), MovePlugin::manipulatorDirectionY(), MovePlugin::manipulatorDirectionZ(), SkeletonEditingPlugin::manipulatorMoved(), MovePlugin::manipulatorPosition(), SkeletonEditingPlugin::ManipulatorPositionChanged(), MovePlugin::ManipulatorPositionChanged(), ViewControlPlugin::modelingAreasVisible(), MovePlugin::moveObject(), Core::newObject(), TreeModel::objectChanged(), TreeModelObjectSelection::objectChanged(), DataControlPlugin::objectDelete(), SelectionBasePlugin::objectDeleted(), FileOFFPlugin::parseASCII(), FileOFFPlugin::parseBinary(), GroupData::redo(), MeshObjectSelectionPlugin::saveFlipperModelingSelection(), MeshObjectSelectionPlugin::saveIniFile(), INIPlugin::saveIniFile(), FileSKLPlugin::saveIniFile(), FileSTLPlugin::saveObject(), FileSPHPlugin::saveObject(), FileSKLPlugin::saveObject(), FilePLYPlugin::saveObject(), FilePlaPlugin::saveObject(), FileOMPlugin::saveObject(), FileOFFPlugin::saveObject(), FileOBJPlugin::saveObject(), FileLightPlugin::saveObject(), FileBVHPlugin::saveObject(), Core::saveObject(), Core::saveObjects(), Core::saveSettings(), BSplineSurfaceSelectionPlugin::selectAllControlPoints(), BSplineCurveSelectionPlugin::selectAllControlPoints(), MeshObjectSelectionPlugin::selectAllEdges(), MeshObjectSelectionPlugin::selectAllFaces(), MeshObjectSelectionPlugin::selectAllHalfedges(), BSplineSurfaceSelectionPlugin::selectAllKnots(), BSplineCurveSelectionPlugin::selectAllKnots(), MeshObjectSelectionPlugin::selectAllVertices(), MeshObjectSelectionPlugin::selectBoundaryEdges(), MeshObjectSelectionPlugin::selectBoundaryFaces(), MeshObjectSelectionPlugin::selectBoundaryHalfedges(), MeshObjectSelectionPlugin::selectBoundaryVertices(), MeshObjectSelectionPlugin::selectClosestBoundaryVertices(), BSplineSurfaceSelectionPlugin::selectControlPoints(), BSplineCurveSelectionPlugin::selectControlPoints(), MeshObjectSelectionPlugin::selectEdges(), VSI::ObjectPickDialog::selectedId(), ObjectPickDialog::selectedId(), MeshObjectSelectionPlugin::selectFaces(), MeshObjectSelectionPlugin::selectHalfedges(), MeshObjectSelectionPlugin::selectHandleVertices(), ViewControlPlugin::selectionVisible(), BSplineSurfaceSelectionPlugin::selectKnots(), BSplineCurveSelectionPlugin::selectKnots(), MeshObjectSelectionPlugin::selectModelingVertices(), ObjectSelectionPlugin::selectObjects(), MeshObjectSelectionPlugin::selectVertices(), SkeletonEditingPlugin::setActivePose(), MeshObjectSelectionPlugin::setAllHandleVertices(), MeshObjectSelectionPlugin::setAllModelingVertices(), MovePlugin::setManipulatorDirection(), MovePlugin::setManipulatorPosition(), ViewControlPlugin::setObjectDrawMode(), DataControlPlugin::setObjectName(), ViewControlPlugin::setShader(), DataControlPlugin::setSource(), DataControlPlugin::setTarget(), ViewControlPlugin::setUniform(), SkeletonEditingPlugin::showManipulators(), MovePlugin::showManipulators(), ViewControlPlugin::showModelingAreas(), DataControlPlugin::showObject(), MovePlugin::showProps(), LoadWidget::showSave(), ViewControlPlugin::showSelection(), MeshObjectSelectionPlugin::shrinkFaceSelection(), MeshObjectSelectionPlugin::shrinkVertexSelection(), SkeletalAnimationPlugin::slotAnimationIndexChanged(), DataControlPlugin::slotContextMenuHide(), DataControlPlugin::slotContextMenuSource(), DataControlPlugin::slotContextMenuTarget(), BackupPlugin::slotCreateBackup(), DataControlPlugin::slotCustomContextMenuRequested(), DataControlPlugin::slotDataChanged(), DataControlPlugin::slotEditLight(), Core::slotEmptyObjectAdded(), Core::slotFileOpened(), SkeletalAnimationPlugin::slotFrameChanged(), Core::slotGenerateBackup(), TextureControlPlugin::slotGetCurrentTexture(), TextureControlPlugin::slotGetSubTextures(), DataControlPlugin::slotGroup(), Core::slotLoad(), SkeletalAnimationPlugin::slotMethodChanged(), DataControlPlugin::slotMoveBaseObject(), MovePlugin::slotMoveManipToCOG(), TextureControlPlugin::slotMultiTextureAdded(), DataControlPlugin::slotObjectSelectionChanged(), TextureControlPlugin::slotObjectUpdated(), SkeletonEditingPlugin::slotObjectUpdated(), SkeletalAnimationPlugin::slotObjectUpdated(), Core::slotObjectUpdated(), DataControlPlugin::slotRename(), TypeBSplineSurfacePlugin::slotRenderControlNet(), TypeBSplineCurvePlugin::slotRenderControlPolygon(), TypeBSplineCurvePlugin::slotRenderCurve(), TypeBSplineSurfacePlugin::slotRenderSelection(), TypeBSplineCurvePlugin::slotRenderSelection(), TypeBSplineSurfacePlugin::slotRenderSurface(), MovePlugin::slotRotate(), MovePlugin::slotScale(), MovePlugin::slotSetDirection(), MovePlugin::slotSetPosition(), TextureControlPlugin::slotSetTextureMode(), DataControlPlugin::slotSwitchLight(), TextureControlPlugin::slotTextureAdded(), TextureControlPlugin::slotTextureChangeImage(), TextureControlPlugin::slotTextureContextMenu(), TextureControlPlugin::slotTextureFilename(), TextureControlPlugin::slotTextureGetImage(), TextureControlPlugin::slotTextureIndex(), TextureControlPlugin::slotTextureIndexPropertyName(), TextureControlPlugin::slotTextureName(), TextureControlPlugin::slotTextureUpdated(), MovePlugin::slotTranslation(), DataControlPlugin::slotUngroup(), ViewControlPlugin::slotUpdateContextMenu(), TypeSkeletonPlugin::slotUpdateContextMenu(), TypeBSplineSurfacePlugin::slotUpdateContextMenu(), TypeBSplineCurvePlugin::slotUpdateContextMenu(), TextureControlPlugin::slotUpdateContextMenu(), DataControlPlugin::slotUpdateContextMenu(), BackupPlugin::slotUpdateContextMenu(), MeanCurvaturePlugin::slotUpdateTexture(), LaplaceLengthPlugin::slotUpdateTexture(), DataControlPlugin::slotVisibilityChanged(), DataControlPlugin::slotZoomTo(), SmootherPlugin::smooth(), SkeletonEditingPlugin::splitBone(), MovePlugin::transform(), MovePlugin::transformEdgeSelection(), MovePlugin::transformFaceSelection(), SkeletonEditingPlugin::transformJoint(), MovePlugin::transformVertexSelection(), MovePlugin::translate(), MovePlugin::translateSelection(), GroupData::undo(), MeshObjectSelectionPlugin::unselectEdges(), MeshObjectSelectionPlugin::unselectFaces(), MeshObjectSelectionPlugin::unselectHalfedges(), MeshObjectSelectionPlugin::unselectHandleVertices(), MeshObjectSelectionPlugin::unselectModelingVertices(), MeshObjectSelectionPlugin::unselectVertices(), MeshRepairPlugin::updateFaceNormals(), MovePlugin::updateManipulatorDialog(), MeshRepairPlugin::updateNormals(), SkeletalAnimationPlugin::UpdateSkins(), SkeletalAnimationPlugin::UpdateUI(), MeshRepairPlugin::updateVertexNormals(), InfoMeshObjectPlugin::vertexCount(), InfoMeshObjectPlugin::vertexValence(), and Core::writeIniFile().

DLLEXPORT int PluginFunctions::getObjectId ( const QString  _name  ) 

This functions returns the object's id with the given name.

DLLEXPORT bool PluginFunctions::getPickedObject ( const unsigned int  _node_idx,
BaseObjectData *&  _object 
)
DLLEXPORT ACG::SceneGraph::BaseNode * PluginFunctions::getRootNode (  ) 

Get the root node for data objects.

Get the root node for the objects. This node is a separator node. All nodes belonging to objects have to be placed below this node. Add a separatornode for each object below this node!

Referenced by CoreWidget::slotUpdateGlobalDrawMenu(), CoreWidget::slotUpdateViewerDrawMenu(), and MeshObjectSelectionPlugin::slotVolumeLassoSelection().

DLLEXPORT ACG::SceneGraph::BaseNode * PluginFunctions::getSceneGraphRootNode (  ) 

get scenegraph root node

Get the real root node of the scenegraph.This node is the topmost node of the scenegraph. Normally you do not need to use this node. All objects should be added below the data root node which you can get with getRootNode().

Referenced by CoreWidget::CoreWidget(), CoreWidget::getCoordsysProjection(), MovePlugin::hideManipulator(), ViewControlPlugin::setCoordsysProjection(), MovePlugin::showProps(), CoreWidget::slotContextSwitchCoordsysProjection(), CoreWidget::slotCoordSysVisibility(), CoreWidget::slotShowSceneGraphDialog(), MovePlugin::slotUpdateContextMenuNode(), CoreWidget::updatePopupMenu(), CoreWidget::updatePopupMenuBackground(), and glViewer::viewAll().

DLLEXPORT bool PluginFunctions::getSourceCameras ( std::vector< CameraNode * > &  _cameras  ) 

Get a pointer to every Camera which is marked as a source.

Parameters:
_cameras ( vector returning the source cameras )
Returns:
false, if no camera is selected as source
DLLEXPORT bool PluginFunctions::getSourceIdentifiers ( std::vector< int > &  _identifiers  ) 

Get the identifiers of all objects marked as a source object.

Parameters:
_identifiers ( vector returning the source object identifiers )
Returns:
false, if no object is selected as source
DLLEXPORT bool PluginFunctions::getSourceMeshes ( std::vector< TriMesh * > &  _meshes  ) 

Get a pointer to every Triangle Mesh which is marked as a source mesh.

Parameters:
_meshes ( vector returning the source meshes )
Returns:
false, if no mesh is selected as source
DLLEXPORT bool PluginFunctions::getSourceMeshes ( std::vector< PolyMesh * > &  _meshes  ) 

Get a pointer to every Poly Mesh which is marked as a source mesh.

Parameters:
_meshes ( vector returning the source meshes )
Returns:
false, if no mesh is selected as source
DLLEXPORT bool PluginFunctions::getTargetCameras ( std::vector< CameraNode * > &  _cameras  ) 

Get a pointer to every Camera which is marked as a target.

Parameters:
_cameras ( vector returning the target cameras )
Returns:
false, if no camera is selected as target
DLLEXPORT bool PluginFunctions::getTargetIdentifiers ( std::vector< int > &  _identifiers  ) 

Get the identifiers of all objects marked as a target object.

Parameters:
_identifiers ( vector returning the target object identifiers )
Returns:
false, if no object is selected as target
DLLEXPORT bool PluginFunctions::getTargetMeshes ( std::vector< TriMesh * > &  _meshes  ) 

Get a pointer to every Triangle Mesh which is marked as a target mesh.

Parameters:
_meshes ( vector returning the target meshes )
Returns:
false, if no mesh is selected as target
DLLEXPORT bool PluginFunctions::getTargetMeshes ( std::vector< PolyMesh * > &  _meshes  ) 

Get a pointer to every Poly Mesh which is marked as a target mesh.

Parameters:
_meshes ( vector returning the target meshes )
Returns:
false, if no mesh is selected as target
DLLEXPORT bool PluginFunctions::isProjectionOrthographic ( int  _viewer = ACTIVE_VIEWER  ) 

Check if the projection is orthographic.

Parameters:
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT LightNode * PluginFunctions::lightNode ( BaseObjectData _object  ) 

Get a LightNode from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a light, a LightNode will be returned. Otherwise a NULL pointer is returned.
DLLEXPORT LightObject * PluginFunctions::lightObject ( BaseObjectData _object  ) 

Cast an BaseObject to a LightObject if possible.

Parameters:
_object The object should be of type BaseDataObject. If the content is a light, a a LightObject is returned. Otherwise a NULL pointer is returned.

Referenced by TypeLightPlugin::findDepth(), LightWidget::getObject(), INIPlugin::loadIniFile(), TypeLightPlugin::rotateLightDirection(), INIPlugin::saveIniFile(), FileLightPlugin::saveObject(), TypeLightPlugin::slotMouseEventLight(), and TypeLightPlugin::updateLights().

DLLEXPORT LightSource * PluginFunctions::lightSource ( LightObject _object  ) 

Get the lightSource in this Object.

Parameters:
_object Try to get a light source from an object. If this Object is not a light source or anything else goes wrong, the function will return 0
DLLEXPORT LightSource * PluginFunctions::lightSource ( BaseObjectData _object  ) 

Get the lightSource in this Object.

Parameters:
_object Try to get a light source from an object. If this Object is not a light source, the function will return 0

Referenced by TypeLightPlugin::findDepth(), LightWidget::getObject(), FileLightPlugin::loadObject(), FileLightPlugin::saveObject(), and TypeLightPlugin::updateLights().

DLLEXPORT void PluginFunctions::lookAt ( const ACG::Vec3d _eye,
const ACG::Vec3d _center,
const ACG::Vec3d _up,
int  _viewer = ACTIVE_VIEWER 
)

Set the look at transformation directly.

Parameters:
_eye eye point
_center center point
_up up vector
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by FileViewPlugin::loadObject().

DLLEXPORT QPoint PluginFunctions::mapToGlobal ( const QPoint  _point  ) 

Map coordinates of GL Widget to global coordinates.

DLLEXPORT QPoint PluginFunctions::mapToLocal ( const QPoint  _point  ) 

Map global coordinates to GL Widget local coordinates.

DLLEXPORT bool PluginFunctions::objectExists ( const int  _identifier  ) 

Check if an object with this identifier exists.

Searches through the Data containers and checks if the object with the given identifier exists

Parameters:
_identifier Object id to search for
DLLEXPORT void PluginFunctions::orthographicProjection ( int  _viewer = ALL_VIEWERS  ) 

Switch to orthographic Projection.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by Core::applyOptions().

DLLEXPORT void PluginFunctions::perspectiveProjection ( int  _viewer = ALL_VIEWERS  ) 

Switch to perspective Projection.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by Core::applyOptions().

DLLEXPORT PlaneNode * PluginFunctions::planeNode ( BaseObjectData _object  ) 

Get a PlaneNode from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a plane, a PlaneNode will be returned. Otherwise a NULL pointer is returned.

Referenced by MovePlugin::moveObject().

DLLEXPORT PlaneObject * PluginFunctions::planeObject ( int  _objectId  ) 

Get a PlaneObject from an object id if possible.

Parameters:
_object If the object is a plane, a PlaneObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT PlaneObject * PluginFunctions::planeObject ( BaseObjectData _object  ) 

Cast an BaseObject to a PlaneObject if possible.

Parameters:
_object The object should be of type BaseDataObject. If the content is a plane, a a PlaneObject is returned. Otherwise a NULL pointer is returned.

Referenced by FilePlaPlugin::saveObject().

DLLEXPORT PolyMesh * PluginFunctions::polyMesh ( int  _identifier  ) 

Get a poly mesh from an object id.

Parameters:
_identifier Identifier of the object. If its a poly mesh, the function will return the pointer to the mesh otherwise 0
DLLEXPORT PolyMesh * PluginFunctions::polyMesh ( BaseObjectData _object  ) 

Get a poly mesh from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a poly Mesh, a poly mesh will be returned. Otherwise a NULL pointer is returned.

Referenced by TopologyPlugin::add_face(), InfoMeshObjectPlugin::boundaryCount(), InfoMeshObjectPlugin::boundingBoxMax(), InfoMeshObjectPlugin::boundingBoxMin(), InfoMeshObjectPlugin::boundingBoxSize(), TopologyPlugin::clearAddFaceVertices(), MeshObjectSelectionPlugin::clearEdgeSelection(), MeshObjectSelectionPlugin::clearFaceSelection(), MeshObjectSelectionPlugin::clearHalfedgeSelection(), MeshObjectSelectionPlugin::clearHandleVertices(), MeshObjectSelectionPlugin::clearModelingVertices(), MeshObjectSelectionPlugin::clearVertexSelection(), InfoMeshObjectPlugin::cog(), TopologyPlugin::collapse_edge(), MeshObjectSelectionPlugin::colorizeEdgeSelection(), MeshObjectSelectionPlugin::colorizeFaceSelection(), MeshObjectSelectionPlugin::colorizeHalfedgeSelection(), MeshObjectSelectionPlugin::colorizeVertexSelection(), InfoMeshObjectPlugin::componentCount(), MeshObjectSelectionPlugin::conversionRequested(), TopologyPlugin::delete_face(), MeshObjectSelectionPlugin::deleteEdgeSelection(), MeshObjectSelectionPlugin::deleteFaceSelection(), MeshObjectSelectionPlugin::deleteVertexSelection(), InfoMeshObjectPlugin::edgeCount(), InfoMeshObjectPlugin::edgeLength(), InfoMeshObjectPlugin::faceArea(), InfoMeshObjectPlugin::faceCount(), TextureControlPlugin::fileOpened(), InfoMeshObjectPlugin::genus(), InfoMeshObjectPlugin::getEdgeLengths(), MeshObjectSelectionPlugin::getEdgeSelection(), MeshObjectSelectionPlugin::getFaceSelection(), MeshObjectSelectionPlugin::getHalfedgeSelection(), MeshObjectSelectionPlugin::getHandleVertices(), MeshObjectSelectionPlugin::getModelingVertices(), MeshObjectSelectionPlugin::getVertexSelection(), MeshObjectSelectionPlugin::growFaceSelection(), MeshObjectSelectionPlugin::growVertexSelection(), MeshObjectSelectionPlugin::invertEdgeSelection(), MeshObjectSelectionPlugin::invertFaceSelection(), MeshObjectSelectionPlugin::invertHalfedgeSelection(), MeshObjectSelectionPlugin::invertVertexSelection(), MeshObjectSelectionPlugin::lassoSelection(), MeshObjectSelectionPlugin::loadFlipperModelingSelection(), MeshObjectSelectionPlugin::loadIniFile(), MovePlugin::moveObject(), SelectVolumeAction::operator()(), MovePlugin::placeManip(), MeshObjectSelectionPlugin::saveFlipperModelingSelection(), MeshObjectSelectionPlugin::selectAllEdges(), MeshObjectSelectionPlugin::selectAllFaces(), MeshObjectSelectionPlugin::selectAllHalfedges(), MeshObjectSelectionPlugin::selectAllVertices(), MeshObjectSelectionPlugin::selectBoundaryEdges(), MeshObjectSelectionPlugin::selectBoundaryFaces(), MeshObjectSelectionPlugin::selectBoundaryHalfedges(), MeshObjectSelectionPlugin::selectBoundaryVertices(), MeshObjectSelectionPlugin::selectEdges(), MeshObjectSelectionPlugin::selectFaces(), MeshObjectSelectionPlugin::selectHalfedges(), MeshObjectSelectionPlugin::selectHandleVertices(), MeshObjectSelectionPlugin::selectModelingVertices(), MeshObjectSelectionPlugin::selectVertices(), MeshObjectSelectionPlugin::setAllHandleVertices(), MeshObjectSelectionPlugin::setAllModelingVertices(), MeshObjectSelectionPlugin::shrinkFaceSelection(), MeshObjectSelectionPlugin::shrinkVertexSelection(), SmootherPlugin::simpleLaplace(), MeshObjectSelectionPlugin::slotClosestBoundarySelection(), MeshObjectSelectionPlugin::slotComponentsSelection(), MeshObjectSelectionPlugin::slotFloodFillSelection(), InfoMeshObjectPlugin::slotInformationRequested(), MouseAndKeyPlugin::slotKeyEvent(), MovePlugin::slotMoveManipToCOG(), MovePlugin::slotMoveToOrigin(), InfoMeshObjectPlugin::slotObjectUpdated(), MovePlugin::slotRotate(), MovePlugin::slotScale(), MovePlugin::slotSetPosition(), MeshObjectSelectionPlugin::slotSphereSelection(), TextureControlPlugin::slotTextureUpdated(), MeshObjectSelectionPlugin::slotToggleSelection(), MovePlugin::slotUnifyBoundingBoxDiagonal(), MeanCurvaturePlugin::slotUpdateTexture(), LaplaceLengthPlugin::slotUpdateTexture(), TopologyPlugin::split_face(), MovePlugin::transform(), MovePlugin::transformEdgeSelection(), MovePlugin::transformFaceSelection(), MovePlugin::transformVertexSelection(), MovePlugin::translate(), MovePlugin::translateSelection(), MeshObjectSelectionPlugin::unselectEdges(), MeshObjectSelectionPlugin::unselectFaces(), MeshObjectSelectionPlugin::unselectHalfedges(), MeshObjectSelectionPlugin::unselectHandleVertices(), MeshObjectSelectionPlugin::unselectModelingVertices(), MeshObjectSelectionPlugin::unselectVertices(), MeshRepairPlugin::updateFaceNormals(), MeshRepairPlugin::updateNormals(), MeshRepairPlugin::updateVertexNormals(), InfoMeshObjectPlugin::vertexCount(), and InfoMeshObjectPlugin::vertexValence().

DLLEXPORT PolyMeshObject * PluginFunctions::polyMeshObject ( int  _objectId  ) 

Get an PolyMeshObject from the given id If possible.

Parameters:
_objectId Id of the requested Object. If the content is a volume, a a PolyMeshObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT PolyMeshObject * PluginFunctions::polyMeshObject ( BaseObjectData _object  ) 
DLLEXPORT void PluginFunctions::rotate ( const ACG::Vec3d _axis,
const double  _angle,
const ACG::Vec3d _center,
int  _viewer = ALL_VIEWERS 
)

Rotate Scene around axis.

Rotates the current scene.

Parameters:
_axis Rotation axis
_angle Rotation Angle
_center Rotation Center
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT const ACG::Vec3d PluginFunctions::sceneCenter ( int  _viewer = ALL_VIEWERS  ) 

Get the current scene center.

Referenced by FileViewPlugin::loadObject().

DLLEXPORT bool PluginFunctions::scenegraphPick ( const unsigned int  _examiner,
ACG::SceneGraph::PickTarget  _pickTarget,
const QPoint &  _mousePos,
unsigned int &  _nodeIdx,
unsigned int &  _targetIdx,
ACG::Vec3d _hitPointPtr 
)

Execute picking operation on scenegraph This picking function will pick in the specified examiner context

DLLEXPORT bool PluginFunctions::scenegraphPick ( ACG::SceneGraph::PickTarget  _pickTarget,
const QPoint &  _mousePos,
unsigned int &  _nodeIdx,
unsigned int &  _targetIdx,
ACG::Vec3d _hitPointPtr 
)
DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( const unsigned int  _examiner,
ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list,
QVector< float > &  _depths,
QVector< ACG::Vec3d > &  _points 
)

Execute picking operation on scenegraph This picking function will pick in the specified examiner context

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list,
QVector< float > &  _depths,
QVector< ACG::Vec3d > &  _points 
)

Execute picking operation on scenegraph This picking function will pick in the last active examiner context which is automatically Set by mouseevents from the core

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( const unsigned int  _examiner,
ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list,
QVector< float > &  _depths 
)

Execute picking operation on scenegraph This picking function will pick in the specified examiner context The depth of each target/node element is stored in the _depths vector.

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list,
QVector< float > &  _depths 
)

Execute picking operation on scenegraph This picking function will pick in the last active examiner context which is automatically The depth of each target/node element is stored in the _depths vector. Set by mouseevents from the core

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( const unsigned int  _examiner,
ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list,
QVector< ACG::Vec3d > &  _points 
)

Execute picking operation on scenegraph This picking function will pick in the specified examiner context The 3d Position of each target/node element is stored in the _points vector.

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list,
QVector< ACG::Vec3d > &  _points 
)

Execute picking operation on scenegraph This picking function will pick in the last active examiner context which is automatically The 3d Position of each target/node element is stored in the _points vector. Set by mouseevents from the core

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( const unsigned int  _examiner,
ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list 
)

Execute picking operation on scenegraph This picking function will pick in the specified examiner context

DLLEXPORT bool PluginFunctions::scenegraphRegionPick ( ACG::SceneGraph::PickTarget  _pickTarget,
const QRegion &  _region,
QList< QPair< unsigned int, unsigned int > > &  _list 
)

Execute picking operation on scenegraph This picking function will pick in the last active examiner context which is automatically Set by mouseevents from the core

Referenced by MeshObjectSelectionPlugin::lassoSelection().

DLLEXPORT double PluginFunctions::sceneRadius ( int  _viewer  ) 

Returns the current scene radius from a given examiner viewer.

Returns the Radius of the scene

Parameters:
_viewer Give the viewer which should be asked for its current scene radius
DLLEXPORT double PluginFunctions::sceneRadius (  ) 

Returns the current scene radius from the active examiner widget.

Returns the Radius of the scene

Referenced by MovePlugin::setManipulatorPosition().

DLLEXPORT void PluginFunctions::setBackColor ( OpenMesh::Vec4f  _color  ) 
DLLEXPORT void PluginFunctions::setDataRoot ( BaseObject _root  ) 

Set the global DataContainer

Referenced by Core::init().

DLLEXPORT void PluginFunctions::setDefaultViewObjectMarker ( ViewObjectMarker _marker  ) 

Set the default ViewObjectMarker

Parameters:
_marker Object marker

Referenced by DataControlPlugin::pluginsInitialized().

DLLEXPORT void PluginFunctions::setDrawMode ( const ACG::SceneGraph::DrawModes::DrawMode  _mode,
int  _viewer = ALL_VIEWERS 
)

Set the draw Mode of a Viewer.
.

The DrawModes are defined at ACG/Scenegraph/DrawModes.hh
They can be combined.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by FileOBJPlugin::loadObject(), FilePLYPlugin::loadPolyMeshObject(), FilePLYPlugin::loadTriMeshObject(), SkeletonEditingPlugin::placeManip(), CoreWidget::slotGlobalDrawMenu(), and TextureControlPlugin::switchDrawMode().

DLLEXPORT void PluginFunctions::setFixedView ( int  _mode,
int  _viewer = ACTIVE_VIEWER 
)

Set a fixed View for a viewer.

Parameters:
_mode id for the mode
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by Core::applyOptions(), CoreWidget::slotLockRotation(), and CoreWidget::slotSetViewingDirection().

DLLEXPORT void PluginFunctions::setFOVY ( double  _fovy  ) 

Set field of view angle.

Parameters:
_fovy Field of view (in (1, 180) degrees)
DLLEXPORT void PluginFunctions::setSceneCenter ( const ACG::Vec3d _center,
int  _viewer 
)

Set center of scene

DLLEXPORT void PluginFunctions::setSceneGraphRootNode ( SeparatorNode _root_node  ) 

Set the internal scenegraph root node pointer. This is the topmost node of the whole scenegraph ( DO NOT USE!! )

Referenced by Core::init().

DLLEXPORT void PluginFunctions::setSceneGraphRootNodeGlobal ( SeparatorNode _root_node  ) 

Set the internal scenegraph root node pointer for global nodes

This node is below the global status nodes and takes global nodes at one level. ( DO NOT USE!! )

Referenced by Core::init().

DLLEXPORT void PluginFunctions::setScenePos ( const ACG::Vec3d _center,
int  _viewer = ALL_VIEWERS 
)

Set the scene position.

Same as setScenePos(const ACG::Vec3d& _center, double _radius) but reuses the current radius

Parameters:
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT void PluginFunctions::setScenePos ( const ACG::Vec3d _center,
const double  _radius,
int  _viewer = ALL_VIEWERS 
)

Set the Scene position.

Parameters:
_center Center of the current scene
_radius Radius of the scene ( Use scene_radius to get the current radius )
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by ViewControlPlugin::setSceneCenter().

DLLEXPORT void PluginFunctions::setTrackBallCenter ( const ACG::Vec3d _center,
int  _viewer 
)

Set the trackball Center.

The scene is rotated around the trackball center when using the mouse

Parameters:
_center Center of the trackball
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT void PluginFunctions::setViewObjectMarker ( ViewObjectMarker _marker  ) 

Set current ViewObjectMarker (will be reseted to default on pick mode change)

Parameters:
_marker Object marker

Referenced by DataControlPlugin::pluginsInitialized(), MovePlugin::setManipMode(), and MovePlugin::slotPickModeChanged().

DLLEXPORT Skeleton * PluginFunctions::skeleton ( BaseObjectData _object  ) 
DLLEXPORT SkeletonObject * PluginFunctions::skeletonObject ( BaseObjectData _object  ) 
DLLEXPORT SphereNode * PluginFunctions::sphereNode ( BaseObjectData _object  ) 

Get a SphereNode from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a sphere, a SphereNode will be returned. Otherwise a NULL pointer is returned.

Referenced by FileSPHPlugin::loadObject(), and FileSPHPlugin::saveObject().

DLLEXPORT SphereObject * PluginFunctions::sphereObject ( BaseObjectData _object  ) 

Cast an BaseObject to a SphereObject if possible.

Parameters:
_object The object should be of type BaseDataObject. If the content is a sphere, a a SphereObject is returned. Otherwise a NULL pointer is returned.
DLLEXPORT SphereObject * PluginFunctions::sphereObject ( int  _objectId  ) 

Get a SphereObject from id if possible.

Parameters:
_object If the content is a sphere, a SphereObject is returned. Otherwise a NULL pointer is returned.

Referenced by FileSPHPlugin::saveObject().

DLLEXPORT BSplineCurve * PluginFunctions::splineCurve ( BaseObjectData _object  ) 
DLLEXPORT BSplineSurface * PluginFunctions::splineSurface ( BaseObjectData _object  ) 
DLLEXPORT const ACG::Vec3d PluginFunctions::trackBallCenter ( int  _viewer  ) 

Get the trackball Center.

The scene is rotated around the trackball center when using the mouse

Parameters:
_center Center of the trackball
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by TypeLightPlugin::computeClickOnTrackball(), and TypeLightPlugin::updateLights().

DLLEXPORT void PluginFunctions::translate ( const ACG::Vec3d _vector,
int  _viewer = ALL_VIEWERS 
)

Translate viewer pos by given vector.

Translates the scene by a given vector. ( This is only a view transformation and does not effect the scene center. To really translate the scene, use setScenePos );

Parameters:
_vector translation
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT void PluginFunctions::traverse ( ACG::SceneGraph::MouseEventAction _action  ) 

Execute Scenegraph traversal with action and use the last active examiner If you are reacting on a mouseEvent you should use this function as it will automatically set the right view

Referenced by MovePlugin::slotMouseEvent(), MouseAndKeyPlugin::slotMouseEvent(), and TypeLightPlugin::slotMouseEventLight().

DLLEXPORT TriMesh * PluginFunctions::triMesh ( int  _identifier  ) 

Get a triangle mesh from an object id.

Parameters:
_identifier Identifier of the object. If its a triangle mesh, the function will return the pointer to the mesh otherwise 0
DLLEXPORT TriMesh * PluginFunctions::triMesh ( BaseObjectData _object  ) 

Get a triangle mesh from an object.

Parameters:
_object The object should be of type BaseDataObject. If the content is a triangle Mesh, a triangle mesh will be returned. Otherwise a NULL pointer is returned.

Referenced by TopologyPlugin::add_face(), InfoMeshObjectPlugin::aspectRatio(), InfoMeshObjectPlugin::boundaryCount(), InfoMeshObjectPlugin::boundingBoxMax(), InfoMeshObjectPlugin::boundingBoxMin(), InfoMeshObjectPlugin::boundingBoxSize(), TopologyPlugin::clearAddFaceVertices(), MeshObjectSelectionPlugin::clearEdgeSelection(), MeshObjectSelectionPlugin::clearFaceSelection(), MeshObjectSelectionPlugin::clearHalfedgeSelection(), MeshObjectSelectionPlugin::clearHandleVertices(), MeshObjectSelectionPlugin::clearModelingVertices(), MeshObjectSelectionPlugin::clearVertexSelection(), InfoMeshObjectPlugin::cog(), TopologyPlugin::collapse_edge(), MeshObjectSelectionPlugin::colorizeEdgeSelection(), MeshObjectSelectionPlugin::colorizeFaceSelection(), MeshObjectSelectionPlugin::colorizeHalfedgeSelection(), MeshObjectSelectionPlugin::colorizeVertexSelection(), InfoMeshObjectPlugin::componentCount(), MeshObjectSelectionPlugin::conversionRequested(), DecimaterPlugin::decimate(), TopologyPlugin::delete_face(), MeshObjectSelectionPlugin::deleteEdgeSelection(), MeshObjectSelectionPlugin::deleteFaceSelection(), MeshObjectSelectionPlugin::deleteVertexSelection(), InfoMeshObjectPlugin::edgeCount(), InfoMeshObjectPlugin::edgeLength(), InfoMeshObjectPlugin::faceArea(), InfoMeshObjectPlugin::faceCount(), TextureControlPlugin::fileOpened(), TopologyPlugin::flip_edge(), InfoMeshObjectPlugin::genus(), InfoMeshObjectPlugin::getEdgeLengths(), MeshObjectSelectionPlugin::getEdgeSelection(), MeshObjectSelectionPlugin::getFaceSelection(), MeshObjectSelectionPlugin::getHalfedgeSelection(), MeshObjectSelectionPlugin::getHandleVertices(), MeshObjectSelectionPlugin::getModelingVertices(), MeshObjectSelectionPlugin::getVertexSelection(), MeshObjectSelectionPlugin::growFaceSelection(), MeshObjectSelectionPlugin::growVertexSelection(), MeshObjectSelectionPlugin::invertEdgeSelection(), MeshObjectSelectionPlugin::invertFaceSelection(), MeshObjectSelectionPlugin::invertHalfedgeSelection(), MeshObjectSelectionPlugin::invertVertexSelection(), MeshObjectSelectionPlugin::lassoSelection(), MeshObjectSelectionPlugin::loadFlipperModelingSelection(), MeshObjectSelectionPlugin::loadIniFile(), MovePlugin::moveObject(), SelectVolumeAction::operator()(), MovePlugin::placeManip(), MeshObjectSelectionPlugin::saveFlipperModelingSelection(), MeshObjectSelectionPlugin::selectAllEdges(), MeshObjectSelectionPlugin::selectAllFaces(), MeshObjectSelectionPlugin::selectAllHalfedges(), MeshObjectSelectionPlugin::selectAllVertices(), MeshObjectSelectionPlugin::selectBoundaryEdges(), MeshObjectSelectionPlugin::selectBoundaryFaces(), MeshObjectSelectionPlugin::selectBoundaryHalfedges(), MeshObjectSelectionPlugin::selectBoundaryVertices(), MeshObjectSelectionPlugin::selectEdges(), MeshObjectSelectionPlugin::selectFaces(), MeshObjectSelectionPlugin::selectHalfedges(), MeshObjectSelectionPlugin::selectHandleVertices(), MeshObjectSelectionPlugin::selectModelingVertices(), MeshObjectSelectionPlugin::selectVertices(), MeshObjectSelectionPlugin::setAllHandleVertices(), MeshObjectSelectionPlugin::setAllModelingVertices(), MeshObjectSelectionPlugin::shrinkFaceSelection(), MeshObjectSelectionPlugin::shrinkVertexSelection(), SmootherPlugin::simpleLaplace(), DecimaterPlugin::slot_decimate(), SmootherPlugin::slot_smooth(), MeshObjectSelectionPlugin::slotClosestBoundarySelection(), MeshObjectSelectionPlugin::slotComponentsSelection(), MeshObjectSelectionPlugin::slotFloodFillSelection(), InfoMeshObjectPlugin::slotInformationRequested(), MouseAndKeyPlugin::slotKeyEvent(), MovePlugin::slotMoveManipToCOG(), MovePlugin::slotMoveToOrigin(), InfoMeshObjectPlugin::slotObjectUpdated(), MovePlugin::slotRotate(), MovePlugin::slotScale(), MovePlugin::slotSetPosition(), MeshObjectSelectionPlugin::slotSphereSelection(), TextureControlPlugin::slotTextureUpdated(), MeshObjectSelectionPlugin::slotToggleSelection(), MovePlugin::slotUnifyBoundingBoxDiagonal(), MeanCurvaturePlugin::slotUpdateTexture(), LaplaceLengthPlugin::slotUpdateTexture(), SmootherPlugin::smooth(), TopologyPlugin::split_edge(), TopologyPlugin::split_face(), SubdividerPlugin::subdivide(), MovePlugin::transform(), MovePlugin::transformEdgeSelection(), MovePlugin::transformFaceSelection(), MovePlugin::transformVertexSelection(), MovePlugin::translate(), MovePlugin::translateSelection(), MeshObjectSelectionPlugin::unselectEdges(), MeshObjectSelectionPlugin::unselectFaces(), MeshObjectSelectionPlugin::unselectHalfedges(), MeshObjectSelectionPlugin::unselectHandleVertices(), MeshObjectSelectionPlugin::unselectModelingVertices(), MeshObjectSelectionPlugin::unselectVertices(), MeshRepairPlugin::updateFaceNormals(), MeshRepairPlugin::updateNormals(), MeshRepairPlugin::updateVertexNormals(), InfoMeshObjectPlugin::vertexCount(), and InfoMeshObjectPlugin::vertexValence().

DLLEXPORT TriMeshObject * PluginFunctions::triMeshObject ( int  _objectId  ) 

Get an TriMeshObject from the given id If possible.

Parameters:
_objectId Id of the requested Object.
Returns:
If the content is a volume, a pointer to the TriMeshObject is returned, otherwise a NULL pointer.
DLLEXPORT TriMeshObject * PluginFunctions::triMeshObject ( BaseObjectData _object  ) 
DLLEXPORT ACG::Vec3d PluginFunctions::upVector ( int  _viewer = ACTIVE_VIEWER  ) 

Get the current up vector.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by FileViewPlugin::loadObject().

DLLEXPORT void PluginFunctions::viewAll ( int  _viewer = ALL_VIEWERS  ) 

View the whole scene.

Parameters:
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Referenced by FileSKLPlugin::loadObject(), FileOFFPlugin::loadObject(), FileOBJPlugin::loadObject(), and FileBVHPlugin::loadObject().

DLLEXPORT int PluginFunctions::viewerId (  ) 

Return unique viewer id.

This function returns a id which is unique to all running Openflippers on that machine. This id changes when you restart the viewer!

DLLEXPORT Viewer::ViewerProperties & PluginFunctions::viewerProperties ( int  _id = ACTIVE_VIEWER  ) 

Get the viewer properties Use this functions to get basic viewer properties such as backgroundcolor or rendering options.

Parameters:
_id Which viewer should be used? ACTIVE_VIEWER will get the properties of the active Viewer which is the default

Referenced by Core::applyOptions(), CoreWidget::CoreWidget(), ViewControlPlugin::enableBackfaceCulling(), TypeLightPlugin::findDepth(), FileViewPlugin::loadObject(), Core::openIniFile(), Core::readApplicationOptions(), Core::resetScenegraph(), OptionsWidget::slotApply(), CoreWidget::slotExaminerSnapshot(), CoreWidget::slotGlobalChangeAnimation(), CoreWidget::slotGlobalChangeBackFaceCulling(), CoreWidget::slotGlobalChangeMipmapping(), CoreWidget::slotGlobalChangeMultisampling(), CoreWidget::slotGlobalChangeTwoSidedLighting(), CoreWidget::slotGlobalToggleAnimation(), CoreWidget::slotGlobalToggleBackFaceCulling(), CoreWidget::slotGlobalToggleMipmapping(), CoreWidget::slotGlobalToggleMultisampling(), CoreWidget::slotGlobalToggleTwoSidedLighting(), CoreWidget::slotLocalChangeAnimation(), CoreWidget::slotLocalChangeBackFaceCulling(), CoreWidget::slotLocalChangeMipmapping(), CoreWidget::slotLocalChangeMultisampling(), CoreWidget::slotLocalChangeTwoSidedLighting(), MovePlugin::slotMouseEvent(), TypeLightPlugin::slotMouseEventLight(), CoreWidget::slotSetContextBackgroundColor(), CoreWidget::slotSetGlobalBackgroundColor(), CoreWidget::slotSnapshotName(), CoreWidget::slotViewerDrawMenu(), CoreWidget::slotViewMenuAboutToShow(), ObjectSelectionPlugin::slotVolumeLassoSelection(), MeshObjectSelectionPlugin::slotVolumeLassoSelection(), BSplineSurfaceSelectionPlugin::slotVolumeLassoSelection(), BSplineCurveSelectionPlugin::slotVolumeLassoSelection(), Core::snapshotBaseFileName(), Core::snapshotCounterStart(), Core::snapshotFileType(), CoreWidget::updatePopupMenuCoordsysNode(), and Core::writeApplicationOptions().

DLLEXPORT void PluginFunctions::viewerSnapshot ( int  _viewer,
QImage &  _image,
int  _width = 0,
int  _height = 0,
bool  _alpha = false,
bool  _hideCoordsys = false,
int  _samples = 1 
)

Take a snapshot of a viewer.

Take a snapshot of the current view

Parameters:
_viewer Viewer id
_image An image to store pixel data in
_width Image width
_height Image height
_alpha Make background transparent
_hideCoordsys Hide coordsys node
_samples Number of samples (multisampling)
DLLEXPORT void PluginFunctions::viewHome ( int  _viewer = ALL_VIEWERS  ) 

Go to home position.

Parameters:
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT ACG::Vec3d PluginFunctions::viewingDirection ( int  _viewer = ACTIVE_VIEWER  ) 

Get the current viewing Direction.

Parameters:
_viewer Id of the viewer to use. ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly
DLLEXPORT void PluginFunctions::viewingDirection ( const ACG::Vec3d _dir,
const ACG::Vec3d _up,
int  _viewer = ACTIVE_VIEWER 
)

Set the viewing direction.

Parameters:
_dir direction
_up up vector
_viewer Id of the viewer to use. ALL_VIEWERS will set all viewers (Default) ACTIVE_VIEWER active viewer 0..3 Choose viewer explicitly

Variable Documentation

DONT USE DIRECTLY!!

The pointer to the beginning of the scenegraph nodes ( only the nodes belonging to objects ) Between the actual root node ( sceneGraphRootNode_ ) and this node global nodes could be added This pointer is internally used to access the scenegraphs root node

Definition at line 92 of file PluginFunctions.cc.

This node is used to add nodes between the root node of the scenegraph and the objects separator node. It is directly below the sceneGraphRootNode_

Definition at line 97 of file PluginFunctions.cc.

DONT USE DIRECTLY!!

This pointer is used internally

Definition at line 117 of file PluginFunctions.cc.

a dummy properties object returned as a reference if the real object does not exist

std::vector< glViewer* > PluginFunctions::examiner_widgets_ [static]

DONT USE DIRECTLY!!

This pointer is internally used to acces the examiner widget in the main apllication

Definition at line 70 of file PluginFunctions.cc.

DONT USE DIRECTLY!!

This Pointer will be used to access the data trees root in the plugin. Never use it directly as the internal Structure will change. Use the Access functions instead

Definition at line 64 of file PluginFunctions.cc.

QGLWidget* PluginFunctions::shareGLWidget_ = 0 [static]

DONT USE DIRECTLY!!

This pointer is used internally

Definition at line 123 of file PluginFunctions.cc.

int PluginFunctions::viewerId_ = 0 [static]

This is a unique id for the running OpenFlipper instance. Use it to identify yourself on the network

Definition at line 127 of file PluginFunctions.cc.

DONT USE DIRECTLY!!

This vector is used internally to access properties of all viewers

Definition at line 76 of file PluginFunctions.cc.

Generated on Thu Jun 30 10:12:51 2011 for DeveloperDocumentation by  doxygen 1.6.3