68 #include "infoDialog.hh" 88 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-MeshObjectInfo")
92 void setSlotDescription(QString _slotName, QString _slotDescription,
93 QStringList _parameters, QStringList _descriptions);
96 void log(
Logtype _type, QString _message);
97 void log(QString _message);
100 void addWidgetToStatusbar(QWidget* _widget);
105 void initializePlugin();
107 void slotObjectUpdated(
int _identifier,
const UpdateType& _type );
108 void slotObjectSelectionChanged(
int _identifier );
109 void slotAllCleared();
112 void objectDeleted(
int _identifier );
114 void noguiSupported( ) {} ;
120 void slotShowHistogram();
131 QString
name(){
return (QString(
"InfoMeshObject")); };
134 QString
description() {
return (QString(tr(
"Provides Information on Mesh Objects"))); };
141 template<
class MeshT >
142 void printMeshInfo( MeshT* _mesh,
int _id,
unsigned int _face,
ACG::Vec3d& _hitPoint );
179 double faceArea (
int _id,
int _faceHandle);
200 template<
class MeshT >
204 template<
class MeshT >
208 template<
class MeshT >
212 template<
class MeshT >
213 void getEdgeLengths(MeshT* _mesh,
double &min,
double &max,
double &mean);
216 bool getEdgeLengths(
int _id,
double &min,
double &max,
double &mean);
222 int lastPickedObjectId_;
225 #endif //MOVEPLUGIN_HH Plugin to visualize information about objects in the scene.
DataType supportedDataTypes()
Get data type for information requests.
double meanEdgeLength(int _id)
get the mean edge length
int vertexCount(int _id)
get total number of vertices for a given object
Interface class for exporting functions to python.
void pluginsInitialized()
initialize the plugin
void getEdgeLengths(MeshT *_mesh, double &min, double &max, double &mean)
Get edge lengths.
QString version()
set scripting slot descriptions
Vector cog(int _id)
get the center of gravity
Logtype
Log types for Message Window.
Interface for all Plugins which do logging to the logging window of the framework.
QString description()
Description of the Plugin.
double aspectRatio(int _id, int _faceHandle)
get the aspect ratio of a face
QString name()
Name of the Plugin.
int getClosestVertexFromEdge(MeshT *_mesh, int _edge_idx, ACG::Vec3d &_hitPoint)
Get closest vertex index from an edge.
double maxEdgeLength(int _id)
get the maximal edge length
void updateData(int _identifier, const UpdateType &_type, const bool deleted)
Slot that updates the visualization.
int vertexValence(int _id, int _vertexHandle)
get vertex valence
double edgeLength(int _id, int _edgeHandle)
get the length of an edge
int boundaryCount(int _id)
get the number of boundaries for a given object
Control OpenFlippers status bar.
double faceArea(int _id, int _faceHandle)
get the area of a face
int edgeCount(int _id)
get total number of edges for a given object
int getClosestVertexInFace(MeshT *_mesh, int _face_idx, ACG::Vec3d &_hitPoint)
Get closest vertex index from a face.
Vector boundingBoxMax(int _id)
get maximum bounding box point
int faceCount(int _id)
get total number of faces for a given object
void setDescriptions()
set scripting slot descriptions
Vector boundingBoxSize(int _id)
get the size of the bounding box
Vector boundingBoxMin(int _id)
get minumum bounding box point
int getClosestEdgeInFace(MeshT *_mesh, int _face_idx, const ACG::Vec3d &_hitPoint)
Get closest edge index from a face.
void slotInformationRequested(const QPoint _clickedPoint, DataType _type)
Show information dialog on clicked object.
int componentCount(int _id)
get the number of components for a given object
double minEdgeLength(int _id)
get the minimal edge length
Interface class from which all plugins have to be created.
Interface for all plugins which want to Load or Save files and create Objects.
int genus(int _id)
get the genus of the given object