Changeset 2001 for TI02-CSML/trunk


Ignore:
Timestamp:
15/01/07 11:52:52 (13 years ago)
Author:
domlowe
Message:

several changes made to enable proper use of CRS

Location:
TI02-CSML/trunk/csml
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/csml/csmllibs/csmlcrs.py

    r1979 r2001  
    105105                continue 
    106106            match=0 
    107             axisorder=[] 
     107            axisorder={} 
    108108            for ax in self.systems[system].axes: 
    109109                if ax in crsMap: 
    110                     axisorder.append(crsMap.index(ax)) 
     110                    axisorder[ax]=crsMap.index(ax) 
    111111                else: 
    112112                    match = 1 
  • TI02-CSML/trunk/csml/csmllibs/csmlfeaturetypes.py

    r2000 r2001  
    127127                gsDomain.axisLabels=crs.axisLabels # note this is the xml attribute axisLabels, not the child element (aLabels) 
    128128                gsDomain.srsDimension=crs.srsDimension 
    129                 gsDomain.aLabels=cp.csString('blah') 
     129                aLabels='' 
     130                for dim in dimNames: 
     131                    aLabels=aLabels + dim + ' ' 
     132                gsDomain.aLabels=cp.csString(aLabels) 
    130133                gcT=cp.GridCoordinatesTable() 
    131134                #add an axisName element(s) for  each spatial dimension. 
     
    136139                ordinates=[] 
    137140                for dimName in enumerate(dimNames): 
    138                     ord=cp.GridOrdinateDescription() 
    139                     ord.gridAxesSpanned=cp.csString('dim' + str(dimName[0])) 
    140                     ord.coordAxisLabel=cp.csString(dimName[1]) 
    141                     ord.sequenceRule=cp.csString(csml.csmllibs.csmlextra.getSeqRule(len(dimNames))) 
     141                    ord=cp.GridOrdinateDescription()                 
     142                    #map the grid axis to the crs axis 
     143                    for axis in axisorder: 
     144                        if axisorder[axis]==dimName[0]: 
     145                            ord.coordAxisLabel=cp.csString(axis) 
     146                            ord.gridAxesSpanned=cp.csString(dimName[1]) 
     147                            break 
     148                    seqRule= cp.SequenceRule() 
     149                    seqRule.CONTENT='Linear' 
     150                    seqRule.axisOrder='+1'  #TO DO. Work this out. 
     151                    ord.sequenceRule=seqRule 
    142152                    sptList=cp.SpatialOrTemporalPositionList() 
    143153                     
  • TI02-CSML/trunk/csml/parser.py

    r2000 r2001  
    432432    def __init__(self, **kwargs): 
    433433        AbstractGML.__init__(self,**kwargs) 
    434         children={'coordAxisLabel':[CSML('coordAxisLabel'), 'csString'], 'coordAxisValues':[CSML('SpatialOrTemporalPositionList'),'SpatialOrTemporalPositionList',CSML('coordAxisValues')], 'gridAxesSpanned':[CSML('gridAxesSpanned'), 'csString'], 'sequenceRule':[CSML('sequenceRule'),'SequenceRuleType']} 
    435         addchildren(self,children) 
    436  
    437 class SequenceRuleType(csElement): 
     434        children={'coordAxisLabel':[CSML('coordAxisLabel'), 'csString'], 'coordAxisValues':[CSML('SpatialOrTemporalPositionList'),'SpatialOrTemporalPositionList',CSML('coordAxisValues')], 'gridAxesSpanned':[CSML('gridAxesSpanned'), 'csString'], 'sequenceRule':[CSML('sequenceRule'),'SequenceRule']} 
     435        addchildren(self,children) 
     436 
     437class SequenceRule(csElement): 
    438438    def __init__(self, **kwargs): 
    439439        a=['axisOrder'] 
     
    445445    def __init__(self, **kwargs): 
    446446        AbstractGML.__init__(self,**kwargs) 
    447         children={'posList':[CSML('posList'),'csString'],'sequenceRule':[CSML('sequenceRule'),'SequenceRuleType']} 
     447        children={'posList':[CSML('posList'),'csString'],'sequenceRule':[CSML('sequenceRule'),'SequenceRule']} 
    448448        addchildren(self,children) 
    449449 
Note: See TracChangeset for help on using the changeset viewer.