1 # Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
3 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
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.
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.
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
20 # See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
22 import ATOMGEN_ORB__POA
24 class Atom(ATOMGEN_ORB__POA.Atom):
26 Atom interface implementation
28 def __init__(self, name, x, y, z):
39 Gets the name of the atom
45 Gets x coordinate of the atom
51 Gets y coordinate of the atom
57 Gets z coordinate of the atom
61 class Molecule(ATOMGEN_ORB__POA.Molecule):
63 Atomic configuration interface implementatio
65 def __init__(self, name):
75 Gets the name of the configuration
81 GEts the number of the atoms
83 return len(self.atoms)
85 def addAtom( self, atom ):
89 self.atoms.append( atom )
92 def getAtom(self, index):
94 Gets the atom by index
96 if index < 0 or index > len(self.atoms)-1:
97 raise Exception( "Bad index" )
98 return self.atoms[ index ]._this()