Salome HOME
ajustement parametres autotests
[modules/hydro.git] / doc / salome / examples / h009_normalCaseManual.py
index be5f67de59bc7404b5b4097e75f8583f604c4862..3650dd8c7998e81d821934cdbf9d7d15f5a87ffe 100644 (file)
@@ -9,27 +9,13 @@ import salome
 salome.salome_init()
 theStudy = salome.myStudy
 
+#----------------------
+# --- HYDRO
+#----------------------
+
 from HYDROPy import *
-from PyQt4.QtCore import *
-from PyQt4.QtGui import *
-
-# -------------------------------------
-
-def controlGeomProps(geomShape, refLength, refArea):
-  props = geompy.BasicProperties(geomShape)
-  print " Wires length: ", props[0]
-  print " Surface area: ", props[1]
-  print " Volume      : ", props[2]
-  deltaLength = 2.0*abs((props[0] - refLength)/(props[0] + refLength))
-  deltaArea   = 2.0*abs((props[1] - refArea)/(props[1] + refArea))
-  if deltaLength > 1e-7 or deltaArea > 1e-7 or props[2] != 0:
-    print "While must be:"
-    print " Wires length: ", refLength
-    print " Surface area: ", refArea
-    print " Volume      : ", 0.
-    raise ValueError("Bad length or area") 
-
-# -------------------------------------
+from PyQt5.QtCore import *
+from PyQt5.QtGui import *
 
 hydro_doc = HYDROData_Document.Document( theStudy._get_StudyId() )
 
@@ -41,7 +27,8 @@ garonne_ign_01.SetName( "garonne_ign_01" )
 garonne_ign_01.SetZLevel( 0 )
 
 
-garonne_ign_01.LoadImage(os.path.join(HYDRO_SAMPLES, "garonne_ign_01.png" ))
+if not(garonne_ign_01.LoadImage(os.path.join(HYDRO_SAMPLES, "garonne_ign_01.png" ))):
+  raise ValueError('problem while loading image')
 
 garonne_ign_01.SetLocalPoints( QPoint( 40, 817 ),
                                QPoint( 1325, 85 ) )
@@ -58,7 +45,8 @@ garonne_ign_02.SetName( "garonne_ign_02" )
 garonne_ign_02.SetZLevel( 1 )
 
 
-garonne_ign_02.LoadImage( os.path.join(HYDRO_SAMPLES, "garonne_ign_02.png" ))
+if not(garonne_ign_02.LoadImage( os.path.join(HYDRO_SAMPLES, "garonne_ign_02.png" ))):
+  raise ValueError('problem while loading image')
 
 garonne_ign_02.SetLocalPoints( QPoint( 1389, 447 ),
                                QPoint( 784, 481 ) )
@@ -211,7 +199,8 @@ Cloud_02 = hydro_doc.CreateObject( KIND_BATHYMETRY )
 Cloud_02.SetName( "Cloud_02" )
 
 Cloud_02.SetAltitudesInverted( 0 )
-Cloud_02.ImportFromFile( os.path.join(HYDRO_SAMPLES, "Cloud_02.xyz" ))
+if not(Cloud_02.ImportFromFile( os.path.join(HYDRO_SAMPLES, "Cloud_02.xyz" ))):
+  raise ValueError('problem while loading bathymetry')
 
 Cloud_02.Update()
 
@@ -220,7 +209,8 @@ garonne_point_L93 = hydro_doc.CreateObject( KIND_BATHYMETRY )
 garonne_point_L93.SetName( "garonne_point_L93" )
 
 garonne_point_L93.SetAltitudesInverted( 0 )
-garonne_point_L93.ImportFromFile( os.path.join(HYDRO_SAMPLES, "garonne_point_L93.xyz" ))
+if not(garonne_point_L93.ImportFromFile( os.path.join(HYDRO_SAMPLES, "garonne_point_L93.xyz" ))):
+  raise ValueError('problem while loading bathymetry')
 
 garonne_point_L93.Update()
 
@@ -267,7 +257,6 @@ garonne_1 = hydro_doc.CreateObject( KIND_CALCULATION )
 garonne_1.SetName( "garonne_1" )
 
 garonne_1.SetAssignmentMode( HYDROData_CalculationCase.MANUAL )
-garonne_1.SetAssignmentLandCoverMode( HYDROData_CalculationCase.AUTOMATIC )
 garonne_1.AddGeometryObject( litMineur )
 garonne_1.AddGeometryObject( domaineEtendu )
 garonne_1.AddGeometryObject( litMajeur )
@@ -279,36 +268,57 @@ garonne_1.AddGeometryGroup( case_geom_group )
 case_geom_group = litMajeur.GetGroup( 0 )
 garonne_1.AddGeometryGroup( case_geom_group )
 garonne_1.SetBoundaryPolyline( domaine )
+#garonne_1.SetStricklerTable( Strickler_table_1 )
 
 # Start the algorithm of the partition and assignment
 garonne_1.Update()
 garonne_1_litMineur = hydro_doc.FindObjectByName( "garonne_1_Reg_1" )
 garonne_1_Zone_1 = hydro_doc.FindObjectByName( "garonne_1_Zone_1" )
 garonne_1_Zone_1.SetMergeType( HYDROData_Zone.Merge_ZMIN )
