#!/usr/bin/env python
__author__    = 'Kurt Schwehr'
__version__   = '$Revision: 4799 $'.split()[1]
__revision__  = __version__ # For pylint
__date__ = '$Date: 2006-09-25 11:09:02 -0400 (Mon, 25 Sep 2006) $'.split()[1]
__copyright__ = '2008'
__license__   = 'GPL v3'
__contact__   = 'kurt at ccom.unh.edu'
#__deprecated__

__doc__ ='''

@requires: U{Python<http://python.org/>} >= 2.5
@requires: U{epydoc<http://epydoc.sourceforge.net/>} >= 3.0.1

@undocumented: __doc__ parser
@since: 2008-Feb-09
@status: under development
@organization: U{CCOM<http://ccom.unh.edu/>} 

@todo: how to deal with bad positions?
'''
def main():
    from optparse import OptionParser
    parser = OptionParser(usage="%prog [options] files",
                          version="%prog "+__version__+' ('+__date__+')')

    parser.add_option('-v', '--verbose', dest='verbose', default=False, action='store_true',
                      help='run the tests run in verbose mode')

    (options, args) = parser.parse_args()
    v = options.verbose

    print '''<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.1">
  <Document>
    <Folder id="bounding boxes">
'''
    for filename in args:
    	for line in file(filename):
	    station,x1,x2,y1,y2 = line.split()
            print '''<Placemark><name>%s</name><Polygon>
  <!-- specific to Polygon -->
  <extrude>0</extrude>                       <!-- boolean -->
  <tessellate>1</tessellate>                 <!-- boolean -->
  <altitudeMode>clampToGround</altitudeMode> 
  <outerBoundaryIs>
    <LinearRing>
      <coordinates>%s,%s,1000 %s,%s,1000 %s,%s,1000 %s,%s,1000 %s,%s,1000</coordinates>         <!-- lon,lat[,alt] -->
    </LinearRing>
  </outerBoundaryIs>
</Polygon></Placemark>
''' % (station, x1,y1, x1,y2, x2,y2, x2,y1, x1,y1)
            x = (float(x1)+float(x2))/2.
            y = (float(y1)+float(y2))/2.

            print '''<Placemark><name>%s</name><Point><coordinates>%f,%f</coordinates></Point></Placemark>''' % (station,x,y)

    print '</Folder></Document></kml>'
    

if __name__ == '__main__':
    main()

