Changeset 658


Ignore:
Timestamp:
28/02/06 17:20:04 (14 years ago)
Author:
domlowe
Message:

more work on rangeset

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/newparser/Parser.py

    r657 r658  
    665665            self.verticalAngle=verticalAngle 
    666666    def fromXML(self, csmlFrag): 
    667          for frag in csmlFrag.getchildren(): 
     667        for frag in csmlFrag.getchildren(): 
    668668            if frag.tag==GML('horizontalAngle'): 
    669669                self.horizontalAngle=frag.text 
     670                if frag.attrib.has_key('uom'): 
     671                    self.uom_H=frag.attrib['uom'] 
    670672            elif frag.tag==GML('verticalAngle'): 
    671673                self.verticalAngle=frag.text 
     674                if frag.attrib.has_key('uom'): 
     675                    self.uom_V=frag.attrib['uom'] 
    672676    def toXML(self,csmlFrag): 
    673677         if hasattr(self,'horizontalAngle'): 
    674678            frag = Element(GML('horizontalAngle')) 
    675679            frag.text=self.horizontalAngle 
    676             csmlFrag.append(frag) 
     680            if hasattr(self,'uom_H'): 
     681                frag.attrib['uom'] = self.uom_H 
     682            csmlFrag.append(frag) 
     683             
    677684         if hasattr(self,'verticalAngle'): 
    678685            frag = Element(GML('verticalAngle')) 
    679686            frag.text=self.verticalAngle 
     687            if hasattr(self,'uom_V'): 
     688                frag.attrib['uom'] = self.uom_V 
    680689            csmlFrag.append(frag) 
    681690         
     
    732741            if frag.tag==CSML('direction'): 
    733742                self.direction=direction() 
    734                 direction.fromXML(self.direction,csmlFrag) 
     743                direction.fromXML(self.direction,frag) 
    735744    def toXML(self, csmlFrag): 
    736745        Position.toXML(self,csmlFrag) 
     
    770779            csmlFrag.append(frag) 
    771780        return csmlFrag 
    772          
     781 
     782class valueComponents: 
     783    def __init__(self): 
     784        pass 
     785    def fromXML(self,csmlFrag): 
     786#         for frag in csmlFrag.getchildren(): 
     787#                 if frag.tag == GML('measure'): 
     788#                     checkArrayAttrib(self,'members') 
     789#                     self.members.append(....) 
     790#                     self.members[-1].fromXML(frag) 
     791        pass 
     792    def toXML(self, csmlFrag): 
     793        return csmlFrag 
     794 
     795class CompositeValue: 
     796    def __init__(self): 
     797        pass 
     798    def fromXML(self,csmlFrag): 
     799          for frag in csmlFrag.getchildren(): 
     800            if frag.tag == GML('valueComponents'): 
     801                self.valueComponents=valueComponents() 
     802                valueComponents.fromXML(self.valueComponents,frag)  
     803    def toXML(self, csmlFrag): 
     804        if hasattr(self,'valueComponents'): 
     805            frag=Element(GML('valueComponents')) 
     806            valueComponents.toXML(self.valueComponents,frag) 
     807            csmlFrag.append(frag) 
     808        return csmlFrag 
     809     
     810class rangeParameters: 
     811    def __init__(self, CompositeValue=None): 
     812        if CompositeValue: 
     813            self.CompositeValue=CompositeValue 
     814    def fromXML(self,csmlFrag): 
     815        for frag in csmlFrag.getchildren(): 
     816            if frag.tag == GML('CompositeValue'): 
     817                self.CompositeValue=CompositeValue() 
     818                CompositeValue.fromXML(self.CompositeValue,frag)  
     819    def toXML(self,csmlFrag): 
     820        if hasattr(self,'CompositeValue'): 
     821            frag=Element(GML('CompositeValue')) 
     822            CompositeValue.toXML(self.CompositeValue,frag) 
     823            csmlFrag.append(frag) 
     824        return csmlFrag 
     825     
     826class DataBlock: 
     827    #class GML DataBlock 
     828     
     829    #DataBlock() 
     830    #+gml:rangeParameters 
     831    def __init__(self,rangeParameters=None): 
     832        if rangeParameters: 
     833            self.rangeParameters=rangeParameters 
     834    def fromXML(self,csmlFrag): 
     835        for frag in csmlFrag.getchildren(): 
     836            if frag.tag == GML('rangeParameters'): 
     837                self.rangeParameters=rangeParameters() 
     838                rangeParameters.fromXML(self.rangeParameters,frag) 
     839    def toXML(self,csmlFrag): 
     840        if hasattr(self, 'rangeParameters'): 
     841            frag=Element(GML('rangeParameters')) 
     842            rangeParameters.toXML(self.rangeParameters, frag) 
     843            csmlFrag.append(frag) 
     844        return csmlFrag 
     845     
     846 
     847    #class GML DataBlock 
    773848class rangeSet: 
    774     def __init__(self,QuantityList=None, uom=None): 
     849#class GML rangeSet 
     850 
     851        # rangeSet() 
     852        # +gml:ValueArray 
     853        # +gml:_ScalarValueList 
     854        # +gml:DataBlock 
     855        # +gml:File 
     856    #class GML rangeSet 
     857    def __init__(self,QuantityList=None, DataBlock=None): 
    775858        if QuantityList: 
    776859            self.QuantityList=QuantityList 
    777         if uom: 
    778             self.uom=uom 
     860        if DataBlock: 
     861            self.DataBlock=DataBlock 
    779862    def fromXML(self,csmlFrag): 
    780863        for frag in csmlFrag.getchildren(): 
     
    783866                if frag.attrib.has_key('uom'): 
    784867                    self.uom = frag.attrib['uom'] 
     868            if frag.tag==GML('DataBlock'): 
     869                self.DataBlock=DataBlock() 
     870                DataBlock.fromXML(self.DataBlock, frag) 
    785871    def toXML(self, csmlFrag): 
    786872        if hasattr(self,'QuantityList'): 
     
    789875            if hasattr(self,'uom'): 
    790876                frag.attrib['uom'] = self.uom 
     877            csmlFrag.append(frag) 
     878        if hasattr(self,'DataBlock'): 
     879            frag=Element(GML('DataBlock')) 
     880            DataBlock.toXML(self.DataBlock,frag) 
    791881            csmlFrag.append(frag) 
    792882        return csmlFrag 
     
    816906             Position.toXML(self.Position,frag) 
    817907             csmlFrag.append(frag) 
    818         if hasattr(self,'Trajectory'): 
     908        elif hasattr(self,'Trajectory'): 
    819909             frag = Element(CSML('Trajectory')) 
    820910             Trajectory.toXML(self.Trajectory,frag) 
    821911             csmlFrag.append(frag) 
     912        elif hasattr(self,'OrientedPosition'): 
     913             frag = Element(CSML('OrientedPosition')) 
     914             OrientedPosition.toXML(self.OrientedPosition,frag) 
     915             csmlFrag.append(frag) 
     916        elif hasattr(self,'OrientedTrajectory'): 
     917             frag = Element(CSML('OrientedTrajectory')) 
     918             OrientedTrajectory.toXML(self.OrientedTrajectory,frag) 
     919             csmlFrag.append(frag) 
    822920        return csmlFrag 
    823921 
     
    826924        pass 
    827925    def fromXML(self,csmlFrag): 
    828         pass 
    829     def toXML(self,csmlFrag): 
     926        for frag in csmlFrag.getchildren(): 
     927            if frag.tag==CSML('DirectPositionList'): 
     928                self.DirectPositionList=frag.text 
     929                if frag.attrib.has_key('srsName'): 
     930                    self.srsName=frag.attrib['srsName'] 
     931            elif frag.tag == CSML('Grid'): 
     932                self.Grid=Grid() 
     933                self.Grid.fromXML(frag) 
     934    def toXML(self,csmlFrag): 
     935        if hasattr(self,'DirectPositionList'): 
     936             frag = Element(CSML('DirectPositionList')) 
     937             frag.text=self.DirectPositionList 
     938             if hasattr(self, 'srsName'): 
     939                 frag.attrib['srsName']=self.srsName 
     940             csmlFrag.append(frag) 
     941        elif hasattr(self,'Grid'): 
     942             frag = Element(CSML('Grid')) 
     943             Grid.toXML(self.Grid,frag) 
     944             csmlFrag.append(frag) 
    830945        return csmlFrag 
    831946     
Note: See TracChangeset for help on using the changeset viewer.