1 # -*- coding: iso-8859-1 -*-
2 # Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
4 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
5 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
7 # This library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License.
12 # This library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # Lesser General Public License for more details.
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this library; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
25 BASE = os.environ["MED_ROOT_DIR"]
26 BASE = os.path.join( BASE, 'share', 'salome', 'resources', 'med' )
28 fileName = os.path.join( BASE, 'pointe.med' )
29 fileName = os.path.join( BASE, 'carre_en_quad4_seg2.med' )
30 fileName = os.path.join( BASE, 'test_hydro_darcy1a_out.med' )
32 # MED Mesh read from a (local) file
34 from libMEDMEM_Swig import *
38 mdDriver = MED_MED_RDONLY_DRIVER(fileName, md)
41 mdDriver.readFileStruct()
44 mLocal = md.getMesh(md.getMeshName(0))
47 # MED Mesh recieved from a distant component (via CORBA)
49 from omniORB import CORBA
50 from LifeCycleCORBA import *
51 #CCRTfrom libSALOME_Swig import *
53 orb = CORBA.ORB_init([''], CORBA.ORB_ID)
54 lcc = LifeCycleCORBA(orb)
56 C = lcc.FindOrLoadComponent("FactoryServerPy", "Compo1Py")
57 C.Initialise(fileName)
59 mDistant = C.Calcul1()
61 # Compare local and distant copies
65 if (len(x) != len(y)):
68 for i in xrange(len(x)):
69 s = s + abs(x[i] - y[i]);
73 if (len(x) != len(y)):
75 for i in xrange(len(x)):
80 print "Name : ", mDistant.getName()
81 if (mLocal.getName() != mDistant.getName()):
82 raise RuntimeError, "MESH::getName()"
84 print "SpaceDimension : ", mDistant.getSpaceDimension()
85 if (mLocal.getSpaceDimension() != mDistant.getSpaceDimension()):
86 raise RuntimeError, "MESH::getSpaceDimension()"
88 print "MeshDimension : ", mDistant.getMeshDimension()
89 if (mLocal.getMeshDimension() != mDistant.getMeshDimension()):
90 raise RuntimeError, "MESH::getMeshDimension()"
92 print "CoordinatesSystem : ", mDistant.getCoordinatesSystem()
93 if (mLocal.getCoordinatesSystem() != mDistant.getCoordinatesSystem()):
94 raise RuntimeError, "MESH::getCoordinatesSystem()"
96 print "NumberOfNodes : ", mDistant.getNumberOfNodes()
97 if (mLocal.getNumberOfNodes() != mDistant.getNumberOfNodes()):
98 raise RuntimeError, "MESH::getNumberOfNodes()"
102 print "All tests passed"