X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=doc%2Fsalome%2Fgui%2FSMESH%2Fquality_controls.htm;h=b1dc4c472081d10f9adaef3fc8906c7b688ed0a3;hb=1366d8ffbaae7bad8dfc95a31d34967e24f371fa;hp=9b7239010b58653a77c25cfe8b0c5202ce6868e4;hpb=6a3292e0719908b1e6ba7d3994fb314fa9fba71b;p=modules%2Fsmesh.git diff --git a/doc/salome/gui/SMESH/quality_controls.htm b/doc/salome/gui/SMESH/quality_controls.htm index 9b7239010..b1dc4c472 100755 --- a/doc/salome/gui/SMESH/quality_controls.htm +++ b/doc/salome/gui/SMESH/quality_controls.htm @@ -41,43 +41,48 @@ onerror = null; - -
+ +aFilterMgr = smesh.CreateFilterManager()
-+
# Criterion : AREA > 30
--
aFunctor = aFilterMgr.CreateArea()
aPredicate = aFilterMgr.CreateMoreThan()
@@ -589,7 +592,7 @@ else aFunctor )aPredicate.SetMargin( - 30 )
+ 95 )@@ -609,44 +612,58 @@ else
-
# Criterion : FREE EDGES
+# Criterion : Free Edges
aPredicate = aFilterMgr.CreateFreeEdges()
-aFilter = aFilterMgr.CreateFilter()
+aPredicate.SetMesh( + mesh )
-aFilter.SetPredicate( - aPredicate )
+aBorders = aPredicate.GetBorders()
-+
-
anIds = aFilter.GetElementsId( - mesh )
+# create groups
+ +aGroupF = mesh.CreateGroup( + SMESH.FACE, "Faces with free edges" )
+ +aGroupN = mesh.CreateGroup( + SMESH.NODE, "Nodes on free edges" )
-
# print the result
+# fill groups with elements, + corresponding to the criterion
+ +print ""
print "Criterion: - Free edges Nb = ", len( anIds )
+ Free edges Nb = ", len( aBorders )for i in range( - len( anIds ) ):
+ len( aBorders ) ): + +aBorder + = aBorders[ i ]
print - anIds[ i ]
+ "Face # ", aBorder.myElemId, " : Edge between nodes (", -+
print + aBorder.myPnt1, ", ", aBorder.myPnt2, ")"
-# create a group
+-
aGroup = mesh.CreateGroup( - SMESH.EDGE, "Free edges" )
+aGroupF.Add( + [aBorder.myElemId] )
-aGroup.Add( anIds - )
+aGroupN.Add( + [aBorder.myPnt1, aBorder.myPnt2] )
+ +
salome.sg.updateObjBrowser(1)
@@ -1523,6 +1540,87 @@ else+
salome.sg.updateObjBrowser(1) +
+ ++ +
import SMESH
+ +import SMESH_mechanic_tetra
+ ++ +
smesh = + SMESH_mechanic_tetra.smesh
+ +mesh = + SMESH_mechanic_tetra.mesh
+ +salome = SMESH_mechanic_tetra.salome
+ ++ +
aFilterMgr = smesh.CreateFilterManager()
+ ++ +
# Criterion : VOLUME < + 7
+ ++ +
aFunctor = aFilterMgr.CreateVolume3D()
+ +aPredicate = aFilterMgr.CreateLessThan()
+ +aPredicate.SetNumFunctor( + aFunctor )
+ +aPredicate.SetMargin( + 7 )
+ ++ +
aFilter = aFilterMgr.CreateFilter()
+ +aFilter.SetPredicate( + aPredicate )
+ ++ +
anIds = aFilter.GetElementsId( + mesh )
+ ++ +
# print the result
+ +print ""
+ +print "Criterion: + Volume < 7 Nb = ", len( anIds )
+ +for i in range( + len( anIds ) ):
+ +print + anIds[ i ]
+ ++ +
# create a group
+ +aGroup = mesh.CreateGroup( + SMESH.VOLUME, "Volume < 7" )
+ +aGroup.Add( anIds + )
+ ++
salome.sg.updateObjBrowser(1)