23#ifndef SMESHGUI_MESHINFO_H
24#define SMESHGUI_MESHINFO_H
29#ifndef DISABLE_PLOT2DVIEWER
30 #include <Plot2d_Histogram.h>
41#include <SALOMEconfig.h>
42#include CORBA_SERVER_HEADER(SMESH_Filter)
44#include <SALOME_InteractiveObject.hxx>
45#include <SALOME_GenericObj_wrap.hxx>
50class QContextMenuEvent;
80 iObjectStart = iStart,
84 iNodesStart = iObjectEnd,
87 iElementsStart = iNodesEnd,
88 iElementsTitleStart = iElementsStart,
91 iElementsTotalStart = iElementsTitleEnd,
94 i0DStart = iElementsTotalEnd,
100 i1DStart = iBallsEnd,
118 iElementsEnd = i3DEnd,
143 void saveInfo( QTextStream& );
147 QWidget* widget(
int,
int )
const;
148 QString value(
int,
int )
const;
149 void setFieldsVisible(
int,
int,
bool );
172 void saveInfo( QTextStream& );
175 enum { ShowNone, ShowNodes, ShowElements };
177 QWidget* centralWidget()
const;
182 QString type2str(
int,
bool =
false );
183 QString stype2str(
int );
184 QString etype2str(
int );
185 QString ctrl2str(
int );
186 void writeInfo(
InfoWriter*,
const QList<uint>& );
188 virtual void clearInternal();
196 void updateControls();
215 void information(
const QList<uint>& );
216 void clearInternal();
219 void connectivityClicked(
const QUrl &);
236 void contextMenuEvent( QContextMenuEvent* );
237 void information(
const QList<uint>& );
238 void nodeInfo(
const SMDS_MeshNode*,
int,
int, QTreeWidgetItem* );
239 void clearInternal();
242 void itemDoubleClicked( QTreeWidgetItem*,
int );
243 void saveExpanded( QTreeWidgetItem* );
246 QTreeWidgetItem* createItem( QTreeWidgetItem* = 0,
int = 0 );
247 QString expandedResource( QTreeWidgetItem* );
283 void saveInfo( QTextStream& );
287 void showPreviousGroups();
288 void showNextGroups();
289 void showPreviousSubMeshes();
290 void showNextSubMeshes();
293 QTreeWidgetItem* createItem( QTreeWidgetItem* = 0,
int = 0 );
299 void showSubMeshes();
318 void saveInfo( QTextStream& );
323 void clearInternal();
324#ifndef DISABLE_PLOT2DVIEWER
325 Plot2d_Histogram* getHistogram( SMESH::NumericalFunctor_ptr );
327 void computeNb(
int,
int,
int );
330 void computeAspectRatio();
331 void computeAspectRatio3D();
332 void computeFreeNodesInfo();
333 void computeNodesNbConnInfo();
334 void computeDoubleNodesInfo();
335 void computeDoubleEdgesInfo();
336 void computeDoubleFacesInfo();
337 void computeOverConstrainedFacesInfo();
338 void computeDoubleVolumesInfo();
339 void computeOverConstrainedVolumesInfo();
340 void setTolerance(
double );
343 typedef SALOME::GenericObj_wrap< SMESH::Predicate >
TPredicate;
344 typedef SALOME::GenericObj_wrap< SMESH::NumericalFunctor >
TNumFunctor;
376 void showInfo(
const Handle(SALOME_InteractiveObject)& );
380 void keyPressEvent( QKeyEvent* );
387 void updateSelection();
392 void idPreviewChange(
bool );
393 void showItemInfo(
int type,
const QString& ids );
420 void showInfo(
const Handle(SALOME_InteractiveObject)& );
426 void updateSelection();
#define SMESHGUI_EXPORT
Definition: SMESH_SMESHGUI.hxx:36
Customized combo box to manage list of mesh groups.
Definition: SMESHGUI_MeshInfo.cxx:2900
Mesh information computor.
Definition: SMESHGUI_MeshInfo.h:254
void compute()
Compute requested information.
Definition: SMESHGUI_MeshInfo.cxx:2336
@ GrpNbNodes
Definition: SMESHGUI_MeshInfo.h:258
@ GrpSize
Definition: SMESHGUI_MeshInfo.h:258
InfoComputor(QObject *, const SMESH::SelectionProxy &, int)
Constructor.
Definition: SMESHGUI_MeshInfo.cxx:2327
int myOperation
Definition: SMESHGUI_MeshInfo.h:270
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:269
Base info writer class.
Definition: SMESHGUI_MeshInfo.cxx:1154
Base class for elements.
Definition: SMDS_MeshElement.hxx:56
Definition: SMDS_MeshNode.hxx:36
Show additional information on selected object.
Definition: SMESHGUI_MeshInfo.h:274
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:302
QList< InfoComputor * > myComputors
Definition: SMESHGUI_MeshInfo.h:304
QList< SMESH::SelectionProxy > myGroups
Definition: SMESHGUI_MeshInfo.h:305
QList< SMESH::SelectionProxy > mySubMeshes
Definition: SMESHGUI_MeshInfo.h:306
QTreeWidget * myTree
Definition: SMESHGUI_MeshInfo.h:303
Show basic information on selected object.
Definition: SMESHGUI_MeshInfo.h:74
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:157
QMap< int, wlist > iwlist
Definition: SMESHGUI_MeshInfo.h:135
QMap< int, QWidget * > wlist
Definition: SMESHGUI_MeshInfo.h:134
@ iBiQuadratic
Definition: SMESHGUI_MeshInfo.h:130
@ iQuadratic
Definition: SMESHGUI_MeshInfo.h:129
@ iLinear
Definition: SMESHGUI_MeshInfo.h:128
@ iSingle
Definition: SMESHGUI_MeshInfo.h:126
@ iLabel
Definition: SMESHGUI_MeshInfo.h:125
iwlist myWidgets
Definition: SMESHGUI_MeshInfo.h:156
@ i0DEnd
Definition: SMESHGUI_MeshInfo.h:96
@ iStart
Definition: SMESHGUI_MeshInfo.h:79
@ iNodesEnd
Definition: SMESHGUI_MeshInfo.h:86
@ i1D
Definition: SMESHGUI_MeshInfo.h:101
@ i1DEnd
Definition: SMESHGUI_MeshInfo.h:102
@ i3DEnd
Definition: SMESHGUI_MeshInfo.h:117
@ iElementsTotal
Definition: SMESHGUI_MeshInfo.h:92
@ iBallsEnd
Definition: SMESHGUI_MeshInfo.h:99
@ iElementsTitleEnd
Definition: SMESHGUI_MeshInfo.h:90
@ i2DQuadrangles
Definition: SMESHGUI_MeshInfo.h:106
@ i3D
Definition: SMESHGUI_MeshInfo.h:110
@ i3DHexaPrisms
Definition: SMESHGUI_MeshInfo.h:115
@ iElementsTotalEnd
Definition: SMESHGUI_MeshInfo.h:93
@ i3DTetrahedrons
Definition: SMESHGUI_MeshInfo.h:111
@ i3DHexahedrons
Definition: SMESHGUI_MeshInfo.h:112
@ i2DTriangles
Definition: SMESHGUI_MeshInfo.h:105
@ iEnd
Definition: SMESHGUI_MeshInfo.h:119
@ iObjectEnd
Definition: SMESHGUI_MeshInfo.h:83
@ i0D
Definition: SMESHGUI_MeshInfo.h:95
@ iBalls
Definition: SMESHGUI_MeshInfo.h:98
@ i3DPyramids
Definition: SMESHGUI_MeshInfo.h:113
@ iNodes
Definition: SMESHGUI_MeshInfo.h:85
@ iObject
Definition: SMESHGUI_MeshInfo.h:82
@ i2D
Definition: SMESHGUI_MeshInfo.h:104
@ i2DPolygons
Definition: SMESHGUI_MeshInfo.h:107
@ i3DPolyhedrons
Definition: SMESHGUI_MeshInfo.h:116
@ i2DEnd
Definition: SMESHGUI_MeshInfo.h:108
@ iElementsTitle
Definition: SMESHGUI_MeshInfo.h:89
@ i3DPrisms
Definition: SMESHGUI_MeshInfo.h:114
Overall Mesh Quality dialog.
Definition: SMESHGUI_MeshInfo.h:413
SMESHGUI_CtrlInfo * myCtrlInfo
Definition: SMESHGUI_MeshInfo.h:434
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:433
Show quality statistics information on selected object.
Definition: SMESHGUI_MeshInfo.h:310
QToolBox * myMeshTB
Definition: SMESHGUI_MeshInfo.h:349
QList< QAbstractButton * > myButtons
Definition: SMESHGUI_MeshInfo.h:352
QwtPlot * myPlot
Definition: SMESHGUI_MeshInfo.h:350
QList< TPredicate > myPredicates
Definition: SMESHGUI_MeshInfo.h:353
SALOME::GenericObj_wrap< SMESH::NumericalFunctor > TNumFunctor
Definition: SMESHGUI_MeshInfo.h:344
TNumFunctor myAspectRatio
Definition: SMESHGUI_MeshInfo.h:354
QList< QLabel * > myWidgets
Definition: SMESHGUI_MeshInfo.h:348
ObjectType
Definition: SMESHGUI_MeshInfo.h:321
ObjectType myObjectType
Definition: SMESHGUI_MeshInfo.h:346
SALOME::GenericObj_wrap< SMESH::Predicate > TPredicate
Definition: SMESHGUI_MeshInfo.h:343
SMESHGUI_SpinBox * myToleranceWidget
Definition: SMESHGUI_MeshInfo.h:347
QwtPlot * myPlot3D
Definition: SMESHGUI_MeshInfo.h:351
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:345
Base class for the mesh element information widget.
Definition: SMESHGUI_MeshInfo.h:161
ExtraWidget * myExtra
Definition: SMESHGUI_MeshInfo.h:200
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:201
void itemInfo(int type, const QString &ids)
virtual void information(const QList< uint > &)=0
Show information on given mesh nodes / elements.
int myIndex
Definition: SMESHGUI_MeshInfo.h:204
QList< uint > myIDs
Definition: SMESHGUI_MeshInfo.h:203
QWidget * myFrame
Definition: SMESHGUI_MeshInfo.h:199
int myWhat
Definition: SMESHGUI_MeshInfo.h:202
To display in the viewer IDs of selected elements or nodes.
Definition: SMESHGUI_IdPreview.h:51
Base widget for all information panes.
Definition: SMESHGUI_MeshInfo.h:67
virtual void saveInfo(QTextStream &)=0
Centralized dialog box for the measurements.
Definition: SMESHGUI_MeshInfo.h:358
SMESH::SelectionProxy myProxy
Definition: SMESHGUI_MeshInfo.h:399
SMESHGUI_BaseInfo * myBaseInfo
Definition: SMESHGUI_MeshInfo.h:401
SMESHGUI_ElemInfo * myElemInfo
Definition: SMESHGUI_MeshInfo.h:402
@ ElemInfo
mesh element information
Definition: SMESHGUI_MeshInfo.h:368
@ BaseInfo
base mesh information
Definition: SMESHGUI_MeshInfo.h:367
@ AddInfo
additional information
Definition: SMESHGUI_MeshInfo.h:369
SMESHGUI_AddInfo * myAddInfo
Definition: SMESHGUI_MeshInfo.h:403
QTabWidget * myTabWidget
Definition: SMESHGUI_MeshInfo.h:400
QButtonGroup * myMode
Definition: SMESHGUI_MeshInfo.h:405
QCheckBox * myIDPreviewCheck
Definition: SMESHGUI_MeshInfo.h:407
SMESHGUI_CtrlInfo * myCtrlInfo
Definition: SMESHGUI_MeshInfo.h:404
@ ElemMode
Definition: SMESHGUI_MeshInfo.h:361
QLineEdit * myID
Definition: SMESHGUI_MeshInfo.h:406
SMESHGUI_IdPreview * myIDPreview
Definition: SMESHGUI_MeshInfo.h:409
GroupCombo * myGroups
Definition: SMESHGUI_MeshInfo.h:408
Show mesh element information in the simple text area.
Definition: SMESHGUI_MeshInfo.h:208
QTextBrowser * myInfo
Definition: SMESHGUI_MeshInfo.h:222
Definition: SMESHGUI_SpinBox.h:48
Item creator for tree mesh info widget.
Definition: SMESHGUI_MeshInfo.cxx:2110
Item delegate for tree mesh info widget.
Definition: SMESHGUI_MeshInfo.cxx:2077
Show mesh element information as the tree.
Definition: SMESHGUI_MeshInfo.h:226
QTreeWidget * myInfo
Definition: SMESHGUI_MeshInfo.h:250
Provide operations over the selected object.
Definition: SMESHGUI_SelectionProxy.h:117