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 int getClosestVertexFromEdge(MeshT *_mesh, int _edge_idx, ACG::Vec3d &_hitPoint)
Get closest vertex index from an edge.
int getClosestEdgeInFace(MeshT *_mesh, int _face_idx, const ACG::Vec3d &_hitPoint)
Get closest edge index from a face.
Vector boundingBoxSize(int _id)
get the size of the bounding box
int vertexCount(int _id)
get total number of vertices for a given object
Logtype
Log types for Message Window.
int vertexValence(int _id, int _vertexHandle)
get vertex valence
Interface for all plugins which want to Load or Save files and create Objects.
Control OpenFlippers status bar.
Interface class for providing information on objects.
QString version()
set scripting slot descriptions
Vector boundingBoxMax(int _id)
get maximum bounding box point
DataType supportedDataTypes()
Get data type for information requests.
int genus(int _id)
get the genus of the given object
Vector boundingBoxMin(int _id)
get minumum bounding box point
int getClosestVertexInFace(MeshT *_mesh, int _face_idx, ACG::Vec3d &_hitPoint)
Get closest vertex index from a face.
int edgeCount(int _id)
get total number of edges for a given object
void getEdgeLengths(MeshT *_mesh, double &min, double &max, double &mean)
Get edge lengths.
Interface for all Plugins which do logging to the logging window of the framework.
int componentCount(int _id)
get the number of components for a given object
QString description()
Description of the Plugin.
double edgeLength(int _id, int _edgeHandle)
get the length of an edge
double faceArea(int _id, int _faceHandle)
get the area of a face
Vector cog(int _id)
get the center of gravity
void slotInformationRequested(const QPoint _clickedPoint, DataType _type)
Show information dialog on clicked object.
Interface class from which all plugins have to be created.
double aspectRatio(int _id, int _faceHandle)
get the aspect ratio of a face
QString name()
Name of the Plugin.
Plugin to visualize information about objects in the scene.
int boundaryCount(int _id)
get the number of boundaries for a given object
double meanEdgeLength(int _id)
get the mean edge length
double maxEdgeLength(int _id)
get the maximal edge length
void updateData(int _identifier, const UpdateType &_type, const bool deleted)
Slot that updates the visualization.
double minEdgeLength(int _id)
get the minimal edge length
void setDescriptions()
set scripting slot descriptions
void pluginsInitialized()
initialize the plugin
int faceCount(int _id)
get total number of faces for a given object
Interface class for exporting functions to python.