Salome HOME
869ea8108e40298aa184cb2ced887e8d8e2d6912
[modules/smesh.git] / src / SMESH_I / smeshpy.py
1 #  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 #  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 #
6 #  This library is free software; you can redistribute it and/or
7 #  modify it under the terms of the GNU Lesser General Public
8 #  License as published by the Free Software Foundation; either
9 #  version 2.1 of the License.
10 #
11 #  This library is distributed in the hope that it will be useful,
12 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 #  Lesser General Public License for more details.
15 #
16 #  You should have received a copy of the GNU Lesser General Public
17 #  License along with this library; if not, write to the Free Software
18 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 #
20 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 #
22 #  SMESH SMESH_I : idl implementation based on 'SMESH' unit's calsses
23 #  File   : smeshpy.py
24 #  Module : SMESH
25 #
26 import salome
27 import SMESH
28
29 from SALOME_utilities import *
30
31 #=============================================================================
32
33 class smeshpy:
34     _geom = None
35     _smesh = None
36     _studyId = None
37
38     #--------------------------------------------------------------------------
39
40     def __init__(self):
41         try:
42             self._geom = salome.lcc.FindOrLoadComponent("FactoryServer","GEOM")
43             self._smesh = salome.lcc.FindOrLoadComponent("FactoryServer","SMESH")
44         except:
45             MESSAGE( "exception in smeshpy:__init__" )
46         self._study = salome.myStudy
47         self._smesh.SetCurrentStudy(self._study)
48
49     #--------------------------------------------------------------------------
50
51     def CreateMesh(self, shapeId):
52         try:
53             shape = salome.IDToObject(shapeId)
54             aMesh = self._smesh.CreateMesh(shape)
55             return aMesh
56         except:
57             MESSAGE( "exception in smeshpy:Init" )
58             return None
59
60     #--------------------------------------------------------------------------
61
62     def CreateHypothesis(self, name, libname):
63         try:
64             hyp = self._smesh.CreateHypothesis(name, libname)
65             return hyp
66         except:
67             MESSAGE( "exception in smeshpy:CreateHypothesis" )
68             return None    
69
70     #--------------------------------------------------------------------------
71
72     def Compute(self, mesh, shapeId):
73         try:
74             shape = salome.IDToObject(shapeId)
75             ret=self._smesh.Compute(mesh, shape)
76             return ret
77         except:
78             MESSAGE( "exception in smeshpy:Compute" )
79             return 0    
80
81 #=============================================================================
82 ##    #--------------------------------------------------------------------------
83
84 ##def SmeshInit(shapeId):
85 ##    import salome
86 ##    import SMESH
87 ##    geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM")
88 ##    smesh = salome.lcc.FindOrLoadComponent("FactoryServer", "SMESH")
89 ##    shape = salome.IDToObject(shapeId)
90 ##    studyId = salome.myStudyId
91 ##    MESSAGE( str(studyId) )
92 ##    aMesh = smesh.Init(geom, studyId, shape)
93 ##    return aMesh
94
95 ##    #--------------------------------------------------------------------------