+garonne_1_Zone_1.SetColor( QColor( 192, 113, 64 ))
 garonne_1_litMineur.AddZone( garonne_1_Zone_1 )
+
 garonne_1_riveDroite = hydro_doc.FindObjectByName( "garonne_1_Reg_2" )
 garonne_1_Zone_2 = hydro_doc.FindObjectByName( "garonne_1_Zone_2" )
+garonne_1_Zone_2.SetColor( QColor( 141, 192, 64 ))
 garonne_1_riveDroite.AddZone( garonne_1_Zone_2 )
+
 garonne_1_Zone_3 = hydro_doc.FindObjectByName( "garonne_1_Zone_3" )
+garonne_1_Zone_3.SetMergeType( HYDROData_Zone.Merge_Object )
+Cloud_02 = hydro_doc.FindObjectByName( "Cloud_02" )
+garonne_1_Zone_3.SetMergeObject( Cloud_02 )
+garonne_1_Zone_3.SetColor( QColor( 64, 192, 77 ))
 garonne_1_riveDroite.AddZone( garonne_1_Zone_3 )
+
 garonne_1_riveGauche = hydro_doc.FindObjectByName( "garonne_1_Reg_3" )
 garonne_1_Zone_4 = hydro_doc.FindObjectByName( "garonne_1_Zone_4" )
+garonne_1_Zone_4.SetMergeType( HYDROData_Zone.Merge_Object )
+Cloud_02 = hydro_doc.FindObjectByName( "Cloud_02" )
+garonne_1_Zone_4.SetMergeObject( Cloud_02 )
+garonne_1_Zone_4.SetColor( QColor( 64, 75, 192 ))
 garonne_1_riveGauche.AddZone( garonne_1_Zone_4 )
+
 garonne_1_Zone_5 = hydro_doc.FindObjectByName( "garonne_1_Zone_5" )
+garonne_1_Zone_5.SetColor( QColor( 64, 192, 77 ))
 garonne_1_riveGauche.AddZone( garonne_1_Zone_5 )
 
-garonne_1_litMineur.SetName("garonne_1_litMineur")
-garonne_1_riveDroite.SetName("garonne_1_riveDroite")
-garonne_1_riveGauche.SetName("garonne_1_riveGauche")
+garonne_1_litMineur.SetName( "garonne_1_litMineur" )
+garonne_1_riveDroite.SetName( "garonne_1_riveDroite" )
+garonne_1_riveGauche.SetName( "garonne_1_riveGauche" )
 
 # Export of the calculation case
 garonne_1_entry = garonne_1.Export( theStudy._get_StudyId() )
 
+#----------------------
+# --- Geometry
+#----------------------
+
 # Get geometry shape and print debug information
 import GEOM
 from salome.geom import geomBuilder
 import math
 import SALOMEDS
+from salome.hydrotools.controls import controlGeomProps
 
 geompy = geomBuilder.New(theStudy)
 
@@ -318,22 +328,10 @@ print "Geom shape:", HYDRO_garonne_1
 print "Geom shape name:", HYDRO_garonne_1.GetName()
 
 [riveGauche,litMineur,riveDroite] = geompy.ExtractShapes(HYDRO_garonne_1, geompy.ShapeType["FACE"], True)
-# --- groups already created at HYDRO export
-#garonne_1_lit_mineur_Outer = geompy.CreateGroup(HYDRO_garonne_1, geompy.ShapeType["EDGE"])
-#geompy.UnionIDs(garonne_1_lit_mineur_Outer, [7, 4, 11])
-#garonne_1_domaineEtendu_Outer = geompy.CreateGroup(HYDRO_garonne_1, geompy.ShapeType["EDGE"])
-#geompy.UnionIDs(garonne_1_domaineEtendu_Outer, [13, 9, 25, 16, 19, 21, 23, 27, 28, 31, 33, 41, 39, 37, 35])
-# --- publication already done at HYDRO export
-#geompy.addToStudy( HYDRO_garonne_1, 'HYDRO_garonne_1' )
-#geompy.addToStudyInFather( HYDRO_garonne_1, garonne_1_lit_mineur_Outer, 'garonne_1_lit_mineur_Outer' )
-#geompy.addToStudyInFather( HYDRO_garonne_1, garonne_1_domaineEtendu_Outer, 'garonne_1_domaineEtendu_Outer' )
-geompy.addToStudyInFather( HYDRO_garonne_1, riveGauche, 'riveGauche' )
-geompy.addToStudyInFather( HYDRO_garonne_1, litMineur, 'litMineur' )
-geompy.addToStudyInFather( HYDRO_garonne_1, riveDroite, 'riveDroite' )
-
-controlGeomProps(riveGauche,  29149.36918,  35992556.454929)
-controlGeomProps(litMineur,   30337.548492,  3646827.749809)
-controlGeomProps(riveDroite,  32012.343241, 26177085.460092)
+
+controlGeomProps(geompy, riveGauche,  29149.36918,  35948828.352061)
+controlGeomProps(geompy, litMineur,   30337.548492,  3488480.304388)
+controlGeomProps(geompy, riveDroite,  32012.343241, 25998769.23615)
 
 if salome.sg.hasDesktop():
   salome.sg.updateObjBrowser(1)