Ignore:
Timestamp:
22/06/07 15:37:04 (12 years ago)
Author:
domlowe
Message:

added fix to check ordering of output axes, fixes latitude reversal problem

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/csml/API/genSubset.py

    r2598 r2633  
    8888            arraySize=len(subsetDomain[key].split()) 
    8989        totalArraySize = totalArraySize * arraySize 
    90    
     90     
     91     
     92    #Finally, check the order of the subsetDomain is the same as the order of the kwargs: 
     93    #eg. if the kwargs = (-90,90), then the subsetDomain  should not be 90 to -90. 
     94    KWordering={}     
     95    for kw in kwargs: 
     96        if kw in ['longitude', 'time']:  #TODO should get these names from the CRS... 
     97            continue 
     98        if len(kwargs[kw]) >1:  
     99            if kwargs[kw][0] > kwargs[kw][-1]: 
     100                KWordering[kw]= 'highlow' 
     101            else: 
     102                KWordering[kw]= 'lowhigh' 
     103             
     104    for kw in KWordering: 
     105        if eval(subsetDomain[kw].split(',')[0]) > eval(subsetDomain[kw].split(',')[-1]): 
     106            subOrder='highlow' 
     107        else: 
     108            subOrder='lowhigh' 
     109        #if order needs reversing, reverse the values in the subset domain string            
     110        if subOrder != KWordering[kw]: 
     111            valList=[] 
     112            valList= subsetDomain[kw].split(',') 
     113            valStr='' 
     114            valList.reverse() 
     115            for val in valList: 
     116                valStr=valStr + ',' + val    
     117            subsetDomain[kw] = valStr[1:] 
    91118    return subsetDomain, totalArraySize 
    92119     
Note: See TracChangeset for help on using the changeset viewer.