#!/bin/bash
# usage:
#   geotiff2kal map.tif > map.kal
#
# convert GeoTIFF Calibration to Glopus KAL

if [ $# -ne 1 ]; then
  echo 'Syntax: geotiff2kal map.tif > map.kal'
  exit
fi

image=$1
imageinfo=$1.info
gdalinfo "$image" > "$imageinfo"

sizex=`cat "$imageinfo" | grep "^Size is " | sed "s/^Size is \(.*\), \(.*\)/\1/"`
sizey=`cat "$imageinfo" | grep "^Size is " | sed "s/^Size is \(.*\), \(.*\)/\2/"`
ul=`cat "$imageinfo" | grep "^Upper Left" | sed "s/^Upper Left.*(\(.*\),\(.*\))/\1 \2/"`
ll=`cat "$imageinfo" | grep "^Lower Left" | sed "s/^Lower Left.*(\(.*\),\(.*\))/\1 \2/"`
ur=`cat "$imageinfo" | grep "^Upper Right" | sed "s/^Upper Right.*(\(.*\),\(.*\))/\1 \2/"`
lr=`cat "$imageinfo" | grep "^Lower Right" | sed "s/^Lower Right.*(\(.*\),\(.*\))/\1 \2/"`
c=`cat "$imageinfo" | grep "^Center" | sed "s/^Center.*(\(.*\),\(.*\))/\1 \2/"`

rm "$imageinfo"

echo -e $ul 0 0 "\n" $ll 0 $sizey "\n" $ur $sizex 0 "\n" $lr $sizex $sizey | \
asc2kal "$image" $sizex $sizey
