Ignore:
Timestamp:
13/03/12 13:32:01 (10 years ago)
Author:
mnagni
Message:

This new DB library adds better hash algorithm and a bug fix for the classes eq method

Location:
mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema
Files:
100 edited

Legend:

Unmodified
Added
Removed
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/directposition.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:06 
     24Created on 13-Mar-2012 11:08:13 
    2525 
    2626@author: mnagni 
     
    4040    def __init__(self): 
    4141 
     42        self._CRS_sc_compoundcrs = None 
    4243        self._CRS_sc_singlecrs = None 
    43         self._CRS_sc_compoundcrs = None 
    4444        self.dimension = None 
    4545        self.coordinate = [] 
     
    4848    @property 
    4949    def CRS(self):       
     50        if(has_value(self._CRS_sc_compoundcrs)): 
     51            return self._CRS_sc_compoundcrs 
    5052        if(has_value(self._CRS_sc_singlecrs)): 
    5153            return self._CRS_sc_singlecrs 
    52         if(has_value(self._CRS_sc_compoundcrs)): 
    53             return self._CRS_sc_compoundcrs 
    5454        return  None 
    5555 
     
    5757    def CRS(self, value):        
    5858        valueClass = "%s.%s" % (type(value).__module__,type(value).__name__) 
     59        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_reference_systems.sc_compoundcrs.SC_CompoundCRS": 
     60            self._CRS_sc_compoundcrs = value 
     61            self._CRS_sc_singlecrs = None 
    5962        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_reference_systems.sc_singlecrs.SC_SingleCRS": 
    6063            self._CRS_sc_singlecrs = value 
    6164            self._CRS_sc_compoundcrs = None 
    62         if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_reference_systems.sc_compoundcrs.SC_CompoundCRS": 
    63             self._CRS_sc_compoundcrs = value 
    64             self._CRS_sc_singlecrs = None 
    6565 
    6666    def __key(self): 
     
    6868 
    6969    def __eq__(self, y): 
     70        if type(self) != type(y): 
     71            return False 
    7072        ''' 
    7173        Cannot compare classes which do not define a "__key" attribute  
     
    7678 
    7779    def __hash__(self): 
    78         return hash(self.__key()) 
     80        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_affineplacement.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:06 
     24Created on 13-Mar-2012 11:08:14 
    2525 
    2626@author: mnagni 
     
    4848 
    4949    def __eq__(self, y): 
     50        if type(self) != type(y): 
     51            return False 
    5052        ''' 
    5153        Cannot compare classes which do not define a "__key" attribute  
     
    5658 
    5759    def __hash__(self): 
    58         return hash(self.__key()) 
     60        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_arc.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstring import  GM_ArcString  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:12 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_arcstring = GM_ArcString()      
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    5252 
    5353    @property 
     54    def curve(self):     
     55        return self._gm_arcstring.curve 
     56 
     57    @curve.setter 
     58    def curve(self, value):      
     59            self._gm_arcstring.curve = value 
     60 
     61    @property 
    5462    def numDerivativesAtEnd(self):       
    5563        return self._gm_arcstring.numDerivativesAtEnd 
     
    5866    def numDerivativesAtEnd(self, value):        
    5967            self._gm_arcstring.numDerivativesAtEnd = value 
    60  
    61     @property 
    62     def curve(self):     
    63         return self._gm_arcstring.curve 
    64  
    65     @curve.setter 
    66     def curve(self, value):      
    67             self._gm_arcstring.curve = value 
    6868 
    6969    @property 
     
    108108 
    109109    def __key(self): 
    110         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc, self.controlPoints) 
     110        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc, self.controlPoints) 
    111111 
    112112    def __eq__(self, y): 
     113        if type(self) != type(y): 
     114            return False 
    113115        ''' 
    114116        Cannot compare classes which do not define a "__key" attribute  
     
    119121 
    120122    def __hash__(self): 
    121         return hash(self.__key()) 
     123        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_arcbybulge.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstringbybulge import  GM_ArcStringByBulge  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:12 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_arcstringbybulge = GM_ArcStringByBulge()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.normal = [] 
    4747        self.interpolation = None 
     
    5353 
    5454    @property 
     55    def curve(self):     
     56        return self._gm_arcstringbybulge.curve 
     57 
     58    @curve.setter 
     59    def curve(self, value):      
     60            self._gm_arcstringbybulge.curve = value 
     61 
     62    @property 
    5563    def numDerivativesAtEnd(self):       
    5664        return self._gm_arcstringbybulge.numDerivativesAtEnd 
     
    5967    def numDerivativesAtEnd(self, value):        
    6068            self._gm_arcstringbybulge.numDerivativesAtEnd = value 
    61  
    62     @property 
    63     def curve(self):     
    64         return self._gm_arcstringbybulge.curve 
    65  
    66     @curve.setter 
    67     def curve(self, value):      
    68             self._gm_arcstringbybulge.curve = value 
    6969 
    7070    @property 
     
    117117 
    118118    def __key(self): 
    119         return (self.numDerivativesAtEnd, self.curve, self.normal, self.interpolation, self.bulge, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc) 
     119        return (self.curve, self.numDerivativesAtEnd, self.normal, self.interpolation, self.bulge, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc) 
    120120 
    121121    def __eq__(self, y): 
     122        if type(self) != type(y): 
     123            return False 
    122124        ''' 
    123125        Cannot compare classes which do not define a "__key" attribute  
     
    128130 
    129131    def __hash__(self): 
    130         return hash(self.__key()) 
     132        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_arcstring.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_curvesegment = GM_CurveSegment()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    5252 
    5353    @property 
     54    def curve(self):     
     55        return self._gm_curvesegment.curve 
     56 
     57    @curve.setter 
     58    def curve(self, value):      
     59            self._gm_curvesegment.curve = value 
     60 
     61    @property 
    5462    def numDerivativesAtEnd(self):       
    5563        return self._gm_curvesegment.numDerivativesAtEnd 
     
    5866    def numDerivativesAtEnd(self, value):        
    5967            self._gm_curvesegment.numDerivativesAtEnd = value 
    60  
    61     @property 
    62     def curve(self):     
    63         return self._gm_curvesegment.curve 
    64  
    65     @curve.setter 
    66     def curve(self, value):      
    67             self._gm_curvesegment.curve = value 
    6868 
    6969    @property 
     
    9292 
    9393    def __key(self): 
    94         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc, self.controlPoints) 
     94        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc, self.controlPoints) 
    9595 
    9696    def __eq__(self, y): 
     97        if type(self) != type(y): 
     98            return False 
    9799        ''' 
    98100        Cannot compare classes which do not define a "__key" attribute  
     
    103105 
    104106    def __hash__(self): 
    105         return hash(self.__key()) 
     107        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_arcstringbybulge.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:08 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_curvesegment = GM_CurveSegment()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.normal = [] 
    4747        self.interpolation = None 
     
    5353 
    5454    @property 
     55    def curve(self):     
     56        return self._gm_curvesegment.curve 
     57 
     58    @curve.setter 
     59    def curve(self, value):      
     60            self._gm_curvesegment.curve = value 
     61 
     62    @property 
    5563    def numDerivativesAtEnd(self):       
    5664        return self._gm_curvesegment.numDerivativesAtEnd 
     
    5967    def numDerivativesAtEnd(self, value):        
    6068            self._gm_curvesegment.numDerivativesAtEnd = value 
    61  
    62     @property 
    63     def curve(self):     
    64         return self._gm_curvesegment.curve 
    65  
    66     @curve.setter 
    67     def curve(self, value):      
    68             self._gm_curvesegment.curve = value 
    6969 
    7070    @property 
     
    9393 
    9494    def __key(self): 
    95         return (self.numDerivativesAtEnd, self.curve, self.normal, self.interpolation, self.bulge, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc) 
     95        return (self.curve, self.numDerivativesAtEnd, self.normal, self.interpolation, self.bulge, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc) 
    9696 
    9797    def __eq__(self, y): 
     98        if type(self) != type(y): 
     99            return False 
    98100        ''' 
    99101        Cannot compare classes which do not define a "__key" attribute  
     
    104106 
    105107    def __hash__(self): 
    106         return hash(self.__key()) 
     108        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_bezier.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_bsplinecurve import  GM_BSplineCurve  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:09 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.curveForm = None 
     45        self.curve = None 
    4546        self.numDerivativesAtEnd = None 
    46         self.curve = None 
    4747        self.knot = [] 
    4848        self.interpolation = None 
     
    6464 
    6565    @property 
     66    def curve(self):     
     67        return self._gm_bsplinecurve.curve 
     68 
     69    @curve.setter 
     70    def curve(self, value):      
     71            self._gm_bsplinecurve.curve = value 
     72 
     73    @property 
    6674    def numDerivativesAtEnd(self):       
    6775        return self._gm_bsplinecurve.numDerivativesAtEnd 
     
    7078    def numDerivativesAtEnd(self, value):        
    7179            self._gm_bsplinecurve.numDerivativesAtEnd = value 
    72  
    73     @property 
    74     def curve(self):     
    75         return self._gm_bsplinecurve.curve 
    76  
    77     @curve.setter 
    78     def curve(self, value):      
    79             self._gm_bsplinecurve.curve = value 
    8080 
    8181    @property 
     
    144144 
    145145    def __key(self): 
    146         return (self.curveForm, self.numDerivativesAtEnd, self.curve, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.numDerivativeInterior, self.isPolynomial, self.controlPoints, self.knotSpec) 
     146        return (self.curveForm, self.curve, self.numDerivativesAtEnd, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.numDerivativeInterior, self.isPolynomial, self.controlPoints, self.knotSpec) 
    147147 
    148148    def __eq__(self, y): 
     149        if type(self) != type(y): 
     150            return False 
    149151        ''' 
    150152        Cannot compare classes which do not define a "__key" attribute  
     
    155157 
    156158    def __hash__(self): 
    157         return hash(self.__key()) 
     159        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_bicubicgrid.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_griddedsurface import  GM_GriddedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:06 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    124124 
    125125    def __eq__(self, y): 
     126        if type(self) != type(y): 
     127            return False 
    126128        ''' 
    127129        Cannot compare classes which do not define a "__key" attribute  
     
    132134 
    133135    def __hash__(self): 
    134         return hash(self.__key()) 
     136        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_bilineargrid.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_griddedsurface import  GM_GriddedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:10 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    120120 
    121121    def __eq__(self, y): 
     122        if type(self) != type(y): 
     123            return False 
    122124        ''' 
    123125        Cannot compare classes which do not define a "__key" attribute  
     
    128130 
    129131    def __hash__(self): 
    130         return hash(self.__key()) 
     132        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_bsplinecurve.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_splinecurve import  GM_SplineCurve  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:12 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.curveForm = None 
     45        self.curve = None 
    4546        self.numDerivativesAtEnd = None 
    46         self.curve = None 
    4747        self.knot = [] 
    4848        self.interpolation = None 
     
    5656 
    5757    @property 
     58    def curve(self):     
     59        return self._gm_splinecurve.curve 
     60 
     61    @curve.setter 
     62    def curve(self, value):      
     63            self._gm_splinecurve.curve = value 
     64 
     65    @property 
    5866    def numDerivativesAtEnd(self):       
    5967        return self._gm_splinecurve.numDerivativesAtEnd 
     
    6270    def numDerivativesAtEnd(self, value):        
    6371            self._gm_splinecurve.numDerivativesAtEnd = value 
    64  
    65     @property 
    66     def curve(self):     
    67         return self._gm_splinecurve.curve 
    68  
    69     @curve.setter 
    70     def curve(self, value):      
    71             self._gm_splinecurve.curve = value 
    7272 
    7373    @property 
     
    120120 
    121121    def __key(self): 
    122         return (self.curveForm, self.numDerivativesAtEnd, self.curve, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.numDerivativeInterior, self.isPolynomial, self.controlPoints, self.knotSpec) 
     122        return (self.curveForm, self.curve, self.numDerivativesAtEnd, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.numDerivativeInterior, self.isPolynomial, self.controlPoints, self.knotSpec) 
    123123 
    124124    def __eq__(self, y): 
     125        if type(self) != type(y): 
     126            return False 
    125127        ''' 
    126128        Cannot compare classes which do not define a "__key" attribute  
     
    131133 
    132134    def __hash__(self): 
    133         return hash(self.__key()) 
     135        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_bsplinesurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_griddedsurface import  GM_GriddedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:06 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    125125 
    126126    def __eq__(self, y): 
     127        if type(self) != type(y): 
     128            return False 
    127129        ''' 
    128130        Cannot compare classes which do not define a "__key" attribute  
     
    133135 
    134136    def __hash__(self): 
    135         return hash(self.__key()) 
     137        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_bsplinesurfaceform.py

    r8091 r8160  
    2020 
    2121from ascore.ascodelist import  ASCodeList  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    3535        This class has been genererated automatically using the Apache Velocity project. 
    3636    ''' 
    37     cl_unspecified = "unspecified"  
    38     cl_cylindrical = "cylindrical"  
    39     cl_planar = "planar"  
    4037    cl_conical = "conical"  
    4138    cl_spherical = "spherical"  
    4239    cl_toroidal = "toroidal"  
     40    cl_planar = "planar"  
     41    cl_unspecified = "unspecified"  
     42    cl_cylindrical = "cylindrical"  
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_circle.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arc import  GM_Arc  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:14 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_arc = GM_Arc()          
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    5252 
    5353    @property 
     54    def curve(self):     
     55        return self._gm_arc.curve 
     56 
     57    @curve.setter 
     58    def curve(self, value):      
     59            self._gm_arc.curve = value 
     60 
     61    @property 
    5462    def numDerivativesAtEnd(self):       
    5563        return self._gm_arc.numDerivativesAtEnd 
     
    5866    def numDerivativesAtEnd(self, value):        
    5967            self._gm_arc.numDerivativesAtEnd = value 
    60  
    61     @property 
    62     def curve(self):     
    63         return self._gm_arc.curve 
    64  
    65     @curve.setter 
    66     def curve(self, value):      
    67             self._gm_arc.curve = value 
    6868 
    6969    @property 
     
    108108 
    109109    def __key(self): 
    110         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc, self.controlPoints) 
     110        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.numArc, self.controlPoints) 
    111111 
    112112    def __eq__(self, y): 
     113        if type(self) != type(y): 
     114            return False 
    113115        ''' 
    114116        Cannot compare classes which do not define a "__key" attribute  
     
    119121 
    120122    def __hash__(self): 
    121         return hash(self.__key()) 
     123        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_clothoid.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:06 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4444        self.startParameter = None 
    4545        self.endParameter = None 
     46        self.curve = None 
    4647        self.numDerivativesAtEnd = None 
    47         self.curve = None 
    4848        self.interpolation = None 
    4949        self.numDerivativesAtStart = None 
     
    5454 
    5555    @property 
     56    def curve(self):     
     57        return self._gm_curvesegment.curve 
     58 
     59    @curve.setter 
     60    def curve(self, value):      
     61            self._gm_curvesegment.curve = value 
     62 
     63    @property 
    5664    def numDerivativesAtEnd(self):       
    5765        return self._gm_curvesegment.numDerivativesAtEnd 
     
    6068    def numDerivativesAtEnd(self, value):        
    6169            self._gm_curvesegment.numDerivativesAtEnd = value 
    62  
    63     @property 
    64     def curve(self):     
    65         return self._gm_curvesegment.curve 
    66  
    67     @curve.setter 
    68     def curve(self, value):      
    69             self._gm_curvesegment.curve = value 
    7070 
    7171    @property 
     
    9494 
    9595    def __key(self): 
    96         return (self.startParameter, self.endParameter, self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.refLocation, self.scaleFactor) 
     96        return (self.startParameter, self.endParameter, self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.refLocation, self.scaleFactor) 
    9797 
    9898    def __eq__(self, y): 
     99        if type(self) != type(y): 
     100            return False 
    99101        ''' 
    100102        Cannot compare classes which do not define a "__key" attribute  
     
    105107 
    106108    def __hash__(self): 
    107         return hash(self.__key()) 
     109        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_cone.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_griddedsurface import  GM_GriddedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:03 
     25Created on 13-Mar-2012 11:08:08 
    2626 
    2727@author: mnagni 
     
    120120 
    121121    def __eq__(self, y): 
     122        if type(self) != type(y): 
     123            return False 
    122124        ''' 
    123125        Cannot compare classes which do not define a "__key" attribute  
     
    128130 
    129131    def __hash__(self): 
    130         return hash(self.__key()) 
     132        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_conic.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:04 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.startConstrParam = None 
     45        self.curve = None 
    4546        self.numDerivativesAtEnd = None 
    46         self.curve = None 
    4747        self.interpolation = None 
    4848        self.numDerivativesAtStart = None 
     
    5656 
    5757    @property 
     58    def curve(self):     
     59        return self._gm_curvesegment.curve 
     60 
     61    @curve.setter 
     62    def curve(self, value):      
     63            self._gm_curvesegment.curve = value 
     64 
     65    @property 
    5866    def numDerivativesAtEnd(self):       
    5967        return self._gm_curvesegment.numDerivativesAtEnd 
     
    6270    def numDerivativesAtEnd(self, value):        
    6371            self._gm_curvesegment.numDerivativesAtEnd = value 
    64  
    65     @property 
    66     def curve(self):     
    67         return self._gm_curvesegment.curve 
    68  
    69     @curve.setter 
    70     def curve(self, value):      
    71             self._gm_curvesegment.curve = value 
    7272 
    7373    @property 
     
    9696 
    9797    def __key(self): 
    98         return (self.startConstrParam, self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.endConstrParam, self.numDerivativeInterior, self.shifted, self.position, self.semiLatusRectum, self.eccentricity) 
     98        return (self.startConstrParam, self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.endConstrParam, self.numDerivativeInterior, self.shifted, self.position, self.semiLatusRectum, self.eccentricity) 
    9999 
    100100    def __eq__(self, y): 
     101        if type(self) != type(y): 
     102            return False 
    101103        ''' 
    102104        Cannot compare classes which do not define a "__key" attribute  
     
    107109 
    108110    def __hash__(self): 
    109         return hash(self.__key()) 
     111        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_cubicspline.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_polynomialspline import  GM_PolynomialSpline  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_polynomialspline = GM_PolynomialSpline()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.knot = [] 
    4747        self.interpolation = None 
     
    5555 
    5656    @property 
     57    def curve(self):     
     58        return self._gm_polynomialspline.curve 
     59 
     60    @curve.setter 
     61    def curve(self, value):      
     62            self._gm_polynomialspline.curve = value 
     63 
     64    @property 
    5765    def numDerivativesAtEnd(self):       
    5866        return self._gm_polynomialspline.numDerivativesAtEnd 
     
    6169    def numDerivativesAtEnd(self, value):        
    6270            self._gm_polynomialspline.numDerivativesAtEnd = value 
    63  
    64     @property 
    65     def curve(self):     
    66         return self._gm_polynomialspline.curve 
    67  
    68     @curve.setter 
    69     def curve(self, value):      
    70             self._gm_polynomialspline.curve = value 
    7171 
    7272    @property 
     
    135135 
    136136    def __key(self): 
    137         return (self.numDerivativesAtEnd, self.curve, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.vectorAtEnd, self.vectorAtStart, self.numDerivativeInterior, self.controlPoints) 
     137        return (self.curve, self.numDerivativesAtEnd, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.vectorAtEnd, self.vectorAtStart, self.numDerivativeInterior, self.controlPoints) 
    138138 
    139139    def __eq__(self, y): 
     140        if type(self) != type(y): 
     141            return False 
    140142        ''' 
    141143        Cannot compare classes which do not define a "__key" attribute  
     
    146148 
    147149    def __hash__(self): 
    148         return hash(self.__key()) 
     150        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_cylinder.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_griddedsurface import  GM_GriddedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:08 
    2626 
    2727@author: mnagni 
     
    120120 
    121121    def __eq__(self, y): 
     122        if type(self) != type(y): 
     123            return False 
    122124        ''' 
    123125        Cannot compare classes which do not define a "__key" attribute  
     
    128130 
    129131    def __hash__(self): 
    130         return hash(self.__key()) 
     132        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_envelope.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:06 
     24Created on 13-Mar-2012 11:08:13 
    2525 
    2626@author: mnagni 
     
    4848 
    4949    def __eq__(self, y): 
     50        if type(self) != type(y): 
     51            return False 
    5052        ''' 
    5153        Cannot compare classes which do not define a "__key" attribute  
     
    5658 
    5759    def __hash__(self): 
    58         return hash(self.__key()) 
     60        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_genericcurve.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:08 
     24Created on 13-Mar-2012 11:08:10 
    2525 
    2626@author: mnagni 
     
    4646 
    4747    def __eq__(self, y): 
     48        if type(self) != type(y): 
     49            return False 
    4850        ''' 
    4951        Cannot compare classes which do not define a "__key" attribute  
     
    5456 
    5557    def __hash__(self): 
    56         return hash(self.__key()) 
     58        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_genericsurface.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:10 
     24Created on 13-Mar-2012 11:08:09 
    2525 
    2626@author: mnagni 
     
    4646 
    4747    def __eq__(self, y): 
     48        if type(self) != type(y): 
     49            return False 
    4850        ''' 
    4951        Cannot compare classes which do not define a "__key" attribute  
     
    5456 
    5557    def __hash__(self): 
    56         return hash(self.__key()) 
     58        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_geodesic.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_geodesicstring import  GM_GeodesicString  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:05 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_geodesicstring = GM_GeodesicString()    
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    4949        self.controlPoint = None 
    5050        super(GM_Geodesic, self).__init__() 
     51 
     52    @property 
     53    def curve(self):     
     54        return self._gm_geodesicstring.curve 
     55 
     56    @curve.setter 
     57    def curve(self, value):      
     58            self._gm_geodesicstring.curve = value 
    5159 
    5260    @property 
     
    5765    def numDerivativesAtEnd(self, value):        
    5866            self._gm_geodesicstring.numDerivativesAtEnd = value 
    59  
    60     @property 
    61     def curve(self):     
    62         return self._gm_geodesicstring.curve 
    63  
    64     @curve.setter 
    65     def curve(self, value):      
    66             self._gm_geodesicstring.curve = value 
    6767 
    6868    @property 
     
    9999 
    100100    def __key(self): 
    101         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
     101        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
    102102 
    103103    def __eq__(self, y): 
     104        if type(self) != type(y): 
     105            return False 
    104106        ''' 
    105107        Cannot compare classes which do not define a "__key" attribute  
     
    110112 
    111113    def __hash__(self): 
    112         return hash(self.__key()) 
     114        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_geodesicstring.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_curvesegment = GM_CurveSegment()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    4949        self.controlPoint = None 
    5050        super(GM_GeodesicString, self).__init__() 
     51 
     52    @property 
     53    def curve(self):     
     54        return self._gm_curvesegment.curve 
     55 
     56    @curve.setter 
     57    def curve(self, value):      
     58            self._gm_curvesegment.curve = value 
    5159 
    5260    @property 
     
    5765    def numDerivativesAtEnd(self, value):        
    5866            self._gm_curvesegment.numDerivativesAtEnd = value 
    59  
    60     @property 
    61     def curve(self):     
    62         return self._gm_curvesegment.curve 
    63  
    64     @curve.setter 
    65     def curve(self, value):      
    66             self._gm_curvesegment.curve = value 
    6767 
    6868    @property 
     
    9191 
    9292    def __key(self): 
    93         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
     93        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
    9494 
    9595    def __eq__(self, y): 
     96        if type(self) != type(y): 
     97            return False 
    9698        ''' 
    9799        Cannot compare classes which do not define a "__key" attribute  
     
    102104 
    103105    def __hash__(self): 
    104         return hash(self.__key()) 
     106        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_griddedsurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_parametriccurvesurface import  GM_ParametricCurveSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:06 
     25Created on 13-Mar-2012 11:08:03 
    2626 
    2727@author: mnagni 
     
    9696 
    9797    def __eq__(self, y): 
     98        if type(self) != type(y): 
     99            return False 
    98100        ''' 
    99101        Cannot compare classes which do not define a "__key" attribute  
     
    104106 
    105107    def __hash__(self): 
    106         return hash(self.__key()) 
     108        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_knot.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:08 
     24Created on 13-Mar-2012 11:08:06 
    2525 
    2626@author: mnagni 
     
    4949 
    5050    def __eq__(self, y): 
     51        if type(self) != type(y): 
     52            return False 
    5153        ''' 
    5254        Cannot compare classes which do not define a "__key" attribute  
     
    5759 
    5860    def __hash__(self): 
    59         return hash(self.__key()) 
     61        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_knottype.py

    r8091 r8160  
    2020 
    2121from ascore.ascodelist import  ASCodeList  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:14 
    2626 
    2727@author: mnagni 
     
    3535        This class has been genererated automatically using the Apache Velocity project. 
    3636    ''' 
     37    cl_uniform = "uniform"  
    3738    cl_quasiuniform = "quasiUniform"  
    3839    cl_piecewisebezier = "piecewiseBezier"  
    39     cl_uniform = "uniform"  
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_linesegment.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_linestring import  GM_LineString  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_linestring = GM_LineString()    
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    4949        self.controlPoint = None 
    5050        super(GM_LineSegment, self).__init__() 
     51 
     52    @property 
     53    def curve(self):     
     54        return self._gm_linestring.curve 
     55 
     56    @curve.setter 
     57    def curve(self, value):      
     58            self._gm_linestring.curve = value 
    5159 
    5260    @property 
     
    5765    def numDerivativesAtEnd(self, value):        
    5866            self._gm_linestring.numDerivativesAtEnd = value 
    59  
    60     @property 
    61     def curve(self):     
    62         return self._gm_linestring.curve 
    63  
    64     @curve.setter 
    65     def curve(self, value):      
    66             self._gm_linestring.curve = value 
    6767 
    6868    @property 
     
    9999 
    100100    def __key(self): 
    101         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
     101        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
    102102 
    103103    def __eq__(self, y): 
     104        if type(self) != type(y): 
     105            return False 
    104106        ''' 
    105107        Cannot compare classes which do not define a "__key" attribute  
     
    110112 
    111113    def __hash__(self): 
    112         return hash(self.__key()) 
     114        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_linestring.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:11 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_curvesegment = GM_CurveSegment()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.interpolation = None 
    4747        self.numDerivativesAtStart = None 
     
    4949        self.controlPoint = None 
    5050        super(GM_LineString, self).__init__() 
     51 
     52    @property 
     53    def curve(self):     
     54        return self._gm_curvesegment.curve 
     55 
     56    @curve.setter 
     57    def curve(self, value):      
     58            self._gm_curvesegment.curve = value 
    5159 
    5260    @property 
     
    5765    def numDerivativesAtEnd(self, value):        
    5866            self._gm_curvesegment.numDerivativesAtEnd = value 
    59  
    60     @property 
    61     def curve(self):     
    62         return self._gm_curvesegment.curve 
    63  
    64     @curve.setter 
    65     def curve(self, value):      
    66             self._gm_curvesegment.curve = value 
    6767 
    6868    @property 
     
    9191 
    9292    def __key(self): 
    93         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
     93        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior, self.controlPoint) 
    9494 
    9595    def __eq__(self, y): 
     96        if type(self) != type(y): 
     97            return False 
    9698        ''' 
    9799        Cannot compare classes which do not define a "__key" attribute  
     
    102104 
    103105    def __hash__(self): 
    104         return hash(self.__key()) 
     106        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_offsetcurve.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:06 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_curvesegment = GM_CurveSegment()        
    4343 
     44        self.refDirection = None 
     45        self._baseCurve_gm_arcstring = None 
     46        self._baseCurve_gm_linestring = None 
     47        self._baseCurve_gm_geodesicstring = None 
    4448        self._baseCurve_gm_splinecurve = None 
     49        self._baseCurve_gm_arcstringbybulge = None 
     50        self._baseCurve_gm_conic = None 
     51        self._baseCurve_gm_clothoid = None 
    4552        self._baseCurve_gm_offsetcurve = None 
    46         self._baseCurve_gm_arcstring = None 
    47         self._baseCurve_gm_conic = None 
    48         self._baseCurve_gm_geodesicstring = None 
    49         self._baseCurve_gm_linestring = None 
    50         self._baseCurve_gm_arcstringbybulge = None 
    51         self._baseCurve_gm_clothoid = None 
    52         self.refDirection = None 
     53        self.curve = None 
    5354        self.numDerivativesAtEnd = None 
    54         self.curve = None 
    5555        self.distance = None 
    5656        self.interpolation = None 
     
    6161    @property 
    6262    def baseCurve(self):         
     63        if(has_value(self._baseCurve_gm_arcstring)): 
     64            return self._baseCurve_gm_arcstring 
     65        if(has_value(self._baseCurve_gm_linestring)): 
     66            return self._baseCurve_gm_linestring 
     67        if(has_value(self._baseCurve_gm_geodesicstring)): 
     68            return self._baseCurve_gm_geodesicstring 
    6369        if(has_value(self._baseCurve_gm_splinecurve)): 
    6470            return self._baseCurve_gm_splinecurve 
     71        if(has_value(self._baseCurve_gm_arcstringbybulge)): 
     72            return self._baseCurve_gm_arcstringbybulge 
     73        if(has_value(self._baseCurve_gm_conic)): 
     74            return self._baseCurve_gm_conic 
     75        if(has_value(self._baseCurve_gm_clothoid)): 
     76            return self._baseCurve_gm_clothoid 
    6577        if(has_value(self._baseCurve_gm_offsetcurve)): 
    6678            return self._baseCurve_gm_offsetcurve 
    67         if(has_value(self._baseCurve_gm_arcstring)): 
    68             return self._baseCurve_gm_arcstring 
    69         if(has_value(self._baseCurve_gm_conic)): 
    70             return self._baseCurve_gm_conic 
    71         if(has_value(self._baseCurve_gm_geodesicstring)): 
    72             return self._baseCurve_gm_geodesicstring 
    73         if(has_value(self._baseCurve_gm_linestring)): 
    74             return self._baseCurve_gm_linestring 
    75         if(has_value(self._baseCurve_gm_arcstringbybulge)): 
    76             return self._baseCurve_gm_arcstringbybulge 
    77         if(has_value(self._baseCurve_gm_clothoid)): 
    78             return self._baseCurve_gm_clothoid 
    7979        return  None 
    8080 
     
    8282    def baseCurve(self, value):  
    8383        valueClass = "%s.%s" % (type(value).__module__,type(value).__name__) 
     84        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstring.GM_ArcString": 
     85            self._baseCurve_gm_arcstring = value 
     86            self._baseCurve_gm_linestring = None 
     87            self._baseCurve_gm_geodesicstring = None 
     88            self._baseCurve_gm_splinecurve = None 
     89            self._baseCurve_gm_arcstringbybulge = None 
     90            self._baseCurve_gm_conic = None 
     91            self._baseCurve_gm_clothoid = None 
     92            self._baseCurve_gm_offsetcurve = None 
     93        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_linestring.GM_LineString": 
     94            self._baseCurve_gm_linestring = value 
     95            self._baseCurve_gm_arcstring = None 
     96            self._baseCurve_gm_geodesicstring = None 
     97            self._baseCurve_gm_splinecurve = None 
     98            self._baseCurve_gm_arcstringbybulge = None 
     99            self._baseCurve_gm_conic = None 
     100            self._baseCurve_gm_clothoid = None 
     101            self._baseCurve_gm_offsetcurve = None 
     102        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_geodesicstring.GM_GeodesicString": 
     103            self._baseCurve_gm_geodesicstring = value 
     104            self._baseCurve_gm_arcstring = None 
     105            self._baseCurve_gm_linestring = None 
     106            self._baseCurve_gm_splinecurve = None 
     107            self._baseCurve_gm_arcstringbybulge = None 
     108            self._baseCurve_gm_conic = None 
     109            self._baseCurve_gm_clothoid = None 
     110            self._baseCurve_gm_offsetcurve = None 
    84111        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_splinecurve.GM_SplineCurve": 
    85112            self._baseCurve_gm_splinecurve = value 
    86             self._baseCurve_gm_offsetcurve = None 
    87             self._baseCurve_gm_arcstring = None 
    88             self._baseCurve_gm_conic = None 
    89             self._baseCurve_gm_geodesicstring = None 
    90             self._baseCurve_gm_linestring = None 
    91             self._baseCurve_gm_arcstringbybulge = None 
    92             self._baseCurve_gm_clothoid = None 
     113            self._baseCurve_gm_arcstring = None 
     114            self._baseCurve_gm_linestring = None 
     115            self._baseCurve_gm_geodesicstring = None 
     116            self._baseCurve_gm_arcstringbybulge = None 
     117            self._baseCurve_gm_conic = None 
     118            self._baseCurve_gm_clothoid = None 
     119            self._baseCurve_gm_offsetcurve = None 
     120        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstringbybulge.GM_ArcStringByBulge": 
     121            self._baseCurve_gm_arcstringbybulge = value 
     122            self._baseCurve_gm_arcstring = None 
     123            self._baseCurve_gm_linestring = None 
     124            self._baseCurve_gm_geodesicstring = None 
     125            self._baseCurve_gm_splinecurve = None 
     126            self._baseCurve_gm_conic = None 
     127            self._baseCurve_gm_clothoid = None 
     128            self._baseCurve_gm_offsetcurve = None 
     129        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_conic.GM_Conic": 
     130            self._baseCurve_gm_conic = value 
     131            self._baseCurve_gm_arcstring = None 
     132            self._baseCurve_gm_linestring = None 
     133            self._baseCurve_gm_geodesicstring = None 
     134            self._baseCurve_gm_splinecurve = None 
     135            self._baseCurve_gm_arcstringbybulge = None 
     136            self._baseCurve_gm_clothoid = None 
     137            self._baseCurve_gm_offsetcurve = None 
     138        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_clothoid.GM_Clothoid": 
     139            self._baseCurve_gm_clothoid = value 
     140            self._baseCurve_gm_arcstring = None 
     141            self._baseCurve_gm_linestring = None 
     142            self._baseCurve_gm_geodesicstring = None 
     143            self._baseCurve_gm_splinecurve = None 
     144            self._baseCurve_gm_arcstringbybulge = None 
     145            self._baseCurve_gm_conic = None 
     146            self._baseCurve_gm_offsetcurve = None 
    93147        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_offsetcurve.GM_OffsetCurve": 
    94148            self._baseCurve_gm_offsetcurve = value 
    95             self._baseCurve_gm_splinecurve = None 
    96             self._baseCurve_gm_arcstring = None 
    97             self._baseCurve_gm_conic = None 
    98             self._baseCurve_gm_geodesicstring = None 
    99             self._baseCurve_gm_linestring = None 
    100             self._baseCurve_gm_arcstringbybulge = None 
    101             self._baseCurve_gm_clothoid = None 
    102         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstring.GM_ArcString": 
    103             self._baseCurve_gm_arcstring = value 
    104             self._baseCurve_gm_splinecurve = None 
    105             self._baseCurve_gm_offsetcurve = None 
    106             self._baseCurve_gm_conic = None 
    107             self._baseCurve_gm_geodesicstring = None 
    108             self._baseCurve_gm_linestring = None 
    109             self._baseCurve_gm_arcstringbybulge = None 
    110             self._baseCurve_gm_clothoid = None 
    111         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_conic.GM_Conic": 
    112             self._baseCurve_gm_conic = value 
    113             self._baseCurve_gm_splinecurve = None 
    114             self._baseCurve_gm_offsetcurve = None 
    115             self._baseCurve_gm_arcstring = None 
    116             self._baseCurve_gm_geodesicstring = None 
    117             self._baseCurve_gm_linestring = None 
    118             self._baseCurve_gm_arcstringbybulge = None 
    119             self._baseCurve_gm_clothoid = None 
    120         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_geodesicstring.GM_GeodesicString": 
    121             self._baseCurve_gm_geodesicstring = value 
    122             self._baseCurve_gm_splinecurve = None 
    123             self._baseCurve_gm_offsetcurve = None 
    124             self._baseCurve_gm_arcstring = None 
    125             self._baseCurve_gm_conic = None 
    126             self._baseCurve_gm_linestring = None 
    127             self._baseCurve_gm_arcstringbybulge = None 
    128             self._baseCurve_gm_clothoid = None 
    129         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_linestring.GM_LineString": 
    130             self._baseCurve_gm_linestring = value 
    131             self._baseCurve_gm_splinecurve = None 
    132             self._baseCurve_gm_offsetcurve = None 
    133             self._baseCurve_gm_arcstring = None 
    134             self._baseCurve_gm_conic = None 
    135             self._baseCurve_gm_geodesicstring = None 
    136             self._baseCurve_gm_arcstringbybulge = None 
    137             self._baseCurve_gm_clothoid = None 
    138         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstringbybulge.GM_ArcStringByBulge": 
    139             self._baseCurve_gm_arcstringbybulge = value 
    140             self._baseCurve_gm_splinecurve = None 
    141             self._baseCurve_gm_offsetcurve = None 
    142             self._baseCurve_gm_arcstring = None 
    143             self._baseCurve_gm_conic = None 
    144             self._baseCurve_gm_geodesicstring = None 
    145             self._baseCurve_gm_linestring = None 
    146             self._baseCurve_gm_clothoid = None 
    147         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_clothoid.GM_Clothoid": 
    148             self._baseCurve_gm_clothoid = value 
    149             self._baseCurve_gm_splinecurve = None 
    150             self._baseCurve_gm_offsetcurve = None 
    151             self._baseCurve_gm_arcstring = None 
    152             self._baseCurve_gm_conic = None 
    153             self._baseCurve_gm_geodesicstring = None 
    154             self._baseCurve_gm_linestring = None 
    155             self._baseCurve_gm_arcstringbybulge = None 
     149            self._baseCurve_gm_arcstring = None 
     150            self._baseCurve_gm_linestring = None 
     151            self._baseCurve_gm_geodesicstring = None 
     152            self._baseCurve_gm_splinecurve = None 
     153            self._baseCurve_gm_arcstringbybulge = None 
     154            self._baseCurve_gm_conic = None 
     155            self._baseCurve_gm_clothoid = None 
     156 
     157    @property 
     158    def curve(self):     
     159        return self._gm_curvesegment.curve 
     160 
     161    @curve.setter 
     162    def curve(self, value):      
     163            self._gm_curvesegment.curve = value 
    156164 
    157165    @property 
     
    164172 
    165173    @property 
    166     def curve(self):     
    167         return self._gm_curvesegment.curve 
    168  
    169     @curve.setter 
    170     def curve(self, value):      
    171             self._gm_curvesegment.curve = value 
    172  
    173     @property 
    174174    def interpolation(self):     
    175175        return self._gm_curvesegment.interpolation 
     
    196196 
    197197    def __key(self): 
    198         return (self.baseCurve, self.refDirection, self.numDerivativesAtEnd, self.curve, self.distance, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior) 
     198        return (self.refDirection, self.baseCurve, self.curve, self.numDerivativesAtEnd, self.distance, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior) 
    199199 
    200200    def __eq__(self, y): 
     201        if type(self) != type(y): 
     202            return False 
    201203        ''' 
    202204        Cannot compare classes which do not define a "__key" attribute  
     
    207209 
    208210    def __hash__(self): 
    209         return hash(self.__key()) 
     211        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_parametriccurvesurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_surfacepatch import  GM_SurfacePatch  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:04 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    7777 
    7878    def __eq__(self, y): 
     79        if type(self) != type(y): 
     80            return False 
    7981        ''' 
    8082        Cannot compare classes which do not define a "__key" attribute  
     
    8587 
    8688    def __hash__(self): 
    87         return hash(self.__key()) 
     89        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_placement.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:05 
     24Created on 13-Mar-2012 11:08:11 
    2525 
    2626@author: mnagni 
     
    4646 
    4747    def __eq__(self, y): 
     48        if type(self) != type(y): 
     49            return False 
    4850        ''' 
    4951        Cannot compare classes which do not define a "__key" attribute  
     
    5456 
    5557    def __hash__(self): 
    56         return hash(self.__key()) 
     58        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_pointarray.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:11 
     24Created on 13-Mar-2012 11:08:09 
    2525 
    2626@author: mnagni 
     
    4747 
    4848    def __eq__(self, y): 
     49        if type(self) != type(y): 
     50            return False 
    4951        ''' 
    5052        Cannot compare classes which do not define a "__key" attribute  
     
    5557 
    5658    def __hash__(self): 
    57         return hash(self.__key()) 
     59        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_pointgrid.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:08 
     24Created on 13-Mar-2012 11:08:08 
    2525 
    2626@author: mnagni 
     
    4747 
    4848    def __eq__(self, y): 
     49        if type(self) != type(y): 
     50            return False 
    4951        ''' 
    5052        Cannot compare classes which do not define a "__key" attribute  
     
    5557 
    5658    def __hash__(self): 
    57         return hash(self.__key()) 
     59        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_pointref.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:10 
     24Created on 13-Mar-2012 11:08:13 
    2525 
    2626@author: mnagni 
     
    4747 
    4848    def __eq__(self, y): 
     49        if type(self) != type(y): 
     50            return False 
    4951        ''' 
    5052        Cannot compare classes which do not define a "__key" attribute  
     
    5557 
    5658    def __hash__(self): 
    57         return hash(self.__key()) 
     59        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_polygon.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_surfacepatch import  GM_SurfacePatch  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:06 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    6969 
    7070    def __eq__(self, y): 
     71        if type(self) != type(y): 
     72            return False 
    7173        ''' 
    7274        Cannot compare classes which do not define a "__key" attribute  
     
    7779 
    7880    def __hash__(self): 
    79         return hash(self.__key()) 
     81        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_polyhedralsurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_surface import  GM_Surface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:00 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
    5656        self.composite = [] 
     57        self._CRS_sc_compoundcrs = None 
    5758        self._CRS_sc_singlecrs = None 
    58         self._CRS_sc_compoundcrs = None 
    5959        self.orientation = None 
     60        self._patch_gm_parametriccurvesurface = [] 
    6061        self._patch_gm_polygon = [] 
    61         self._patch_gm_parametriccurvesurface = [] 
    6262        self.patch = [] 
    6363        self._proxy_gm_orientablesurface = None 
    6464        self._proxy_gm_orientablecurve = None 
    65         self._containingPrimitive_gm_orientableprimitive = [] 
    6665        self._containingPrimitive_gm_point = [] 
    6766        self._containingPrimitive_gm_solid = [] 
     67        self._containingPrimitive_gm_orientableprimitive = [] 
    6868        self.complex = [] 
    69         self._primitive_gm_orientableprimitive = None 
    7069        self._primitive_gm_point = None 
    7170        self._primitive_gm_solid = None 
     71        self._primitive_gm_orientableprimitive = None 
    7272        super(GM_PolyhedralSurface, self).__init__() 
    7373 
     
    8787    def containedPrimitive(self, value):         
    8888            self._gm_surface.containedPrimitive = value 
    89  
    90     @property 
    91     def composite(self):         
    92         return self._gm_surface.composite 
    93  
    94     @composite.setter 
    95     def composite(self, value):  
    96             self._gm_surface.composite = value 
    9789 
    9890    @property 
     
    164156 
    165157    def __eq__(self, y): 
     158        if type(self) != type(y): 
     159            return False 
    166160        ''' 
    167161        Cannot compare classes which do not define a "__key" attribute  
     
    172166 
    173167    def __hash__(self): 
    174         return hash(self.__key()) 
     168        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_polynomialspline.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_splinecurve import  GM_SplineCurve  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_splinecurve = GM_SplineCurve()          
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.knot = [] 
    4747        self.interpolation = None 
     
    5555 
    5656    @property 
     57    def curve(self):     
     58        return self._gm_splinecurve.curve 
     59 
     60    @curve.setter 
     61    def curve(self, value):      
     62            self._gm_splinecurve.curve = value 
     63 
     64    @property 
    5765    def numDerivativesAtEnd(self):       
    5866        return self._gm_splinecurve.numDerivativesAtEnd 
     
    6169    def numDerivativesAtEnd(self, value):        
    6270            self._gm_splinecurve.numDerivativesAtEnd = value 
    63  
    64     @property 
    65     def curve(self):     
    66         return self._gm_splinecurve.curve 
    67  
    68     @curve.setter 
    69     def curve(self, value):      
    70             self._gm_splinecurve.curve = value 
    7171 
    7272    @property 
     
    119119 
    120120    def __key(self): 
    121         return (self.numDerivativesAtEnd, self.curve, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.vectorAtEnd, self.vectorAtStart, self.numDerivativeInterior, self.controlPoints) 
     121        return (self.curve, self.numDerivativesAtEnd, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.vectorAtEnd, self.vectorAtStart, self.numDerivativeInterior, self.controlPoints) 
    122122 
    123123    def __eq__(self, y): 
     124        if type(self) != type(y): 
     125            return False 
    124126        ''' 
    125127        Cannot compare classes which do not define a "__key" attribute  
     
    130132 
    131133    def __hash__(self): 
    132         return hash(self.__key()) 
     134        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_position.py

    r8091 r8160  
    2222from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.directposition import  DirectPosition  
    2323from ascore.asunion import  ASUnion  
    24 from ascore.utils import has_value 
     24from ascore.utils import has_value, collectionProofHash 
    2525 
    2626''' 
    27 Created on 16-Feb-2012 16:18:11 
     27Created on 13-Mar-2012 11:08:14 
    2828 
    2929@author: mnagni 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_sphere.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_griddedsurface import  GM_GriddedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:06 
     25Created on 13-Mar-2012 11:08:06 
    2626 
    2727@author: mnagni 
     
    120120 
    121121    def __eq__(self, y): 
     122        if type(self) != type(y): 
     123            return False 
    122124        ''' 
    123125        Cannot compare classes which do not define a "__key" attribute  
     
    128130 
    129131    def __hash__(self): 
    130         return hash(self.__key()) 
     132        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_splinecurve.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curvesegment import  GM_CurveSegment  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:04 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_curvesegment = GM_CurveSegment()        
    4343 
     44        self.curve = None 
    4445        self.numDerivativesAtEnd = None 
    45         self.curve = None 
    4646        self.knot = [] 
    4747        self.interpolation = None 
     
    5353 
    5454    @property 
     55    def curve(self):     
     56        return self._gm_curvesegment.curve 
     57 
     58    @curve.setter 
     59    def curve(self, value):      
     60            self._gm_curvesegment.curve = value 
     61 
     62    @property 
    5563    def numDerivativesAtEnd(self):       
    5664        return self._gm_curvesegment.numDerivativesAtEnd 
     
    5967    def numDerivativesAtEnd(self, value):        
    6068            self._gm_curvesegment.numDerivativesAtEnd = value 
    61  
    62     @property 
    63     def curve(self):     
    64         return self._gm_curvesegment.curve 
    65  
    66     @curve.setter 
    67     def curve(self, value):      
    68             self._gm_curvesegment.curve = value 
    6969 
    7070    @property 
     
    9393 
    9494    def __key(self): 
    95         return (self.numDerivativesAtEnd, self.curve, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.numDerivativeInterior, self.controlPoints) 
     95        return (self.curve, self.numDerivativesAtEnd, self.knot, self.interpolation, self.numDerivativesAtStart, self.degree, self.numDerivativeInterior, self.controlPoints) 
    9696 
    9797    def __eq__(self, y): 
     98        if type(self) != type(y): 
     99            return False 
    98100        ''' 
    99101        Cannot compare classes which do not define a "__key" attribute  
     
    104106 
    105107    def __hash__(self): 
    106         return hash(self.__key()) 
     108        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_splinecurveform.py

    r8091 r8160  
    2020 
    2121from ascore.ascodelist import  ASCodeList  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:11 
    2626 
    2727@author: mnagni 
     
    3535        This class has been genererated automatically using the Apache Velocity project. 
    3636    ''' 
     37    cl_circulararc = "circularArc"  
     38    cl_polylineform = "polylineForm"  
     39    cl_hyperbolicarc = "hyperbolicArc"  
    3740    cl_ellipticarc = "ellipticArc"  
    38     cl_hyperbolicarc = "hyperbolicArc"  
    39     cl_circulararc = "circularArc"  
    4041    cl_parabolicarc = "parabolicArc"  
    41     cl_polylineform = "polylineForm"  
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_tin.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_triangulatedsurface import  GM_TriangulatedSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:10 
     25Created on 13-Mar-2012 11:08:08 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_triangulatedsurface = GM_TriangulatedSurface()          
    4343 
    44         self._containedPrimitive_gm_orientableprimitive = [] 
    4544        self._containedPrimitive_gm_point = [] 
    4645        self._containedPrimitive_gm_solid = [] 
     46        self._containedPrimitive_gm_orientableprimitive = [] 
     47        self.composite = [] 
     48        self._composite_gm_compositesolid = [] 
    4749        self._composite_gm_compositecurve = [] 
    48         self._composite_gm_compositesolid = [] 
     50        self._composite_gm_compositepoint = [] 
    4951        self._composite_gm_compositesurface = [] 
    50         self._composite_gm_compositepoint = [] 
    51         self.composite = [] 
    5252        self.orientation = None 
    53         self._containingPrimitive_gm_orientableprimitive = [] 
    5453        self._containingPrimitive_gm_point = [] 
    5554        self._containingPrimitive_gm_solid = [] 
     55        self._containingPrimitive_gm_orientableprimitive = [] 
    5656        self._topology_tp_directedtopo = [] 
     57        self._topology_tp_solid = [] 
    5758        self._topology_tp_edge = [] 
    5859        self._topology_tp_node = [] 
    59         self._topology_tp_solid = [] 
    6060        self._topology_tp_face = [] 
    6161        self.stopLines = [] 
     62        self._CRS_sc_compoundcrs = None 
    6263        self._CRS_sc_singlecrs = None 
    63         self._CRS_sc_compoundcrs = None 
    6464        self.patch = [] 
     65        self._patch_gm_parametriccurvesurface = [] 
    6566        self._patch_gm_polygon = [] 
    66         self._patch_gm_parametriccurvesurface = [] 
    6767        self._proxy_gm_orientablesurface = None 
    6868        self._proxy_gm_orientablecurve = None 
    69         self._primitive_gm_orientableprimitive = None 
     69        self.complex = [] 
    7070        self._primitive_gm_point = None 
    7171        self._primitive_gm_solid = None 
    72         self.complex = [] 
     72        self._primitive_gm_orientableprimitive = None 
     73        self.breakLines = [] 
    7374        self.controlPoint = [] 
    74         self.breakLines = [] 
    7575        self.maxLength = None 
    7676        super(GM_Tin, self).__init__() 
     
    8383    def containedPrimitive(self, value):         
    8484            self._gm_triangulatedsurface.containedPrimitive = value 
    85  
    86     @property 
    87     def composite(self):         
    88         return self._gm_triangulatedsurface.composite 
    89  
    90     @composite.setter 
    91     def composite(self, value):  
    92             self._gm_triangulatedsurface.composite = value 
    9385 
    9486    @property 
     
    141133 
    142134    @property 
    143     def patch(self):     
    144         return self._gm_triangulatedsurface.patch 
    145  
    146     @patch.setter 
    147     def patch(self, value):      
    148             self._gm_triangulatedsurface.patch = value 
    149  
    150     @property 
    151135    def proxy(self):     
    152136        return self._gm_triangulatedsurface.proxy 
     
    155139    def proxy(self, value):      
    156140            self._gm_triangulatedsurface.proxy = value 
     141 
     142    @property 
     143    def complex(self):   
     144        return self._gm_triangulatedsurface.complex 
     145 
     146    @complex.setter 
     147    def complex(self, value):    
     148            self._gm_triangulatedsurface.complex = value 
    157149 
    158150    @property 
     
    164156            self._gm_triangulatedsurface.primitive = value 
    165157 
    166     @property 
    167     def complex(self):   
    168         return self._gm_triangulatedsurface.complex 
    169  
    170     @complex.setter 
    171     def complex(self, value):    
    172             self._gm_triangulatedsurface.complex = value 
    173  
    174158    def __key(self): 
    175         return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.topology, self.stopLines, self.CRS, self.patch, self.patch, self.proxy, self.primitive, self.complex, self.controlPoint, self.breakLines, self.maxLength) 
     159        return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.topology, self.stopLines, self.CRS, self.patch, self.patch, self.proxy, self.complex, self.primitive, self.breakLines, self.controlPoint, self.maxLength) 
    176160 
    177161    def __eq__(self, y): 
     162        if type(self) != type(y): 
     163            return False 
    178164        ''' 
    179165        Cannot compare classes which do not define a "__key" attribute  
     
    184170 
    185171    def __hash__(self): 
    186         return hash(self.__key()) 
     172        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_triangle.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_polygon import  GM_Polygon  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:03 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    8686 
    8787    def __eq__(self, y): 
     88        if type(self) != type(y): 
     89            return False 
    8890        ''' 
    8991        Cannot compare classes which do not define a "__key" attribute  
     
    9496 
    9597    def __hash__(self): 
    96         return hash(self.__key()) 
     98        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/coordinate_geometry/gm_triangulatedsurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_polyhedralsurface import  GM_PolyhedralSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:00 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
    5656        self.composite = [] 
     57        self._CRS_sc_compoundcrs = None 
    5758        self._CRS_sc_singlecrs = None 
    58         self._CRS_sc_compoundcrs = None 
    5959        self.orientation = None 
     60        self._patch_gm_parametriccurvesurface = [] 
    6061        self._patch_gm_polygon = [] 
    61         self._patch_gm_parametriccurvesurface = [] 
    6262        self.patch = [] 
    6363        self._proxy_gm_orientablesurface = None 
    6464        self._proxy_gm_orientablecurve = None 
    65         self._containingPrimitive_gm_orientableprimitive = [] 
    6665        self._containingPrimitive_gm_point = [] 
    6766        self._containingPrimitive_gm_solid = [] 
     67        self._containingPrimitive_gm_orientableprimitive = [] 
    6868        self.complex = [] 
    69         self._primitive_gm_orientableprimitive = None 
    7069        self._primitive_gm_point = None 
    7170        self._primitive_gm_solid = None 
     71        self._primitive_gm_orientableprimitive = None 
    7272        super(GM_TriangulatedSurface, self).__init__() 
    7373 
     
    8787    def containedPrimitive(self, value):         
    8888            self._gm_polyhedralsurface.containedPrimitive = value 
    89  
    90     @property 
    91     def composite(self):         
    92         return self._gm_polyhedralsurface.composite 
    93  
    94     @composite.setter 
    95     def composite(self, value):  
    96             self._gm_polyhedralsurface.composite = value 
    9789 
    9890    @property 
     
    164156 
    165157    def __eq__(self, y): 
     158        if type(self) != type(y): 
     159            return False 
    166160        ''' 
    167161        Cannot compare classes which do not define a "__key" attribute  
     
    172166 
    173167    def __hash__(self): 
    174         return hash(self.__key()) 
     168        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_aggregates/gm_aggregate.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometry_root.gm_object import  GM_Object  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:12 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_object = GM_Object()    
    4343 
     44        self._CRS_sc_compoundcrs = None 
    4445        self._CRS_sc_singlecrs = None 
    45         self._CRS_sc_compoundcrs = None 
    4646        self._element_gm_complex = [] 
     47        self._element_gm_aggregate = [] 
    4748        self._element_gm_primitive = [] 
    48         self._element_gm_aggregate = [] 
    4949        super(GM_Aggregate, self).__init__() 
    5050 
     
    6262        for item in self._element_gm_complex: 
    6363            ret.append(item) 
     64        for item in self._element_gm_aggregate: 
     65            ret.append(item) 
    6466        for item in self._element_gm_primitive: 
    65             ret.append(item) 
    66         for item in self._element_gm_aggregate: 
    6767            ret.append(item) 
    6868        return ret 
     
    7272        if isinstance(value, list): 
    7373            self._element_gm_complex[:] 
     74            self._element_gm_aggregate[:] 
    7475            self._element_gm_primitive[:] 
    75             self._element_gm_aggregate[:] 
    7676            for item in value: 
    7777                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     
    7979                    self._element_gm_complex.append(item) 
    8080                    continue 
     81                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_aggregate.GM_Aggregate": 
     82                    self._element_gm_aggregate.append(item) 
     83                    continue 
    8184                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_primitive.GM_Primitive": 
    8285                    self._element_gm_primitive.append(item) 
    83                     continue 
    84                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_aggregate.GM_Aggregate": 
    85                     self._element_gm_aggregate.append(item) 
    8686                    continue 
    8787 
     
    9090 
    9191    def __eq__(self, y): 
     92        if type(self) != type(y): 
     93            return False 
    9294        ''' 
    9395        Cannot compare classes which do not define a "__key" attribute  
     
    98100 
    99101    def __hash__(self): 
    100         return hash(self.__key()) 
     102        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_aggregates/gm_multicurve.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_multiprimitive import  GM_MultiPrimitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:03 
     25Created on 13-Mar-2012 11:08:11 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.length = None 
     45        self._CRS_sc_compoundcrs = None 
    4546        self._CRS_sc_singlecrs = None 
    46         self._CRS_sc_compoundcrs = None 
    4747        self._element_gm_complex = [] 
     48        self._element_gm_aggregate = [] 
    4849        self._element_gm_primitive = [] 
    49         self._element_gm_aggregate = [] 
    5050        super(GM_MultiCurve, self).__init__() 
    5151 
     
    7070 
    7171    def __eq__(self, y): 
     72        if type(self) != type(y): 
     73            return False 
    7274        ''' 
    7375        Cannot compare classes which do not define a "__key" attribute  
     
    7880 
    7981    def __hash__(self): 
    80         return hash(self.__key()) 
     82        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_aggregates/gm_multipoint.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_multiprimitive import  GM_MultiPrimitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_multiprimitive = GM_MultiPrimitive()    
    4343 
     44        self._CRS_sc_compoundcrs = None 
    4445        self._CRS_sc_singlecrs = None 
    45         self._CRS_sc_compoundcrs = None 
    4646        self._element_gm_complex = [] 
     47        self._element_gm_aggregate = [] 
    4748        self._element_gm_primitive = [] 
    48         self._element_gm_aggregate = [] 
    4949        self.position = [] 
    5050        super(GM_MultiPoint, self).__init__() 
     
    7070 
    7171    def __eq__(self, y): 
     72        if type(self) != type(y): 
     73            return False 
    7274        ''' 
    7375        Cannot compare classes which do not define a "__key" attribute  
     
    7880 
    7981    def __hash__(self): 
    80         return hash(self.__key()) 
     82        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_aggregates/gm_multiprimitive.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_aggregate import  GM_Aggregate  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:10 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_aggregate = GM_Aggregate()      
    4343 
     44        self._CRS_sc_compoundcrs = None 
    4445        self._CRS_sc_singlecrs = None 
    45         self._CRS_sc_compoundcrs = None 
    4646        self._element_gm_complex = [] 
     47        self._element_gm_aggregate = [] 
    4748        self._element_gm_primitive = [] 
    48         self._element_gm_aggregate = [] 
    4949        super(GM_MultiPrimitive, self).__init__() 
    5050 
     
    6969 
    7070    def __eq__(self, y): 
     71        if type(self) != type(y): 
     72            return False 
    7173        ''' 
    7274        Cannot compare classes which do not define a "__key" attribute  
     
    7779 
    7880    def __hash__(self): 
    79         return hash(self.__key()) 
     81        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_aggregates/gm_multisolid.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_multiprimitive import  GM_MultiPrimitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_multiprimitive = GM_MultiPrimitive()    
    4343 
     44        self._CRS_sc_compoundcrs = None 
    4445        self._CRS_sc_singlecrs = None 
    45         self._CRS_sc_compoundcrs = None 
    4646        self.area = None 
    4747        self._element_gm_complex = [] 
     48        self._element_gm_aggregate = [] 
    4849        self._element_gm_primitive = [] 
    49         self._element_gm_aggregate = [] 
    5050        self.volume = None 
    5151        super(GM_MultiSolid, self).__init__() 
     
    7171 
    7272    def __eq__(self, y): 
     73        if type(self) != type(y): 
     74            return False 
    7375        ''' 
    7476        Cannot compare classes which do not define a "__key" attribute  
     
    7981 
    8082    def __hash__(self): 
    81         return hash(self.__key()) 
     83        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_aggregates/gm_multisurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_aggregates.gm_multiprimitive import  GM_MultiPrimitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:08 
     25Created on 13-Mar-2012 11:08:05 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.perimeter = None 
     45        self._CRS_sc_compoundcrs = None 
    4546        self._CRS_sc_singlecrs = None 
    46         self._CRS_sc_compoundcrs = None 
    4747        self.area = None 
    4848        self._element_gm_complex = [] 
     49        self._element_gm_aggregate = [] 
    4950        self._element_gm_primitive = [] 
    50         self._element_gm_aggregate = [] 
    5151        super(GM_MultiSurface, self).__init__() 
    5252 
     
    7171 
    7272    def __eq__(self, y): 
     73        if type(self) != type(y): 
     74            return False 
    7375        ''' 
    7476        Cannot compare classes which do not define a "__key" attribute  
     
    7981 
    8082    def __hash__(self): 
    81         return hash(self.__key()) 
     83        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_complex.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometry_root.gm_object import  GM_Object  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:17:59 
     25Created on 13-Mar-2012 11:08:05 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.topology = None 
     45        self._CRS_sc_compoundcrs = None 
    4546        self._CRS_sc_singlecrs = None 
    46         self._CRS_sc_compoundcrs = None 
     47        self.subComplex = [] 
    4748        self.superComplex = [] 
    48         self.subComplex = [] 
    49         self._element_gm_orientableprimitive = [] 
    5049        self._element_gm_point = [] 
    5150        self._element_gm_solid = [] 
     51        self._element_gm_orientableprimitive = [] 
    5252        super(GM_Complex, self).__init__() 
    5353 
     
    6363    def element(self):   
    6464        ret = [] 
    65         for item in self._element_gm_orientableprimitive: 
    66             ret.append(item) 
    6765        for item in self._element_gm_point: 
    6866            ret.append(item) 
    6967        for item in self._element_gm_solid: 
     68            ret.append(item) 
     69        for item in self._element_gm_orientableprimitive: 
    7070            ret.append(item) 
    7171        return ret 
     
    7474    def element(self, value):    
    7575        if isinstance(value, list): 
    76             self._element_gm_orientableprimitive[:] 
    7776            self._element_gm_point[:] 
    7877            self._element_gm_solid[:] 
     78            self._element_gm_orientableprimitive[:] 
    7979            for item in value: 
    8080                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
    81                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
    82                     self._element_gm_orientableprimitive.append(item) 
    83                     continue 
    8481                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
    8582                    self._element_gm_point.append(item) 
     
    8885                    self._element_gm_solid.append(item) 
    8986                    continue 
     87                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
     88                    self._element_gm_orientableprimitive.append(item) 
     89                    continue 
    9090 
    9191    def __key(self): 
    92         return (self.topology, self.CRS, self.superComplex, self.subComplex, self.element) 
     92        return (self.topology, self.CRS, self.subComplex, self.superComplex, self.element) 
    9393 
    9494    def __eq__(self, y): 
     95        if type(self) != type(y): 
     96            return False 
    9597        ''' 
    9698        Cannot compare classes which do not define a "__key" attribute  
     
    101103 
    102104    def __hash__(self): 
    103         return hash(self.__key()) 
     105        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_complexboundary.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometry_root.gm_boundary import  GM_Boundary  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    4848 
    4949    def __eq__(self, y): 
     50        if type(self) != type(y): 
     51            return False 
    5052        ''' 
    5153        Cannot compare classes which do not define a "__key" attribute  
     
    5658 
    5759    def __hash__(self): 
    58         return hash(self.__key()) 
     60        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_composite.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_complex import  GM_Complex  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:01 
     25Created on 13-Mar-2012 11:08:08 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self.topology = None 
     45        self._CRS_sc_compoundcrs = None 
    4546        self._CRS_sc_singlecrs = None 
    46         self._CRS_sc_compoundcrs = None 
     47        self.subComplex = [] 
    4748        self.superComplex = [] 
    48         self.subComplex = [] 
    49         self._element_gm_orientableprimitive = [] 
    5049        self._element_gm_point = [] 
    5150        self._element_gm_solid = [] 
    52         self._generator_gm_orientableprimitive = [] 
     51        self._element_gm_orientableprimitive = [] 
    5352        self._generator_gm_point = [] 
    5453        self._generator_gm_solid = [] 
     54        self._generator_gm_orientableprimitive = [] 
    5555        super(GM_Composite, self).__init__() 
    5656 
     
    7272 
    7373    @property 
     74    def subComplex(self):        
     75        return self._gm_complex.subComplex 
     76 
     77    @subComplex.setter 
     78    def subComplex(self, value):         
     79            self._gm_complex.subComplex = value 
     80 
     81    @property 
    7482    def superComplex(self):      
    7583        return self._gm_complex.superComplex 
     
    7886    def superComplex(self, value):       
    7987            self._gm_complex.superComplex = value 
    80  
    81     @property 
    82     def subComplex(self):        
    83         return self._gm_complex.subComplex 
    84  
    85     @subComplex.setter 
    86     def subComplex(self, value):         
    87             self._gm_complex.subComplex = value 
    8888 
    8989    @property 
     
    9898    def generator(self):         
    9999        ret = [] 
    100         for item in self._generator_gm_orientableprimitive: 
    101             ret.append(item) 
    102100        for item in self._generator_gm_point: 
    103101            ret.append(item) 
    104102        for item in self._generator_gm_solid: 
     103            ret.append(item) 
     104        for item in self._generator_gm_orientableprimitive: 
    105105            ret.append(item) 
    106106        return ret 
     
    109109    def generator(self, value):  
    110110        if isinstance(value, list): 
    111             self._generator_gm_orientableprimitive[:] 
    112111            self._generator_gm_point[:] 
    113112            self._generator_gm_solid[:] 
     113            self._generator_gm_orientableprimitive[:] 
    114114            for item in value: 
    115115                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
    116                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
    117                     self._generator_gm_orientableprimitive.append(item) 
    118                     continue 
    119116                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
    120117                    self._generator_gm_point.append(item) 
     
    123120                    self._generator_gm_solid.append(item) 
    124121                    continue 
     122                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
     123                    self._generator_gm_orientableprimitive.append(item) 
     124                    continue 
    125125 
    126126    def __key(self): 
    127         return (self.topology, self.CRS, self.superComplex, self.subComplex, self.element, self.generator) 
     127        return (self.topology, self.CRS, self.subComplex, self.superComplex, self.element, self.generator) 
    128128 
    129129    def __eq__(self, y): 
     130        if type(self) != type(y): 
     131            return False 
    130132        ''' 
    131133        Cannot compare classes which do not define a "__key" attribute  
     
    136138 
    137139    def __hash__(self): 
    138         return hash(self.__key()) 
     140        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_compositecurve.py

    r8091 r8160  
    1919 
    2020 
     21from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_composite import  GM_Composite  
    2122from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientablecurve import  GM_OrientableCurve  
    22 from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_composite import  GM_Composite  
    23 from ascore.utils import has_value 
     23from ascore.utils import has_value, collectionProofHash 
    2424 
    2525''' 
    26 Created on 16-Feb-2012 16:18:11 
     26Created on 13-Mar-2012 11:08:05 
    2727 
    2828@author: mnagni 
    2929''' 
    3030 
    31 class GM_CompositeCurve(GM_OrientableCurve,GM_Composite): 
     31class GM_CompositeCurve(GM_Composite,GM_OrientableCurve): 
    3232    ''' 
    3333        Represents a data entity defined in a UML diagram and supposed to  
     
    4141    ''' 
    4242    def __init__(self): 
     43        self._gm_orientablecurve = GM_OrientableCurve()          
    4344        self._gm_composite = GM_Composite()      
    44         self._gm_orientablecurve = GM_OrientableCurve()          
    45  
    46         self._containedPrimitive_gm_orientableprimitive = [] 
     45 
    4746        self._containedPrimitive_gm_point = [] 
    4847        self._containedPrimitive_gm_solid = [] 
     48        self._containedPrimitive_gm_orientableprimitive = [] 
     49        self.composite = [] 
     50        self._composite_gm_compositesolid = [] 
    4951        self._composite_gm_compositecurve = [] 
    50         self._composite_gm_compositesolid = [] 
     52        self._composite_gm_compositepoint = [] 
    5153        self._composite_gm_compositesurface = [] 
    52         self._composite_gm_compositepoint = [] 
    53         self.composite = [] 
    5454        self.orientation = None 
    55         self._containingPrimitive_gm_orientableprimitive = [] 
    5655        self._containingPrimitive_gm_point = [] 
    5756        self._containingPrimitive_gm_solid = [] 
    58         self._element_gm_orientableprimitive = [] 
     57        self._containingPrimitive_gm_orientableprimitive = [] 
    5958        self._element_gm_point = [] 
    6059        self._element_gm_solid = [] 
     60        self._element_gm_orientableprimitive = [] 
     61        self._generator_gm_curve = [] 
    6162        self._generator_gm_compositecurve = [] 
    62         self._generator_gm_curve = [] 
    6363        self.topology = None 
    6464        self._topology_tp_directedtopo = [] 
     65        self._topology_tp_solid = [] 
    6566        self._topology_tp_edge = [] 
    6667        self._topology_tp_node = [] 
    67         self._topology_tp_solid = [] 
    6868        self._topology_tp_face = [] 
     69        self._CRS_sc_compoundcrs = None 
    6970        self._CRS_sc_singlecrs = None 
    70         self._CRS_sc_compoundcrs = None 
    7171        self.subComplex = [] 
    72         self.superComplex = [] 
    7372        self._proxy_gm_orientablesurface = None 
    7473        self._proxy_gm_orientablecurve = None 
    75         self._primitive_gm_orientableprimitive = None 
     74        self.superComplex = [] 
    7675        self._primitive_gm_point = None 
    7776        self._primitive_gm_solid = None 
     77        self._primitive_gm_orientableprimitive = None 
    7878        self.complex = [] 
    7979        super(GM_CompositeCurve, self).__init__() 
     
    9696 
    9797    @property 
    98     def composite(self):         
    99         return self._gm_orientablecurve.composite 
    100  
    101     @composite.setter 
    102     def composite(self, value):  
    103             self._gm_orientablecurve.composite = value 
    104  
    105     @property 
    10698    def orientation(self):       
    10799        return self._gm_orientablecurve.orientation 
     
    130122    def generator(self):         
    131123        ret = [] 
     124        for item in self._generator_gm_curve: 
     125            ret.append(item) 
    132126        for item in self._generator_gm_compositecurve: 
    133             ret.append(item) 
    134         for item in self._generator_gm_curve: 
    135127            ret.append(item) 
    136128        return ret 
     
    139131    def generator(self, value):  
    140132        if isinstance(value, list): 
     133            self._generator_gm_curve[:] 
    141134            self._generator_gm_compositecurve[:] 
    142             self._generator_gm_curve[:] 
    143135            for item in value: 
    144136                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     137                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curve.GM_Curve": 
     138                    self._generator_gm_curve.append(item) 
     139                    continue 
    145140                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositecurve.GM_CompositeCurve": 
    146141                    self._generator_gm_compositecurve.append(item) 
    147142                    continue 
    148                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_curve.GM_Curve": 
    149                     self._generator_gm_curve.append(item) 
    150                     continue 
    151143 
    152144    @property 
     
    159151 
    160152    @property 
    161     def topology(self):  
    162         return self._gm_orientablecurve.topology 
    163  
    164     @topology.setter 
    165     def topology(self, value):   
    166             self._gm_orientablecurve.topology = value 
    167  
    168     @property 
    169153    def CRS(self):       
    170         return self._gm_composite.CRS 
     154        return self._gm_orientablecurve.CRS 
    171155 
    172156    @CRS.setter 
    173157    def CRS(self, value):        
    174             self._gm_composite.CRS = value 
     158            self._gm_orientablecurve.CRS = value 
    175159 
    176160    @property 
     
    183167 
    184168    @property 
     169    def proxy(self):     
     170        return self._gm_orientablecurve.proxy 
     171 
     172    @proxy.setter 
     173    def proxy(self, value):      
     174            self._gm_orientablecurve.proxy = value 
     175 
     176    @property 
    185177    def superComplex(self):      
    186178        return self._gm_composite.superComplex 
     
    191183 
    192184    @property 
    193     def proxy(self):     
    194         return self._gm_orientablecurve.proxy 
    195  
    196     @proxy.setter 
    197     def proxy(self, value):      
    198             self._gm_orientablecurve.proxy = value 
    199  
    200     @property 
    201185    def primitive(self):         
    202186        return self._gm_orientablecurve.primitive 
     
    215199 
    216200    def __key(self): 
    217         return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.element, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.superComplex, self.proxy, self.primitive, self.complex) 
     201        return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.element, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.proxy, self.superComplex, self.primitive, self.complex) 
    218202 
    219203    def __eq__(self, y): 
     204        if type(self) != type(y): 
     205            return False 
    220206        ''' 
    221207        Cannot compare classes which do not define a "__key" attribute  
     
    226212 
    227213    def __hash__(self): 
    228         return hash(self.__key()) 
     214        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_compositepoint.py

    r8091 r8160  
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point import  GM_Point  
    2222from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_composite import  GM_Composite  
    23 from ascore.utils import has_value 
     23from ascore.utils import has_value, collectionProofHash 
    2424 
    2525''' 
    26 Created on 16-Feb-2012 16:18:09 
     26Created on 13-Mar-2012 11:08:10 
    2727 
    2828@author: mnagni 
     
    4444        self._gm_point = GM_Point()      
    4545 
    46         self._containedPrimitive_gm_orientableprimitive = [] 
    4746        self._containedPrimitive_gm_point = [] 
    4847        self._containedPrimitive_gm_solid = [] 
     48        self._containedPrimitive_gm_orientableprimitive = [] 
     49        self.composite = [] 
     50        self._composite_gm_compositesolid = [] 
    4951        self._composite_gm_compositecurve = [] 
    50         self._composite_gm_compositesolid = [] 
     52        self._composite_gm_compositepoint = [] 
    5153        self._composite_gm_compositesurface = [] 
    52         self._composite_gm_compositepoint = [] 
    53         self.composite = [] 
    54         self._containingPrimitive_gm_orientableprimitive = [] 
    5554        self._containingPrimitive_gm_point = [] 
    5655        self._containingPrimitive_gm_solid = [] 
    57         self._element_gm_orientableprimitive = [] 
     56        self._containingPrimitive_gm_orientableprimitive = [] 
    5857        self._element_gm_point = [] 
    5958        self._element_gm_solid = [] 
     59        self._element_gm_orientableprimitive = [] 
    6060        self.generator = None 
    61         self._generator_gm_orientableprimitive = [] 
    6261        self._generator_gm_point = [] 
    6362        self._generator_gm_solid = [] 
    64         self.topology = None 
     63        self._generator_gm_orientableprimitive = [] 
    6564        self._topology_tp_directedtopo = [] 
     65        self._topology_tp_solid = [] 
    6666        self._topology_tp_edge = [] 
    6767        self._topology_tp_node = [] 
    68         self._topology_tp_solid = [] 
    6968        self._topology_tp_face = [] 
     69        self.topology = None 
     70        self._CRS_sc_compoundcrs = None 
    7071        self._CRS_sc_singlecrs = None 
    71         self._CRS_sc_compoundcrs = None 
    7272        self.gridPoint = [] 
     73        self.superComplex = [] 
    7374        self.subComplex = [] 
    74         self.superComplex = [] 
    7575        self._proxy_gm_orientablesurface = None 
    7676        self._proxy_gm_orientablecurve = None 
     77        self.complex = [] 
    7778        self.position = None 
    78         self.complex = [] 
    7979        super(GM_CompositePoint, self).__init__() 
    8080 
     
    8686    def containedPrimitive(self, value):         
    8787            self._gm_point.containedPrimitive = value 
    88  
    89     @property 
    90     def composite(self):         
    91         return self._gm_point.composite 
    92  
    93     @composite.setter 
    94     def composite(self, value):  
    95             self._gm_point.composite = value 
    9688 
    9789    @property 
     
    129121    @property 
    130122    def topology(self):  
    131         return self._gm_composite.topology 
     123        return self._gm_point.topology 
    132124 
    133125    @topology.setter 
    134126    def topology(self, value):   
    135127            self._gm_composite.topology = value 
    136  
    137     @property 
    138     def topology(self):  
    139         return self._gm_point.topology 
    140  
    141     @topology.setter 
    142     def topology(self, value):   
    143             self._gm_point.topology = value 
    144128 
    145129    @property 
     
    160144 
    161145    @property 
     146    def superComplex(self):      
     147        return self._gm_composite.superComplex 
     148 
     149    @superComplex.setter 
     150    def superComplex(self, value):       
     151            self._gm_composite.superComplex = value 
     152 
     153    @property 
    162154    def subComplex(self):        
    163155        return self._gm_composite.subComplex 
     
    166158    def subComplex(self, value):         
    167159            self._gm_composite.subComplex = value 
    168  
    169     @property 
    170     def superComplex(self):      
    171         return self._gm_composite.superComplex 
    172  
    173     @superComplex.setter 
    174     def superComplex(self, value):       
    175             self._gm_composite.superComplex = value 
    176160 
    177161    @property 
     
    184168 
    185169    @property 
     170    def complex(self):   
     171        return self._gm_point.complex 
     172 
     173    @complex.setter 
     174    def complex(self, value):    
     175            self._gm_point.complex = value 
     176 
     177    @property 
    186178    def position(self):  
    187179        return self._gm_point.position 
     
    191183            self._gm_point.position = value 
    192184 
    193     @property 
    194     def complex(self):   
    195         return self._gm_point.complex 
    196  
    197     @complex.setter 
    198     def complex(self, value):    
    199             self._gm_point.complex = value 
    200  
    201185    def __key(self): 
    202         return (self.containedPrimitive, self.composite, self.composite, self.containingPrimitive, self.element, self.generator, self.generator, self.topology, self.topology, self.CRS, self.gridPoint, self.subComplex, self.superComplex, self.proxy, self.position, self.complex) 
     186        return (self.containedPrimitive, self.composite, self.composite, self.containingPrimitive, self.element, self.generator, self.generator, self.topology, self.topology, self.CRS, self.gridPoint, self.superComplex, self.subComplex, self.proxy, self.complex, self.position) 
    203187 
    204188    def __eq__(self, y): 
     189        if type(self) != type(y): 
     190            return False 
    205191        ''' 
    206192        Cannot compare classes which do not define a "__key" attribute  
     
    211197 
    212198    def __hash__(self): 
    213         return hash(self.__key()) 
     199        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_compositesolid.py

    r8091 r8160  
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid import  GM_Solid  
    2222from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_composite import  GM_Composite  
    23 from ascore.utils import has_value 
     23from ascore.utils import has_value, collectionProofHash 
    2424 
    2525''' 
    26 Created on 16-Feb-2012 16:18:08 
     26Created on 13-Mar-2012 11:08:10 
    2727 
    2828@author: mnagni 
     
    4444        self._gm_solid = GM_Solid()      
    4545 
    46         self._containedPrimitive_gm_orientableprimitive = [] 
    4746        self._containedPrimitive_gm_point = [] 
    4847        self._containedPrimitive_gm_solid = [] 
     48        self._containedPrimitive_gm_orientableprimitive = [] 
    4949        self.composite = [] 
     50        self._composite_gm_compositesolid = [] 
    5051        self._composite_gm_compositecurve = [] 
    51         self._composite_gm_compositesolid = [] 
     52        self._composite_gm_compositepoint = [] 
    5253        self._composite_gm_compositesurface = [] 
    53         self._composite_gm_compositepoint = [] 
    54         self._containingPrimitive_gm_orientableprimitive = [] 
    5554        self._containingPrimitive_gm_point = [] 
    5655        self._containingPrimitive_gm_solid = [] 
    57         self._element_gm_orientableprimitive = [] 
     56        self._containingPrimitive_gm_orientableprimitive = [] 
    5857        self._element_gm_point = [] 
    5958        self._element_gm_solid = [] 
     59        self._element_gm_orientableprimitive = [] 
    6060        self.generator = [] 
    61         self._generator_gm_orientableprimitive = [] 
    6261        self._generator_gm_point = [] 
    6362        self._generator_gm_solid = [] 
     63        self._generator_gm_orientableprimitive = [] 
    6464        self.topology = None 
    6565        self._topology_tp_directedtopo = [] 
     66        self._topology_tp_solid = [] 
    6667        self._topology_tp_edge = [] 
    6768        self._topology_tp_node = [] 
    68         self._topology_tp_solid = [] 
    6969        self._topology_tp_face = [] 
     70        self._CRS_sc_compoundcrs = None 
    7071        self._CRS_sc_singlecrs = None 
    71         self._CRS_sc_compoundcrs = None 
     72        self.superComplex = [] 
    7273        self.subComplex = [] 
    73         self.superComplex = [] 
    7474        self._proxy_gm_orientablesurface = None 
    7575        self._proxy_gm_orientablecurve = None 
     
    8484    def containedPrimitive(self, value):         
    8585            self._gm_solid.containedPrimitive = value 
    86  
    87     @property 
    88     def composite(self):         
    89         return self._gm_solid.composite 
    90  
    91     @composite.setter 
    92     def composite(self, value):  
    93             self._gm_solid.composite = value 
    9486 
    9587    @property 
     
    131123    @topology.setter 
    132124    def topology(self, value):   
    133             self._gm_composite.topology = value 
    134  
    135     @property 
    136     def topology(self):  
    137         return self._gm_solid.topology 
    138  
    139     @topology.setter 
    140     def topology(self, value):   
    141125            self._gm_solid.topology = value 
    142126 
     
    150134 
    151135    @property 
     136    def superComplex(self):      
     137        return self._gm_composite.superComplex 
     138 
     139    @superComplex.setter 
     140    def superComplex(self, value):       
     141            self._gm_composite.superComplex = value 
     142 
     143    @property 
    152144    def subComplex(self):        
    153145        return self._gm_composite.subComplex 
     
    156148    def subComplex(self, value):         
    157149            self._gm_composite.subComplex = value 
    158  
    159     @property 
    160     def superComplex(self):      
    161         return self._gm_composite.superComplex 
    162  
    163     @superComplex.setter 
    164     def superComplex(self, value):       
    165             self._gm_composite.superComplex = value 
    166150 
    167151    @property 
     
    182166 
    183167    def __key(self): 
    184         return (self.containedPrimitive, self.composite, self.composite, self.containingPrimitive, self.element, self.generator, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.superComplex, self.proxy, self.complex) 
     168        return (self.containedPrimitive, self.composite, self.composite, self.containingPrimitive, self.element, self.generator, self.generator, self.topology, self.topology, self.CRS, self.superComplex, self.subComplex, self.proxy, self.complex) 
    185169 
    186170    def __eq__(self, y): 
     171        if type(self) != type(y): 
     172            return False 
    187173        ''' 
    188174        Cannot compare classes which do not define a "__key" attribute  
     
    193179 
    194180    def __hash__(self): 
    195         return hash(self.__key()) 
     181        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_complex/gm_compositesurface.py

    r8091 r8160  
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientablesurface import  GM_OrientableSurface  
    2222from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_composite import  GM_Composite  
    23 from ascore.utils import has_value 
     23from ascore.utils import has_value, collectionProofHash 
    2424 
    2525''' 
    26 Created on 16-Feb-2012 16:18:05 
     26Created on 13-Mar-2012 11:08:04 
    2727 
    2828@author: mnagni 
    2929''' 
    3030 
    31 class GM_CompositeSurface(GM_OrientableSurface,GM_Composite): 
     31class GM_CompositeSurface(GM_Composite,GM_OrientableSurface): 
    3232    ''' 
    3333        Represents a data entity defined in a UML diagram and supposed to  
     
    4141    ''' 
    4242    def __init__(self): 
     43        self._gm_orientablesurface = GM_OrientableSurface()      
    4344        self._gm_composite = GM_Composite()      
    44         self._gm_orientablesurface = GM_OrientableSurface()      
    45  
    46         self._containedPrimitive_gm_orientableprimitive = [] 
     45 
    4746        self._containedPrimitive_gm_point = [] 
    4847        self._containedPrimitive_gm_solid = [] 
     48        self._containedPrimitive_gm_orientableprimitive = [] 
     49        self.composite = [] 
     50        self._composite_gm_compositesolid = [] 
    4951        self._composite_gm_compositecurve = [] 
    50         self._composite_gm_compositesolid = [] 
     52        self._composite_gm_compositepoint = [] 
    5153        self._composite_gm_compositesurface = [] 
    52         self._composite_gm_compositepoint = [] 
    53         self.composite = [] 
    5454        self.orientation = None 
    55         self._containingPrimitive_gm_orientableprimitive = [] 
    5655        self._containingPrimitive_gm_point = [] 
    5756        self._containingPrimitive_gm_solid = [] 
    58         self._element_gm_orientableprimitive = [] 
     57        self._containingPrimitive_gm_orientableprimitive = [] 
    5958        self._element_gm_point = [] 
    6059        self._element_gm_solid = [] 
     60        self._element_gm_orientableprimitive = [] 
     61        self._generator_gm_surface = [] 
    6162        self._generator_gm_compositesurface = [] 
    62         self._generator_gm_surface = [] 
    6363        self.topology = None 
    6464        self._topology_tp_directedtopo = [] 
     65        self._topology_tp_solid = [] 
    6566        self._topology_tp_edge = [] 
    6667        self._topology_tp_node = [] 
    67         self._topology_tp_solid = [] 
    6868        self._topology_tp_face = [] 
     69        self._CRS_sc_compoundcrs = None 
    6970        self._CRS_sc_singlecrs = None 
    70         self._CRS_sc_compoundcrs = None 
    7171        self.subComplex = [] 
    72         self.superComplex = [] 
    7372        self._proxy_gm_orientablesurface = None 
    7473        self._proxy_gm_orientablecurve = None 
    75         self._primitive_gm_orientableprimitive = None 
     74        self.superComplex = [] 
    7675        self._primitive_gm_point = None 
    7776        self._primitive_gm_solid = None 
     77        self._primitive_gm_orientableprimitive = None 
    7878        self.complex = [] 
    7979        super(GM_CompositeSurface, self).__init__() 
     
    9696 
    9797    @property 
    98     def composite(self):         
    99         return self._gm_orientablesurface.composite 
    100  
    101     @composite.setter 
    102     def composite(self, value):  
    103             self._gm_orientablesurface.composite = value 
    104  
    105     @property 
    10698    def orientation(self):       
    10799        return self._gm_orientablesurface.orientation 
     
    130122    def generator(self):         
    131123        ret = [] 
     124        for item in self._generator_gm_surface: 
     125            ret.append(item) 
    132126        for item in self._generator_gm_compositesurface: 
    133             ret.append(item) 
    134         for item in self._generator_gm_surface: 
    135127            ret.append(item) 
    136128        return ret 
     
    139131    def generator(self, value):  
    140132        if isinstance(value, list): 
     133            self._generator_gm_surface[:] 
    141134            self._generator_gm_compositesurface[:] 
    142             self._generator_gm_surface[:] 
    143135            for item in value: 
    144136                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     137                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_surface.GM_Surface": 
     138                    self._generator_gm_surface.append(item) 
     139                    continue 
    145140                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositesurface.GM_CompositeSurface": 
    146141                    self._generator_gm_compositesurface.append(item) 
    147142                    continue 
    148                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_surface.GM_Surface": 
    149                     self._generator_gm_surface.append(item) 
    150                     continue 
    151143 
    152144    @property 
    153145    def topology(self):  
    154146        return self._gm_composite.topology 
    155  
    156     @topology.setter 
    157     def topology(self, value):   
    158             self._gm_composite.topology = value 
    159  
    160     @property 
    161     def topology(self):  
    162         return self._gm_orientablesurface.topology 
    163  
     147     
    164148    @topology.setter 
    165149    def topology(self, value):   
     
    168152    @property 
    169153    def CRS(self):       
    170         return self._gm_composite.CRS 
     154        return self._gm_orientablesurface.CRS 
    171155 
    172156    @CRS.setter 
    173157    def CRS(self, value):        
    174             self._gm_composite.CRS = value 
     158            self._gm_orientablesurface.CRS = value 
    175159 
    176160    @property 
     
    183167 
    184168    @property 
     169    def proxy(self):     
     170        return self._gm_orientablesurface.proxy 
     171 
     172    @proxy.setter 
     173    def proxy(self, value):      
     174            self._gm_orientablesurface.proxy = value 
     175 
     176    @property 
    185177    def superComplex(self):      
    186178        return self._gm_composite.superComplex 
     
    191183 
    192184    @property 
    193     def proxy(self):     
    194         return self._gm_orientablesurface.proxy 
    195  
    196     @proxy.setter 
    197     def proxy(self, value):      
    198             self._gm_orientablesurface.proxy = value 
    199  
    200     @property 
    201185    def primitive(self):         
    202186        return self._gm_orientablesurface.primitive 
     
    215199 
    216200    def __key(self): 
    217         return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.element, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.superComplex, self.proxy, self.primitive, self.complex) 
     201        return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.element, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.proxy, self.superComplex, self.primitive, self.complex) 
    218202 
    219203    def __eq__(self, y): 
     204        if type(self) != type(y): 
     205            return False 
    220206        ''' 
    221207        Cannot compare classes which do not define a "__key" attribute  
     
    226212 
    227213    def __hash__(self): 
    228         return hash(self.__key()) 
     214        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/bearing.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:08 
     24Created on 13-Mar-2012 11:08:05 
    2525 
    2626@author: mnagni 
     
    4848 
    4949    def __eq__(self, y): 
     50        if type(self) != type(y): 
     51            return False 
    5052        ''' 
    5153        Cannot compare classes which do not define a "__key" attribute  
     
    5658 
    5759    def __hash__(self): 
    58         return hash(self.__key()) 
     60        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_curve.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientablecurve import  GM_OrientableCurve  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:11 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
     49        self._segment_gm_arcstring = [] 
     50        self._segment_gm_linestring = [] 
     51        self._segment_gm_geodesicstring = [] 
    4952        self._segment_gm_splinecurve = [] 
     53        self._segment_gm_arcstringbybulge = [] 
     54        self._segment_gm_conic = [] 
     55        self._segment_gm_clothoid = [] 
    5056        self._segment_gm_offsetcurve = [] 
    51         self._segment_gm_arcstring = [] 
    52         self._segment_gm_conic = [] 
    53         self._segment_gm_geodesicstring = [] 
    54         self._segment_gm_linestring = [] 
    55         self._segment_gm_arcstringbybulge = [] 
    56         self._segment_gm_clothoid = [] 
    57         self._containedPrimitive_gm_orientableprimitive = [] 
    5857        self._containedPrimitive_gm_point = [] 
    5958        self._containedPrimitive_gm_solid = [] 
     59        self._containedPrimitive_gm_orientableprimitive = [] 
     60        self._composite_gm_compositesolid = [] 
    6061        self._composite_gm_compositecurve = [] 
    61         self._composite_gm_compositesolid = [] 
     62        self._composite_gm_compositepoint = [] 
    6263        self._composite_gm_compositesurface = [] 
    63         self._composite_gm_compositepoint = [] 
    6464        self.composite = [] 
     65        self._CRS_sc_compoundcrs = None 
    6566        self._CRS_sc_singlecrs = None 
    66         self._CRS_sc_compoundcrs = None 
    6767        self.orientation = None 
    6868        self._proxy_gm_orientablesurface = None 
    6969        self._proxy_gm_orientablecurve = None 
    70         self._containingPrimitive_gm_orientableprimitive = [] 
    7170        self._containingPrimitive_gm_point = [] 
    7271        self._containingPrimitive_gm_solid = [] 
     72        self._containingPrimitive_gm_orientableprimitive = [] 
    7373        self.complex = [] 
    74         self._primitive_gm_orientableprimitive = None 
    7574        self._primitive_gm_point = None 
    7675        self._primitive_gm_solid = None 
     76        self._primitive_gm_orientableprimitive = None 
    7777        super(GM_Curve, self).__init__() 
    7878 
     
    8888    def segment(self):   
    8989        ret = [] 
     90        for item in self._segment_gm_arcstring: 
     91            ret.append(item) 
     92        for item in self._segment_gm_linestring: 
     93            ret.append(item) 
     94        for item in self._segment_gm_geodesicstring: 
     95            ret.append(item) 
    9096        for item in self._segment_gm_splinecurve: 
    9197            ret.append(item) 
     98        for item in self._segment_gm_arcstringbybulge: 
     99            ret.append(item) 
     100        for item in self._segment_gm_conic: 
     101            ret.append(item) 
     102        for item in self._segment_gm_clothoid: 
     103            ret.append(item) 
    92104        for item in self._segment_gm_offsetcurve: 
    93             ret.append(item) 
    94         for item in self._segment_gm_arcstring: 
    95             ret.append(item) 
    96         for item in self._segment_gm_conic: 
    97             ret.append(item) 
    98         for item in self._segment_gm_geodesicstring: 
    99             ret.append(item) 
    100         for item in self._segment_gm_linestring: 
    101             ret.append(item) 
    102         for item in self._segment_gm_arcstringbybulge: 
    103             ret.append(item) 
    104         for item in self._segment_gm_clothoid: 
    105105            ret.append(item) 
    106106        return ret 
     
    109109    def segment(self, value):    
    110110        if isinstance(value, list): 
     111            self._segment_gm_arcstring[:] 
     112            self._segment_gm_linestring[:] 
     113            self._segment_gm_geodesicstring[:] 
    111114            self._segment_gm_splinecurve[:] 
     115            self._segment_gm_arcstringbybulge[:] 
     116            self._segment_gm_conic[:] 
     117            self._segment_gm_clothoid[:] 
    112118            self._segment_gm_offsetcurve[:] 
    113             self._segment_gm_arcstring[:] 
    114             self._segment_gm_conic[:] 
    115             self._segment_gm_geodesicstring[:] 
    116             self._segment_gm_linestring[:] 
    117             self._segment_gm_arcstringbybulge[:] 
    118             self._segment_gm_clothoid[:] 
    119119            for item in value: 
    120120                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     121                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstring.GM_ArcString": 
     122                    self._segment_gm_arcstring.append(item) 
     123                    continue 
     124                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_linestring.GM_LineString": 
     125                    self._segment_gm_linestring.append(item) 
     126                    continue 
     127                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_geodesicstring.GM_GeodesicString": 
     128                    self._segment_gm_geodesicstring.append(item) 
     129                    continue 
    121130                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_splinecurve.GM_SplineCurve": 
    122131                    self._segment_gm_splinecurve.append(item) 
    123132                    continue 
     133                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstringbybulge.GM_ArcStringByBulge": 
     134                    self._segment_gm_arcstringbybulge.append(item) 
     135                    continue 
     136                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_conic.GM_Conic": 
     137                    self._segment_gm_conic.append(item) 
     138                    continue 
     139                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_clothoid.GM_Clothoid": 
     140                    self._segment_gm_clothoid.append(item) 
     141                    continue 
    124142                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_offsetcurve.GM_OffsetCurve": 
    125143                    self._segment_gm_offsetcurve.append(item) 
    126                     continue 
    127                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstring.GM_ArcString": 
    128                     self._segment_gm_arcstring.append(item) 
    129                     continue 
    130                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_conic.GM_Conic": 
    131                     self._segment_gm_conic.append(item) 
    132                     continue 
    133                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_geodesicstring.GM_GeodesicString": 
    134                     self._segment_gm_geodesicstring.append(item) 
    135                     continue 
    136                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_linestring.GM_LineString": 
    137                     self._segment_gm_linestring.append(item) 
    138                     continue 
    139                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_arcstringbybulge.GM_ArcStringByBulge": 
    140                     self._segment_gm_arcstringbybulge.append(item) 
    141                     continue 
    142                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.coordinate_geometry.gm_clothoid.GM_Clothoid": 
    143                     self._segment_gm_clothoid.append(item) 
    144144                    continue 
    145145 
     
    161161 
    162162    @property 
    163     def composite(self):         
    164         return self._gm_orientablecurve.composite 
    165  
    166     @composite.setter 
    167     def composite(self, value):  
    168             self._gm_orientablecurve.composite = value 
    169  
    170     @property 
    171163    def CRS(self):       
    172164        return self._gm_orientablecurve.CRS 
     
    220212 
    221213    def __eq__(self, y): 
     214        if type(self) != type(y): 
     215            return False 
    222216        ''' 
    223217        Cannot compare classes which do not define a "__key" attribute  
     
    228222 
    229223    def __hash__(self): 
    230         return hash(self.__key()) 
     224        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_curveboundary.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_primitiveboundary import  GM_PrimitiveBoundary  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:01 
     25Created on 13-Mar-2012 11:08:13 
    2626 
    2727@author: mnagni 
     
    5050 
    5151    def __eq__(self, y): 
     52        if type(self) != type(y): 
     53            return False 
    5254        ''' 
    5355        Cannot compare classes which do not define a "__key" attribute  
     
    5860 
    5961    def __hash__(self): 
    60         return hash(self.__key()) 
     62        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_curveinterpolation.py

    r8091 r8160  
    2020 
    2121from ascore.ascodelist import  ASCodeList  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:05 
    2626 
    2727@author: mnagni 
     
    3636    ''' 
    3737    cl_linear = "linear"  
     38    cl_cubicspline = "cubicSpline"  
    3839    cl_conic = "conic"  
    39     cl_circulararc3points = "circularArc3Points"  
     40    cl_polynomialspline = "polynomialSpline"  
    4041    cl_circulararc2pointwithbulge = "circularArc2PointWithBulge"  
    4142    cl_geodesic = "geodesic"  
    42     cl_cubicspline = "cubicSpline"  
    43     cl_polynomialspline = "polynomialSpline"  
     43    cl_clothoid = "clothoid"  
    4444    cl_elliptical = "elliptical"  
    45     cl_clothoid = "clothoid"  
     45    cl_circulararc3points = "circularArc3Points"  
    4646    cl_rationalspline = "rationalSpline"  
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_curvesegment.py

    r8091 r8160  
    1919 
    2020 
    21 from ascore.utils import has_value 
     21from ascore.utils import has_value, collectionProofHash 
    2222 
    2323''' 
    24 Created on 16-Feb-2012 16:18:03 
     24Created on 13-Mar-2012 11:08:14 
    2525 
    2626@author: mnagni 
     
    4040    def __init__(self): 
    4141 
     42        self.curve = None 
    4243        self.numDerivativesAtEnd = None 
    43         self.curve = None 
    4444        self.interpolation = None 
    4545        self.numDerivativesAtStart = None 
     
    4848 
    4949    def __key(self): 
    50         return (self.numDerivativesAtEnd, self.curve, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior) 
     50        return (self.curve, self.numDerivativesAtEnd, self.interpolation, self.numDerivativesAtStart, self.numDerivativeInterior) 
    5151 
    5252    def __eq__(self, y): 
     53        if type(self) != type(y): 
     54            return False 
    5355        ''' 
    5456        Cannot compare classes which do not define a "__key" attribute  
     
    5961 
    6062    def __hash__(self): 
    61         return hash(self.__key()) 
     63        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_orientablecurve.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive import  GM_OrientablePrimitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:02 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
    5656        self.composite = [] 
     57        self._CRS_sc_compoundcrs = None 
    5758        self._CRS_sc_singlecrs = None 
    58         self._CRS_sc_compoundcrs = None 
    5959        self.orientation = None 
    6060        self._proxy_gm_orientablesurface = None 
    6161        self._proxy_gm_orientablecurve = None 
    62         self._containingPrimitive_gm_orientableprimitive = [] 
    6362        self._containingPrimitive_gm_point = [] 
    6463        self._containingPrimitive_gm_solid = [] 
     64        self._containingPrimitive_gm_orientableprimitive = [] 
    6565        self.complex = [] 
    66         self._primitive_gm_orientableprimitive = None 
    6766        self._primitive_gm_point = None 
    6867        self._primitive_gm_solid = None 
     68        self._primitive_gm_orientableprimitive = None 
    6969        super(GM_OrientableCurve, self).__init__() 
    7070 
     
    145145 
    146146    def __eq__(self, y): 
     147        if type(self) != type(y): 
     148            return False 
    147149        ''' 
    148150        Cannot compare classes which do not define a "__key" attribute  
     
    153155 
    154156    def __hash__(self): 
    155         return hash(self.__key()) 
     157        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_orientableprimitive.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_primitive import  GM_Primitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:03 
     25Created on 13-Mar-2012 11:08:06 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
     56        self._CRS_sc_compoundcrs = None 
    5657        self._CRS_sc_singlecrs = None 
    57         self._CRS_sc_compoundcrs = None 
    5858        self.orientation = None 
    5959        self._proxy_gm_orientablesurface = None 
    6060        self._proxy_gm_orientablecurve = None 
    61         self._containingPrimitive_gm_orientableprimitive = [] 
    6261        self._containingPrimitive_gm_point = [] 
    6362        self._containingPrimitive_gm_solid = [] 
     63        self._containingPrimitive_gm_orientableprimitive = [] 
    6464        self.complex = [] 
    65         self._primitive_gm_orientableprimitive = None 
    6665        self._primitive_gm_point = None 
    6766        self._primitive_gm_solid = None 
     67        self._primitive_gm_orientableprimitive = None 
    6868        super(GM_OrientablePrimitive, self).__init__() 
    6969 
     
    126126    @property 
    127127    def primitive(self):         
    128         if(has_value(self._primitive_gm_orientableprimitive)): 
    129             return self._primitive_gm_orientableprimitive 
    130128        if(has_value(self._primitive_gm_point)): 
    131129            return self._primitive_gm_point 
    132130        if(has_value(self._primitive_gm_solid)): 
    133131            return self._primitive_gm_solid 
     132        if(has_value(self._primitive_gm_orientableprimitive)): 
     133            return self._primitive_gm_orientableprimitive 
    134134        return  None 
    135135 
     
    137137    def primitive(self, value):  
    138138        valueClass = "%s.%s" % (type(value).__module__,type(value).__name__) 
     139        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
     140            self._primitive_gm_point = value 
     141            self._primitive_gm_solid = None 
     142            self._primitive_gm_orientableprimitive = None 
     143        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid.GM_Solid": 
     144            self._primitive_gm_solid = value 
     145            self._primitive_gm_point = None 
     146            self._primitive_gm_orientableprimitive = None 
    139147        if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
    140148            self._primitive_gm_orientableprimitive = value 
    141149            self._primitive_gm_point = None 
    142150            self._primitive_gm_solid = None 
    143         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
    144             self._primitive_gm_point = value 
    145             self._primitive_gm_orientableprimitive = None 
    146             self._primitive_gm_solid = None 
    147         if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid.GM_Solid": 
    148             self._primitive_gm_solid = value 
    149             self._primitive_gm_orientableprimitive = None 
    150             self._primitive_gm_point = None 
    151151 
    152152    def __key(self): 
     
    154154 
    155155    def __eq__(self, y): 
     156        if type(self) != type(y): 
     157            return False 
    156158        ''' 
    157159        Cannot compare classes which do not define a "__key" attribute  
     
    162164 
    163165    def __hash__(self): 
    164         return hash(self.__key()) 
     166        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_orientablesurface.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive import  GM_OrientablePrimitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
    5656        self.composite = [] 
     57        self._CRS_sc_compoundcrs = None 
    5758        self._CRS_sc_singlecrs = None 
    58         self._CRS_sc_compoundcrs = None 
    5959        self.orientation = None 
    6060        self._proxy_gm_orientablesurface = None 
    6161        self._proxy_gm_orientablecurve = None 
    62         self._containingPrimitive_gm_orientableprimitive = [] 
    6362        self._containingPrimitive_gm_point = [] 
    6463        self._containingPrimitive_gm_solid = [] 
     64        self._containingPrimitive_gm_orientableprimitive = [] 
    6565        self.complex = [] 
    66         self._primitive_gm_orientableprimitive = None 
    6766        self._primitive_gm_point = None 
    6867        self._primitive_gm_solid = None 
     68        self._primitive_gm_orientableprimitive = None 
    6969        super(GM_OrientableSurface, self).__init__() 
    7070 
     
    145145 
    146146    def __eq__(self, y): 
     147        if type(self) != type(y): 
     148            return False 
    147149        ''' 
    148150        Cannot compare classes which do not define a "__key" attribute  
     
    153155 
    154156    def __hash__(self): 
    155         return hash(self.__key()) 
     157        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_point.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_primitive import  GM_Primitive  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:11 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
    5656        self.composite = [] 
     57        self._CRS_sc_compoundcrs = None 
    5758        self._CRS_sc_singlecrs = None 
    58         self._CRS_sc_compoundcrs = None 
    5959        self.gridPoint = [] 
    6060        self._proxy_gm_orientablesurface = None 
    6161        self._proxy_gm_orientablecurve = None 
    62         self._containingPrimitive_gm_orientableprimitive = [] 
    6362        self._containingPrimitive_gm_point = [] 
    6463        self._containingPrimitive_gm_solid = [] 
     64        self._containingPrimitive_gm_orientableprimitive = [] 
    6565        self.complex = [] 
    6666        self.position = None 
     
    127127 
    128128    def __eq__(self, y): 
     129        if type(self) != type(y): 
     130            return False 
    129131        ''' 
    130132        Cannot compare classes which do not define a "__key" attribute  
     
    135137 
    136138    def __hash__(self): 
    137         return hash(self.__key()) 
     139        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_primitive.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometry_root.gm_object import  GM_Object  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:04 
     25Created on 13-Mar-2012 11:08:06 
    2626 
    2727@author: mnagni 
     
    4343 
    4444        self._topology_tp_directedtopo = [] 
     45        self._topology_tp_solid = [] 
    4546        self._topology_tp_edge = [] 
    4647        self._topology_tp_node = [] 
    47         self._topology_tp_solid = [] 
    4848        self._topology_tp_face = [] 
    49         self._containedPrimitive_gm_orientableprimitive = [] 
    5049        self._containedPrimitive_gm_point = [] 
    5150        self._containedPrimitive_gm_solid = [] 
     51        self._containedPrimitive_gm_orientableprimitive = [] 
     52        self._composite_gm_compositesolid = [] 
    5253        self._composite_gm_compositecurve = [] 
    53         self._composite_gm_compositesolid = [] 
     54        self._composite_gm_compositepoint = [] 
    5455        self._composite_gm_compositesurface = [] 
    55         self._composite_gm_compositepoint = [] 
     56        self._CRS_sc_compoundcrs = None 
    5657        self._CRS_sc_singlecrs = None 
    57         self._CRS_sc_compoundcrs = None 
    5858        self._proxy_gm_orientablesurface = None 
    5959        self._proxy_gm_orientablecurve = None 
    60         self._containingPrimitive_gm_orientableprimitive = [] 
    6160        self._containingPrimitive_gm_point = [] 
    6261        self._containingPrimitive_gm_solid = [] 
     62        self._containingPrimitive_gm_orientableprimitive = [] 
    6363        self.complex = [] 
    6464        super(GM_Primitive, self).__init__() 
     
    6969        for item in self._topology_tp_directedtopo: 
    7070            ret.append(item) 
     71        for item in self._topology_tp_solid: 
     72            ret.append(item) 
    7173        for item in self._topology_tp_edge: 
    7274            ret.append(item) 
    7375        for item in self._topology_tp_node: 
    74             ret.append(item) 
    75         for item in self._topology_tp_solid: 
    7676            ret.append(item) 
    7777        for item in self._topology_tp_face: 
     
    8383        if isinstance(value, list): 
    8484            self._topology_tp_directedtopo[:] 
     85            self._topology_tp_solid[:] 
    8586            self._topology_tp_edge[:] 
    8687            self._topology_tp_node[:] 
    87             self._topology_tp_solid[:] 
    8888            self._topology_tp_face[:] 
    8989            for item in value: 
     
    9292                    self._topology_tp_directedtopo.append(item) 
    9393                    continue 
     94                if valueClass == "ea_model.iso_19107_2003_spatial_schema.topology.topological_primitive.tp_solid.TP_Solid": 
     95                    self._topology_tp_solid.append(item) 
     96                    continue 
    9497                if valueClass == "ea_model.iso_19107_2003_spatial_schema.topology.topological_primitive.tp_edge.TP_Edge": 
    9598                    self._topology_tp_edge.append(item) 
     
    98101                    self._topology_tp_node.append(item) 
    99102                    continue 
    100                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.topology.topological_primitive.tp_solid.TP_Solid": 
    101                     self._topology_tp_solid.append(item) 
    102                     continue 
    103103                if valueClass == "ea_model.iso_19107_2003_spatial_schema.topology.topological_primitive.tp_face.TP_Face": 
    104104                    self._topology_tp_face.append(item) 
     
    108108    def containedPrimitive(self):        
    109109        ret = [] 
     110        for item in self._containedPrimitive_gm_point: 
     111            ret.append(item) 
     112        for item in self._containedPrimitive_gm_solid: 
     113            ret.append(item) 
    110114        for item in self._containedPrimitive_gm_orientableprimitive: 
    111             ret.append(item) 
    112         for item in self._containedPrimitive_gm_point: 
    113             ret.append(item) 
    114         for item in self._containedPrimitive_gm_solid: 
    115115            ret.append(item) 
    116116        return ret 
     
    119119    def containedPrimitive(self, value):         
    120120        if isinstance(value, list): 
    121             self._containedPrimitive_gm_orientableprimitive[:] 
    122121            self._containedPrimitive_gm_point[:] 
    123122            self._containedPrimitive_gm_solid[:] 
    124             for item in value: 
    125                 valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     123            self._containedPrimitive_gm_orientableprimitive[:] 
     124            for item in value: 
     125                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     126                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
     127                    self._containedPrimitive_gm_point.append(item) 
     128                    continue 
     129                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid.GM_Solid": 
     130                    self._containedPrimitive_gm_solid.append(item) 
     131                    continue 
    126132                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
    127133                    self._containedPrimitive_gm_orientableprimitive.append(item) 
    128134                    continue 
    129                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
    130                     self._containedPrimitive_gm_point.append(item) 
    131                     continue 
    132                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid.GM_Solid": 
    133                     self._containedPrimitive_gm_solid.append(item) 
    134                     continue 
    135135 
    136136    @property 
    137137    def composite(self):         
    138138        ret = [] 
     139        for item in self._composite_gm_compositesolid: 
     140            ret.append(item) 
    139141        for item in self._composite_gm_compositecurve: 
    140142            ret.append(item) 
    141         for item in self._composite_gm_compositesolid: 
     143        for item in self._composite_gm_compositepoint: 
    142144            ret.append(item) 
    143145        for item in self._composite_gm_compositesurface: 
    144             ret.append(item) 
    145         for item in self._composite_gm_compositepoint: 
    146146            ret.append(item) 
    147147        return ret 
     
    150150    def composite(self, value):  
    151151        if isinstance(value, list): 
     152            self._composite_gm_compositesolid[:] 
    152153            self._composite_gm_compositecurve[:] 
    153             self._composite_gm_compositesolid[:] 
     154            self._composite_gm_compositepoint[:] 
    154155            self._composite_gm_compositesurface[:] 
    155             self._composite_gm_compositepoint[:] 
    156             for item in value: 
    157                 valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     156            for item in value: 
     157                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     158                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositesolid.GM_CompositeSolid": 
     159                    self._composite_gm_compositesolid.append(item) 
     160                    continue 
    158161                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositecurve.GM_CompositeCurve": 
    159162                    self._composite_gm_compositecurve.append(item) 
    160163                    continue 
    161                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositesolid.GM_CompositeSolid": 
    162                     self._composite_gm_compositesolid.append(item) 
     164                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositepoint.GM_CompositePoint": 
     165                    self._composite_gm_compositepoint.append(item) 
    163166                    continue 
    164167                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositesurface.GM_CompositeSurface": 
    165168                    self._composite_gm_compositesurface.append(item) 
    166                     continue 
    167                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositepoint.GM_CompositePoint": 
    168                     self._composite_gm_compositepoint.append(item) 
    169169                    continue 
    170170 
     
    198198    def containingPrimitive(self):       
    199199        ret = [] 
     200        for item in self._containingPrimitive_gm_point: 
     201            ret.append(item) 
     202        for item in self._containingPrimitive_gm_solid: 
     203            ret.append(item) 
    200204        for item in self._containingPrimitive_gm_orientableprimitive: 
    201             ret.append(item) 
    202         for item in self._containingPrimitive_gm_point: 
    203             ret.append(item) 
    204         for item in self._containingPrimitive_gm_solid: 
    205205            ret.append(item) 
    206206        return ret 
     
    209209    def containingPrimitive(self, value):        
    210210        if isinstance(value, list): 
    211             self._containingPrimitive_gm_orientableprimitive[:] 
    212211            self._containingPrimitive_gm_point[:] 
    213212            self._containingPrimitive_gm_solid[:] 
    214             for item in value: 
    215                 valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     213            self._containingPrimitive_gm_orientableprimitive[:] 
     214            for item in value: 
     215                valueClass = "%s.%s" % (type(item).__module__,type(item).__name__) 
     216                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
     217                    self._containingPrimitive_gm_point.append(item) 
     218                    continue 
     219                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid.GM_Solid": 
     220                    self._containingPrimitive_gm_solid.append(item) 
     221                    continue 
    216222                if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_orientableprimitive.GM_OrientablePrimitive": 
    217223                    self._containingPrimitive_gm_orientableprimitive.append(item) 
    218224                    continue 
    219                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_point.GM_Point": 
    220                     self._containingPrimitive_gm_point.append(item) 
    221                     continue 
    222                 if valueClass == "ea_model.iso_19107_2003_spatial_schema.geometry.geometric_primitive.gm_solid.GM_Solid": 
    223                     self._containingPrimitive_gm_solid.append(item) 
    224                     continue 
    225225 
    226226    def __key(self): 
     
    228228 
    229229    def __eq__(self, y): 
     230        if type(self) != type(y): 
     231            return False 
    230232        ''' 
    231233        Cannot compare classes which do not define a "__key" attribute  
     
    236238 
    237239    def __hash__(self): 
    238         return hash(self.__key()) 
     240        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_primitiveboundary.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometry_root.gm_boundary import  GM_Boundary  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:17:59 
     25Created on 13-Mar-2012 11:08:09 
    2626 
    2727@author: mnagni 
     
    4848 
    4949    def __eq__(self, y): 
     50        if type(self) != type(y): 
     51            return False 
    5052        ''' 
    5153        Cannot compare classes which do not define a "__key" attribute  
     
    5658 
    5759    def __hash__(self): 
    58         return hash(self.__key()) 
     60        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_ring.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositecurve import  GM_CompositeCurve  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:07 
     25Created on 13-Mar-2012 11:08:07 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_compositecurve = GM_CompositeCurve()    
    4343 
    44         self._containedPrimitive_gm_orientableprimitive = [] 
    4544        self._containedPrimitive_gm_point = [] 
    4645        self._containedPrimitive_gm_solid = [] 
     46        self._containedPrimitive_gm_orientableprimitive = [] 
     47        self.composite = [] 
     48        self._composite_gm_compositesolid = [] 
    4749        self._composite_gm_compositecurve = [] 
    48         self._composite_gm_compositesolid = [] 
     50        self._composite_gm_compositepoint = [] 
    4951        self._composite_gm_compositesurface = [] 
    50         self._composite_gm_compositepoint = [] 
    51         self.composite = [] 
    5252        self.orientation = None 
    53         self._containingPrimitive_gm_orientableprimitive = [] 
    5453        self._containingPrimitive_gm_point = [] 
    5554        self._containingPrimitive_gm_solid = [] 
    56         self._element_gm_orientableprimitive = [] 
     55        self._containingPrimitive_gm_orientableprimitive = [] 
    5756        self._element_gm_point = [] 
    5857        self._element_gm_solid = [] 
     58        self._element_gm_orientableprimitive = [] 
     59        self._generator_gm_curve = [] 
    5960        self._generator_gm_compositecurve = [] 
    60         self._generator_gm_curve = [] 
    6161        self.topology = None 
    6262        self._topology_tp_directedtopo = [] 
     63        self._topology_tp_solid = [] 
    6364        self._topology_tp_edge = [] 
    6465        self._topology_tp_node = [] 
    65         self._topology_tp_solid = [] 
    6666        self._topology_tp_face = [] 
     67        self._CRS_sc_compoundcrs = None 
    6768        self._CRS_sc_singlecrs = None 
    68         self._CRS_sc_compoundcrs = None 
    6969        self.subComplex = [] 
    70         self.superComplex = [] 
    7170        self._proxy_gm_orientablesurface = None 
    7271        self._proxy_gm_orientablecurve = None 
    73         self._primitive_gm_orientableprimitive = None 
     72        self.superComplex = [] 
    7473        self._primitive_gm_point = None 
    7574        self._primitive_gm_solid = None 
     75        self._primitive_gm_orientableprimitive = None 
    7676        self.complex = [] 
    7777        super(GM_Ring, self).__init__() 
     
    8484    def containedPrimitive(self, value):         
    8585            self._gm_compositecurve.containedPrimitive = value 
    86  
    87     @property 
    88     def composite(self):         
    89         return self._gm_compositecurve.composite 
    90  
    91     @composite.setter 
    92     def composite(self, value):  
    93             self._gm_compositecurve.composite = value 
    9486 
    9587    @property 
     
    142134 
    143135    @property 
    144     def topology(self):  
    145         return self._gm_compositecurve.topology 
    146  
    147     @topology.setter 
    148     def topology(self, value):   
    149             self._gm_compositecurve.topology = value 
    150  
    151     @property 
    152136    def CRS(self):       
    153137        return self._gm_compositecurve.CRS 
     
    166150 
    167151    @property 
     152    def proxy(self):     
     153        return self._gm_compositecurve.proxy 
     154 
     155    @proxy.setter 
     156    def proxy(self, value):      
     157            self._gm_compositecurve.proxy = value 
     158 
     159    @property 
    168160    def superComplex(self):      
    169161        return self._gm_compositecurve.superComplex 
     
    172164    def superComplex(self, value):       
    173165            self._gm_compositecurve.superComplex = value 
    174  
    175     @property 
    176     def proxy(self):     
    177         return self._gm_compositecurve.proxy 
    178  
    179     @proxy.setter 
    180     def proxy(self, value):      
    181             self._gm_compositecurve.proxy = value 
    182166 
    183167    @property 
     
    198182 
    199183    def __key(self): 
    200         return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.element, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.superComplex, self.proxy, self.primitive, self.complex) 
     184        return (self.containedPrimitive, self.composite, self.composite, self.orientation, self.containingPrimitive, self.element, self.generator, self.topology, self.topology, self.CRS, self.subComplex, self.proxy, self.superComplex, self.primitive, self.complex) 
    201185 
    202186    def __eq__(self, y): 
     187        if type(self) != type(y): 
     188            return False 
    203189        ''' 
    204190        Cannot compare classes which do not define a "__key" attribute  
     
    209195 
    210196    def __hash__(self): 
    211         return hash(self.__key()) 
     197        return collectionProofHash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19107_2003_spatial_schema/geometry/geometric_primitive/gm_shell.py

    r8091 r8160  
    2020 
    2121from ea_model.iso_19107_2003_spatial_schema.geometry.geometric_complex.gm_compositesurface import  GM_CompositeSurface  
    22 from ascore.utils import has_value 
     22from ascore.utils import has_value, collectionProofHash 
    2323 
    2424''' 
    25 Created on 16-Feb-2012 16:18:10 
     25Created on 13-Mar-2012 11:08:06 
    2626 
    2727@author: mnagni 
     
    4242        self._gm_compositesurface = GM_CompositeSurface()        
    4343 
    44         self._containedPrimitive_gm_orientableprimitive = [] 
    4544        self._containedPrimitive_gm_point = [] 
    4645        self._containedPrimitive_gm_solid = [] 
     46        self._containedPrimitive_gm_orientableprimitive = [] 
     47        self.composite = [] 
     48        self._composite_gm_compositesolid = [] 
    4749        self._composite_gm_compositecurve = [] 
    48         self._composite_gm_compositesolid = [] 
     50        self._composite_gm_compositepoint = [] 
    4951        self._composite_gm_compositesurface = [] 
    50         self._composite_gm_compositepoint = [] 
    51         self.composite = [] 
    5252        self.orientation = None 
    53         self._containingPrimitive_gm_orientableprimitive = [] 
    5453        self._containingPrimitive_gm_point = [] 
    5554        self._containingPrimitive_gm_solid = [] 
    56         self._element_gm_orientableprimitive = [] 
     55        self._containingPrimitive_gm_orientableprimitive = [] 
    5756        self._element_gm_point = [] 
    5857        self._element_gm_solid = [] 
     58        self._element_gm_orientableprimitive = [] 
     59        self._generator_gm_surface = [] 
    5960        self._generator_gm_compositesurface = [] 
    60         self._generator_gm_surface = [] 
    6161        self.topology = None 
    6262        self._topology_tp_directedtopo = [] 
     63        self._topology_tp_solid = [] 
    6364        self._topology_tp_edge = [] 
    6465        self._topology_tp_node = [] 
    65         self._topology_tp_solid = [] 
    6666        self._topology_tp_face = [] 
     67        self._CRS_sc_compoundcrs = None 
    6768        self._CRS_sc_singlecrs = None 
    68         self._CRS_sc_compoundcrs = None 
    6969        self.subComplex = [] 
    70         self.superComplex = [] 
    7170        self._proxy_gm_orientablesurface = None 
    7271        self._proxy_gm_orientablecurve = None 
    73         self._primitive_gm_orientableprimitive = None 
     72        self.superComplex = [] 
    7473        self._primitive_gm_point = None 
    7574        self._primitive_gm_solid = None 
     75        self._primitive_gm_orientableprimitive = None 
    7676        self.complex = [] 
    7777        super(GM_Shell, self).__init__() 
     
    8484    def containedPrimitive(self, value):         
    8585            self._gm_compositesurface.containedPrimitive = value 
    86  
    87     @property 
    88     def composite(self):         
    89         return self._gm_compositesurface.composite 
    90  
    91     @composite.setter 
    92     def composite(self, value):  
    93             self._gm_compositesurface.composite = value 
    9486 
    9587    @property