Changeset 1505 for TI02-CSML


Ignore:
Timestamp:
11/09/06 14:32:03 (13 years ago)
Author:
domlowe
Message:

bounding box aggregation working

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/Examples/parsing/csml2moles.py

    r1504 r1505  
    2323        #envelope must be of type csml.parser.EnvelopeWithTimePeriod 
    2424        self.envelope=envelope 
    25  
     25        self.minX=self.envelope.lowerCorner.vals.split()[0] 
     26        self.minY=self.envelope.lowerCorner.vals.split()[1] 
     27        self.maxX=self.envelope.upperCorner.vals.split()[0] 
     28        self.maxY=self.envelope.upperCorner.vals.split()[1] 
     29  
    2630    def _compareLowerCorners(self,lowerCorner): 
    27         return lowerCorner 
     31        minX,minY=lowerCorner.vals.split()[0],lowerCorner.vals.split()[1] 
     32        if float(minX) < float(self.minX): 
     33            self.envelope.lowerCorner.vals=str(minX +' '+ self.minY) 
     34            self.minX=minX 
     35        if float(minY) < float(self.minY): 
     36            self.envelope.lowerCorner.vals=str(self.minX +' '+ minY) 
     37            self.minY=minY 
    2838    def _compareUpperCorners(self,upperCorner): 
     39        maxX,maxY=upperCorner.vals.split()[0],upperCorner.vals.split()[1] 
     40        if float(maxX) > float(self.maxX): 
     41            self.envelope.upperCorner.vals=str(maxX +' '+ self.maxY) 
     42            self.maxX=maxX 
     43        if float(maxY) > float(self.maxY): 
     44            self.envelope.upperCorner.vals=str(self.maxX +' '+ maxY) 
     45            self.maxY=maxY 
    2946        return upperCorner 
    3047    def _compareLowerTimes(self,timeposlist): 
     
    3956            sys.exit() 
    4057        else:  
    41             self.envelope.lowerCorner=self._compareLowerCorners(envtocheck.lowerCorner) 
    42             self.envelope.upperCorner=self._compareUpperCorners(envtocheck.upperCorner) 
    43             self.envelope.timePosition=self._compareLowerTimes(envtocheck.timePosition) 
    44             self.envelope.timePosition2=self._compareUpperTimes(envtocheck.timePosition2) 
     58            self._compareLowerCorners(envtocheck.lowerCorner) 
     59            self._compareUpperCorners(envtocheck.upperCorner) 
     60            self._compareLowerTimes(envtocheck.timePosition) 
     61            self._compareUpperTimes(envtocheck.timePosition2) 
    4562     
    4663    def getAggregatedEnvelope(self): 
    4764        return self.envelope 
    48      
     65    
    4966 
    5067 
     
    6380    finalEnvelope=aggregator.getAggregatedEnvelope() 
    6481 
     82    #test output 
     83    print finalEnvelope.lowerCorner.vals 
     84    print finalEnvelope.upperCorner.vals 
     85    print finalEnvelope.timePosition 
     86    print finalEnvelope.timePosition2 
     87     
    6588if __name__=='__main__': 
    6689    main() 
Note: See TracChangeset for help on using the changeset viewer.