VTK
vtkMeshQuality.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkMeshQuality.h
5  Language: C++
6 
7  Copyright 2003-2006 Sandia Corporation.
8  Under the terms of Contract DE-AC04-94AL85000, there is a non-exclusive
9  license for use of this work by or on behalf of the
10  U.S. Government. Redistribution and use in source and binary forms, with
11  or without modification, are permitted provided that this Notice and any
12  statement of authorship are reproduced on all copies.
13 
14  Contact: dcthomp@sandia.gov,pppebay@sandia.gov
15 
16 =========================================================================*/
62 #ifndef vtkMeshQuality_h
63 #define vtkMeshQuality_h
64 
65 #include "vtkFiltersVerdictModule.h" // For export macro
66 #include "vtkDataSetAlgorithm.h"
67 
68 class vtkCell;
69 class vtkDataArray;
70 
71 #define VTK_QUALITY_EDGE_RATIO 0
72 #define VTK_QUALITY_ASPECT_RATIO 1
73 #define VTK_QUALITY_RADIUS_RATIO 2
74 #define VTK_QUALITY_ASPECT_FROBENIUS 3
75 #define VTK_QUALITY_MED_ASPECT_FROBENIUS 4
76 #define VTK_QUALITY_MAX_ASPECT_FROBENIUS 5
77 #define VTK_QUALITY_MIN_ANGLE 6
78 #define VTK_QUALITY_COLLAPSE_RATIO 7
79 #define VTK_QUALITY_MAX_ANGLE 8
80 #define VTK_QUALITY_CONDITION 9
81 #define VTK_QUALITY_SCALED_JACOBIAN 10
82 #define VTK_QUALITY_SHEAR 11
83 #define VTK_QUALITY_RELATIVE_SIZE_SQUARED 12
84 #define VTK_QUALITY_SHAPE 13
85 #define VTK_QUALITY_SHAPE_AND_SIZE 14
86 #define VTK_QUALITY_DISTORTION 15
87 #define VTK_QUALITY_MAX_EDGE_RATIO 16
88 #define VTK_QUALITY_SKEW 17
89 #define VTK_QUALITY_TAPER 18
90 #define VTK_QUALITY_VOLUME 19
91 #define VTK_QUALITY_STRETCH 20
92 #define VTK_QUALITY_DIAGONAL 21
93 #define VTK_QUALITY_DIMENSION 22
94 #define VTK_QUALITY_ODDY 23
95 #define VTK_QUALITY_SHEAR_AND_SIZE 24
96 #define VTK_QUALITY_JACOBIAN 25
97 #define VTK_QUALITY_WARPAGE 26
98 #define VTK_QUALITY_ASPECT_GAMMA 27
99 #define VTK_QUALITY_AREA 28
100 #define VTK_QUALITY_ASPECT_BETA 29
101 
102 class VTKFILTERSVERDICT_EXPORT vtkMeshQuality : public vtkDataSetAlgorithm
103 {
104 public:
105  void PrintSelf(ostream& os, vtkIndent indent) override;
107  static vtkMeshQuality* New();
108 
110 
116  vtkSetMacro(SaveCellQuality,vtkTypeBool);
117  vtkGetMacro(SaveCellQuality,vtkTypeBool);
118  vtkBooleanMacro(SaveCellQuality,vtkTypeBool);
120 
122 
130  vtkSetMacro(TriangleQualityMeasure,int);
131  vtkGetMacro(TriangleQualityMeasure,int);
133  {
134  this->SetTriangleQualityMeasure( VTK_QUALITY_AREA );
135  }
137  {
138  this->SetTriangleQualityMeasure( VTK_QUALITY_EDGE_RATIO );
139  }
141  {
142  this->SetTriangleQualityMeasure( VTK_QUALITY_ASPECT_RATIO );
143  }
145  {
146  this->SetTriangleQualityMeasure( VTK_QUALITY_RADIUS_RATIO );
147  }
149  {
150  this->SetTriangleQualityMeasure( VTK_QUALITY_ASPECT_FROBENIUS );
151  }
153  {
154  this->SetTriangleQualityMeasure( VTK_QUALITY_MIN_ANGLE );
155  }
157  {
158  this->SetTriangleQualityMeasure( VTK_QUALITY_MAX_ANGLE );
159  }
161  {
162  this->SetTriangleQualityMeasure( VTK_QUALITY_CONDITION );
163  }
165  {
166  this->SetTriangleQualityMeasure( VTK_QUALITY_SCALED_JACOBIAN );
167  }
169  {
170  this->SetTriangleQualityMeasure( VTK_QUALITY_RELATIVE_SIZE_SQUARED );
171  }
173  {
174  this->SetTriangleQualityMeasure( VTK_QUALITY_SHAPE );
175  }
177  {
178  this->SetTriangleQualityMeasure( VTK_QUALITY_SHAPE_AND_SIZE );
179  }
181  {
182  this->SetTriangleQualityMeasure( VTK_QUALITY_DISTORTION );
183  }
185 
187 
202  vtkSetMacro(QuadQualityMeasure,int);
203  vtkGetMacro(QuadQualityMeasure,int);
205  {
206  this->SetQuadQualityMeasure( VTK_QUALITY_EDGE_RATIO );
207  }
209  {
210  this->SetQuadQualityMeasure( VTK_QUALITY_ASPECT_RATIO );
211  }
213  {
214  this->SetQuadQualityMeasure( VTK_QUALITY_RADIUS_RATIO );
215  }
217  {
218  this->SetQuadQualityMeasure( VTK_QUALITY_MED_ASPECT_FROBENIUS );
219  }
221  {
222  this->SetQuadQualityMeasure( VTK_QUALITY_MAX_ASPECT_FROBENIUS );
223  }
225  {
226  this->SetQuadQualityMeasure( VTK_QUALITY_MAX_EDGE_RATIO );
227  }
229  {
230  this->SetQuadQualityMeasure( VTK_QUALITY_SKEW );
231  }
233  {
234  this->SetQuadQualityMeasure( VTK_QUALITY_TAPER );
235  }
237  {
238  this->SetQuadQualityMeasure( VTK_QUALITY_WARPAGE );
239  }
241  {
242  this->SetQuadQualityMeasure( VTK_QUALITY_AREA );
243  }
245  {
246  this->SetQuadQualityMeasure( VTK_QUALITY_STRETCH );
247  }
249  {
250  this->SetQuadQualityMeasure( VTK_QUALITY_MIN_ANGLE );
251  }
253  {
254  this->SetQuadQualityMeasure( VTK_QUALITY_MAX_ANGLE );
255  }
257  {
258  this->SetQuadQualityMeasure( VTK_QUALITY_ODDY );
259  }
261  {
262  this->SetQuadQualityMeasure( VTK_QUALITY_CONDITION );
263  }
265  {
266  this->SetQuadQualityMeasure( VTK_QUALITY_JACOBIAN );
267  }
269  {
270  this->SetQuadQualityMeasure( VTK_QUALITY_SCALED_JACOBIAN );
271  }
273  {
274  this->SetQuadQualityMeasure( VTK_QUALITY_SHEAR );
275  }
277  {
278  this->SetQuadQualityMeasure( VTK_QUALITY_SHAPE );
279  }
281  {
282  this->SetQuadQualityMeasure( VTK_QUALITY_RELATIVE_SIZE_SQUARED );
283  }
285  {
286  this->SetQuadQualityMeasure( VTK_QUALITY_SHAPE_AND_SIZE );
287  }
289  {
290  this->SetQuadQualityMeasure( VTK_QUALITY_SHEAR_AND_SIZE );
291  }
293  {
294  this->SetQuadQualityMeasure( VTK_QUALITY_DISTORTION );
295  }
297 
299 
309  vtkSetMacro(TetQualityMeasure,int);
310  vtkGetMacro(TetQualityMeasure,int);
312  {
313  this->SetTetQualityMeasure( VTK_QUALITY_EDGE_RATIO );
314  }
316  {
317  this->SetTetQualityMeasure( VTK_QUALITY_ASPECT_RATIO );
318  }
320  {
321  this->SetTetQualityMeasure( VTK_QUALITY_RADIUS_RATIO );
322  }
324  {
325  this->SetTetQualityMeasure( VTK_QUALITY_ASPECT_FROBENIUS );
326  }
328  {
329  this->SetTetQualityMeasure( VTK_QUALITY_MIN_ANGLE );
330  }
332  {
333  this->SetTetQualityMeasure( VTK_QUALITY_COLLAPSE_RATIO );
334  }
336  {
337  this->SetTetQualityMeasure( VTK_QUALITY_ASPECT_BETA );
338  }
340  {
341  this->SetTetQualityMeasure( VTK_QUALITY_ASPECT_GAMMA );
342  }
344  {
345  this->SetTetQualityMeasure( VTK_QUALITY_VOLUME );
346  }
348  {
349  this->SetTetQualityMeasure( VTK_QUALITY_CONDITION );
350  }
352  {
353  this->SetTetQualityMeasure( VTK_QUALITY_JACOBIAN );
354  }
356  {
357  this->SetTetQualityMeasure( VTK_QUALITY_SCALED_JACOBIAN );
358  }
360  {
361  this->SetTetQualityMeasure( VTK_QUALITY_SHAPE );
362  }
364  {
365  this->SetTetQualityMeasure( VTK_QUALITY_RELATIVE_SIZE_SQUARED );
366  }
368  {
369  this->SetTetQualityMeasure( VTK_QUALITY_SHAPE_AND_SIZE );
370  }
372  {
373  this->SetTetQualityMeasure( VTK_QUALITY_DISTORTION );
374  }
376 
378 
389  vtkSetMacro(HexQualityMeasure,int);
390  vtkGetMacro(HexQualityMeasure,int);
392  {
393  this->SetHexQualityMeasure( VTK_QUALITY_EDGE_RATIO );
394  }
396  {
397  this->SetHexQualityMeasure( VTK_QUALITY_MED_ASPECT_FROBENIUS );
398  }
400  {
401  this->SetHexQualityMeasure( VTK_QUALITY_MAX_ASPECT_FROBENIUS );
402  }
404  {
405  this->SetHexQualityMeasure( VTK_QUALITY_MAX_EDGE_RATIO );
406  }
408  {
409  this->SetHexQualityMeasure( VTK_QUALITY_SKEW );
410  }
412  {
413  this->SetHexQualityMeasure( VTK_QUALITY_TAPER );
414  }
416  {
417  this->SetHexQualityMeasure( VTK_QUALITY_VOLUME );
418  }
420  {
421  this->SetHexQualityMeasure( VTK_QUALITY_STRETCH );
422  }
424  {
425  this->SetHexQualityMeasure( VTK_QUALITY_DIAGONAL );
426  }
428  {
429  this->SetHexQualityMeasure( VTK_QUALITY_DIMENSION );
430  }
432  {
433  this->SetHexQualityMeasure( VTK_QUALITY_ODDY );
434  }
436  {
437  this->SetHexQualityMeasure( VTK_QUALITY_CONDITION );
438  }
440  {
441  this->SetHexQualityMeasure( VTK_QUALITY_JACOBIAN );
442  }
444  {
445  this->SetHexQualityMeasure( VTK_QUALITY_SCALED_JACOBIAN );
446  }
448  {
449  this->SetHexQualityMeasure( VTK_QUALITY_SHEAR );
450  }
452  {
453  this->SetHexQualityMeasure( VTK_QUALITY_SHAPE );
454  }
456  {
457  this->SetHexQualityMeasure( VTK_QUALITY_RELATIVE_SIZE_SQUARED );
458  }
460  {
461  this->SetHexQualityMeasure( VTK_QUALITY_SHAPE_AND_SIZE );
462  }
464  {
465  this->SetHexQualityMeasure( VTK_QUALITY_SHEAR_AND_SIZE );
466  }
468  {
469  this->SetHexQualityMeasure( VTK_QUALITY_DISTORTION );
470  }
472 
479  static double TriangleArea( vtkCell* cell );
480 
491  static double TriangleEdgeRatio( vtkCell* cell );
492 
503  static double TriangleAspectRatio( vtkCell* cell );
504 
515  static double TriangleRadiusRatio( vtkCell* cell );
516 
529  static double TriangleAspectFrobenius( vtkCell* cell );
530 
538  static double TriangleMinAngle( vtkCell* cell );
539 
547  static double TriangleMaxAngle( vtkCell* cell );
548 
556  static double TriangleCondition( vtkCell* cell );
557 
564  static double TriangleScaledJacobian( vtkCell* cell );
565 
572  static double TriangleRelativeSizeSquared( vtkCell* cell );
573 
580  static double TriangleShape( vtkCell* cell );
581 
588  static double TriangleShapeAndSize( vtkCell* cell );
589 
596  static double TriangleDistortion( vtkCell* cell );
597 
608  static double QuadEdgeRatio( vtkCell* cell );
609 
621  static double QuadAspectRatio( vtkCell* cell );
622 
637  static double QuadRadiusRatio( vtkCell* cell );
638 
652  static double QuadMedAspectFrobenius( vtkCell* cell );
653 
667  static double QuadMaxAspectFrobenius( vtkCell* cell );
668 
676  static double QuadMinAngle( vtkCell* cell );
677 
678  static double QuadMaxEdgeRatios( vtkCell* cell );
679  static double QuadSkew( vtkCell* cell );
680  static double QuadTaper( vtkCell* cell );
681  static double QuadWarpage( vtkCell* cell );
682  static double QuadArea( vtkCell* cell );
683  static double QuadStretch( vtkCell* cell );
684  static double QuadMaxAngle( vtkCell* cell );
685  static double QuadOddy( vtkCell* cell );
686  static double QuadCondition( vtkCell* cell );
687  static double QuadJacobian( vtkCell* cell );
688  static double QuadScaledJacobian( vtkCell* cell );
689  static double QuadShear( vtkCell* cell );
690  static double QuadShape( vtkCell* cell );
691  static double QuadRelativeSizeSquared( vtkCell* cell );
692  static double QuadShapeAndSize( vtkCell* cell );
693  static double QuadShearAndSize( vtkCell* cell );
694  static double QuadDistortion( vtkCell* cell );
695 
706  static double TetEdgeRatio( vtkCell* cell );
707 
718  static double TetAspectRatio( vtkCell* cell );
719 
730  static double TetRadiusRatio( vtkCell* cell );
731 
745  static double TetAspectFrobenius( vtkCell* cell );
746 
754  static double TetMinAngle( vtkCell* cell );
755 
757 
766  static double TetCollapseRatio( vtkCell* cell );
767  static double TetAspectBeta( vtkCell* cell );
768  static double TetAspectGamma( vtkCell* cell );
769  static double TetVolume( vtkCell* cell );
770  static double TetCondition( vtkCell* cell );
771  static double TetJacobian( vtkCell* cell );
772  static double TetScaledJacobian( vtkCell* cell );
773  static double TetShape( vtkCell* cell );
774  static double TetRelativeSizeSquared( vtkCell* cell );
775  static double TetShapeandSize( vtkCell* cell );
776  static double TetDistortion( vtkCell* cell );
778 
789  static double HexEdgeRatio( vtkCell* cell );
790 
799  static double HexMedAspectFrobenius( vtkCell* cell );
800 
802 
810  static double HexMaxAspectFrobenius( vtkCell* cell );
811  static double HexMaxEdgeRatio( vtkCell* cell );
812  static double HexSkew( vtkCell* cell );
813  static double HexTaper( vtkCell* cell );
814  static double HexVolume( vtkCell* cell );
815  static double HexStretch( vtkCell* cell );
816  static double HexDiagonal( vtkCell* cell );
817  static double HexDimension( vtkCell* cell );
818  static double HexOddy( vtkCell* cell );
819  static double HexCondition( vtkCell* cell );
820  static double HexJacobian( vtkCell* cell );
821  static double HexScaledJacobian( vtkCell* cell );
822  static double HexShear( vtkCell* cell );
823  static double HexShape( vtkCell* cell );
824  static double HexRelativeSizeSquared( vtkCell* cell );
825  static double HexShapeAndSize( vtkCell* cell );
826  static double HexShearAndSize( vtkCell* cell );
827  static double HexDistortion( vtkCell* cell );
829 
840  virtual void SetRatio( vtkTypeBool r ) { this->SetSaveCellQuality( r ); }
841  vtkTypeBool GetRatio() { return this->GetSaveCellQuality(); }
842  vtkBooleanMacro(Ratio,vtkTypeBool);
843 
845 
862  virtual void SetVolume( vtkTypeBool cv )
863  {
864  if ( ! ((cv != 0) ^ (this->Volume != 0)) )
865  {
866  return;
867  }
868  this->Modified();
869  this->Volume = cv;
870  if ( this->Volume )
871  {
872  this->CompatibilityModeOn();
873  }
874  }
876  {
877  return this->Volume;
878  }
879  vtkBooleanMacro(Volume,vtkTypeBool);
881 
883 
911  {
912  if ( !((cm != 0) ^ (this->CompatibilityMode != 0)) )
913  {
914  return;
915  }
916  this->CompatibilityMode = cm;
917  this->Modified();
918  if ( this->CompatibilityMode )
919  {
920  this->Volume = 1;
921  this->TetQualityMeasure = VTK_QUALITY_RADIUS_RATIO;
922  }
923  }
924  vtkGetMacro(CompatibilityMode,vtkTypeBool);
925  vtkBooleanMacro(CompatibilityMode,vtkTypeBool);
927 
928 protected:
929  vtkMeshQuality();
930  ~vtkMeshQuality() override;
931 
933 
937  static int GetCurrentTriangleNormal( double point[3], double normal[3] );
938 
944 
947 
949  static double CurrentTriNormal[3];
950 
951 private:
952  vtkMeshQuality( const vtkMeshQuality& ) = delete;
953  void operator = ( const vtkMeshQuality& ) = delete;
954 };
955 
956 #endif // vtkMeshQuality_h
#define VTK_QUALITY_SHEAR
void SetQuadQualityMeasureToEdgeRatio()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetQuadQualityMeasureToWarpage()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetQuadQualityMeasureToRelativeSizeSquared()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
#define VTK_QUALITY_DIMENSION
void SetHexQualityMeasureToMedAspectFrobenius()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetTetQualityMeasureToMinAngle()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetHexQualityMeasureToRelativeSizeSquared()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetQuadQualityMeasureToRadiusRatio()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetTriangleQualityMeasureToAspectFrobenius()
Set/Get the particular estimator used to function the quality of triangles.
void SetTriangleQualityMeasureToArea()
Set/Get the particular estimator used to function the quality of triangles.
void SetTriangleQualityMeasureToAspectRatio()
Set/Get the particular estimator used to function the quality of triangles.
#define VTK_QUALITY_STRETCH
#define VTK_QUALITY_ASPECT_RATIO
void SetHexQualityMeasureToScaledJacobian()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetTetQualityMeasureToScaledJacobian()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetTetQualityMeasureToEdgeRatio()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetHexQualityMeasureToVolume()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetQuadQualityMeasureToOddy()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
Store vtkAlgorithm input/output information.
void SetHexQualityMeasureToShapeAndSize()
Set/Get the particular estimator used to measure the quality of hexahedra.
#define VTK_QUALITY_ASPECT_BETA
virtual void SetVolume(vtkTypeBool cv)
These methods are deprecated.
void SetQuadQualityMeasureToMaxAngle()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetHexQualityMeasureToEdgeRatio()
Set/Get the particular estimator used to measure the quality of hexahedra.
#define VTK_QUALITY_JACOBIAN
void SetTetQualityMeasureToRelativeSizeSquared()
Set/Get the particular estimator used to measure the quality of tetrahedra.
#define VTK_QUALITY_EDGE_RATIO
void SetTetQualityMeasureToCondition()
Set/Get the particular estimator used to measure the quality of tetrahedra.
#define VTK_QUALITY_SHEAR_AND_SIZE
void SetTetQualityMeasureToShapeAndSize()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetTriangleQualityMeasureToDistortion()
Set/Get the particular estimator used to function the quality of triangles.
void SetTriangleQualityMeasureToCondition()
Set/Get the particular estimator used to function the quality of triangles.
void SetQuadQualityMeasureToMinAngle()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetQuadQualityMeasureToMedAspectFrobenius()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
#define VTK_QUALITY_ODDY
void SetQuadQualityMeasureToShearAndSize()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
#define VTK_QUALITY_RADIUS_RATIO
void SetQuadQualityMeasureToMaxEdgeRatios()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetHexQualityMeasureToSkew()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetQuadQualityMeasureToMaxAspectFrobenius()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
vtkTypeBool Volume
void SetTriangleQualityMeasureToShape()
Set/Get the particular estimator used to function the quality of triangles.
void SetQuadQualityMeasureToAspectRatio()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetTriangleQualityMeasureToScaledJacobian()
Set/Get the particular estimator used to function the quality of triangles.
#define VTK_QUALITY_VOLUME
#define VTK_QUALITY_RELATIVE_SIZE_SQUARED
#define VTK_QUALITY_MIN_ANGLE
void SetTetQualityMeasureToJacobian()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetTetQualityMeasureToDistortion()
Set/Get the particular estimator used to measure the quality of tetrahedra.
#define VTK_QUALITY_DIAGONAL
void SetQuadQualityMeasureToScaledJacobian()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetQuadQualityMeasureToJacobian()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
#define VTK_QUALITY_WARPAGE
int vtkTypeBool
Definition: vtkABI.h:69
#define VTK_QUALITY_SKEW
vtkTypeBool SaveCellQuality
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetHexQualityMeasureToDiagonal()
Set/Get the particular estimator used to measure the quality of hexahedra.
abstract class to specify cell behavior
Definition: vtkCell.h:56
void SetQuadQualityMeasureToStretch()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetTriangleQualityMeasureToRadiusRatio()
Set/Get the particular estimator used to function the quality of triangles.
void SetTriangleQualityMeasureToEdgeRatio()
Set/Get the particular estimator used to function the quality of triangles.
void SetTetQualityMeasureToCollapseRatio()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetTetQualityMeasureToAspectBeta()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetTetQualityMeasureToAspectFrobenius()
Set/Get the particular estimator used to measure the quality of tetrahedra.
#define VTK_QUALITY_MAX_ASPECT_FROBENIUS
void SetHexQualityMeasureToDistortion()
Set/Get the particular estimator used to measure the quality of hexahedra.
a simple class to control print indentation
Definition: vtkIndent.h:33
void SetHexQualityMeasureToJacobian()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetTetQualityMeasureToVolume()
Set/Get the particular estimator used to measure the quality of tetrahedra.
vtkTypeBool GetVolume()
These methods are deprecated.
#define VTK_QUALITY_SHAPE_AND_SIZE
void SetHexQualityMeasureToMaxEdgeRatios()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetHexQualityMeasureToMaxAspectFrobenius()
Set/Get the particular estimator used to measure the quality of hexahedra.
#define VTK_QUALITY_AREA
void SetTriangleQualityMeasureToMinAngle()
Set/Get the particular estimator used to function the quality of triangles.
#define VTK_QUALITY_TAPER
void SetTetQualityMeasureToRadiusRatio()
Set/Get the particular estimator used to measure the quality of tetrahedra.
void SetQuadQualityMeasureToShapeAndSize()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:48
void SetQuadQualityMeasureToShear()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
void SetTriangleQualityMeasureToRelativeSizeSquared()
Set/Get the particular estimator used to function the quality of triangles.
#define VTK_QUALITY_MAX_ANGLE
virtual void Modified()
Update the modification time for this object.
#define VTK_QUALITY_COLLAPSE_RATIO
void SetQuadQualityMeasureToArea()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetHexQualityMeasureToStretch()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetTriangleQualityMeasureToShapeAndSize()
Set/Get the particular estimator used to function the quality of triangles.
#define VTK_QUALITY_MED_ASPECT_FROBENIUS
void SetHexQualityMeasureToShearAndSize()
Set/Get the particular estimator used to measure the quality of hexahedra.
virtual void SetRatio(vtkTypeBool r)
These methods are deprecated.
void SetHexQualityMeasureToTaper()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetHexQualityMeasureToShear()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetHexQualityMeasureToShape()
Set/Get the particular estimator used to measure the quality of hexahedra.
virtual void SetCompatibilityMode(vtkTypeBool cm)
CompatibilityMode governs whether, when both a quality function and cell volume are to be stored as c...
void SetQuadQualityMeasureToDistortion()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
vtkTypeBool GetRatio()
void SetHexQualityMeasureToOddy()
Set/Get the particular estimator used to measure the quality of hexahedra.
void SetQuadQualityMeasureToSkew()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetTetQualityMeasureToAspectRatio()
Set/Get the particular estimator used to measure the quality of tetrahedra.
#define VTK_QUALITY_ASPECT_GAMMA
void SetQuadQualityMeasureToShape()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
#define VTK_QUALITY_CONDITION
void SetTriangleQualityMeasureToMaxAngle()
Set/Get the particular estimator used to function the quality of triangles.
#define VTK_QUALITY_DISTORTION
Store zero or more vtkInformation instances.
vtkDataArray * CellNormals
void SetTetQualityMeasureToAspectGamma()
Set/Get the particular estimator used to measure the quality of tetrahedra.
Calculate functions of quality of the elements of a mesh.
#define VTK_QUALITY_SHAPE
Superclass for algorithms that produce output of the same type as input.
void SetHexQualityMeasureToDimension()
Set/Get the particular estimator used to measure the quality of hexahedra.
vtkTypeBool CompatibilityMode
#define VTK_QUALITY_MAX_EDGE_RATIO
void SetQuadQualityMeasureToTaper()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetTetQualityMeasureToShape()
Set/Get the particular estimator used to measure the quality of tetrahedra.
static vtkDataSetAlgorithm * New()
#define VTK_QUALITY_ASPECT_FROBENIUS
#define VTK_QUALITY_SCALED_JACOBIAN
void SetQuadQualityMeasureToCondition()
Set/Get the particular estimator used to measure the quality of quadrilaterals.
void SetHexQualityMeasureToCondition()
Set/Get the particular estimator used to measure the quality of hexahedra.