summaryrefslogtreecommitdiff
path: root/tools/mmd/MmdSatellite.py
diff options
context:
space:
mode:
authorJogi Hofmüller <jogi@mur.at>2011-08-09 19:02:08 +0000
committerJogi Hofmüller <jogi@mur.at>2011-08-09 19:02:08 +0000
commit9ec0b02148363742768cc5cf5698b67a8ea19cfd (patch)
tree1ebbb2c38a26ad74a3a8e842c6e3e4ffe0850906 /tools/mmd/MmdSatellite.py
parent- added file testmap.html (diff)
- we are tracking ARISSAT-1 now ;)
git-svn-id: https://svn.spreadspace.org/mur.sat@106 7de4ea59-55d0-425e-a1af-a3118ea81d4c
Diffstat (limited to 'tools/mmd/MmdSatellite.py')
-rw-r--r--tools/mmd/MmdSatellite.py43
1 files changed, 29 insertions, 14 deletions
diff --git a/tools/mmd/MmdSatellite.py b/tools/mmd/MmdSatellite.py
index adb5fd8..42d4423 100644
--- a/tools/mmd/MmdSatellite.py
+++ b/tools/mmd/MmdSatellite.py
@@ -3,20 +3,20 @@
import ephem
import time
+def createJavaArray (jarray, name):
+ astring = 'var {0} = new Array ('.format (name)
+ for e in jarray:
+ astring = '{0}\n\t{1}'.format (astring, e)
+ astring = '{0}\n);'.format (astring)
+ return astring
+
def dms2degdec (lonlat):
parts = lonlat.split (':')
if len (parts) != 3:
return 0.0
degrees = float (parts[0])
fraction = (float (parts[1]) * 60.0 + float (parts[2])) / 3600
- # print "debug"
- # print parts
- # print degrees
- # print float (parts[1]) * 60.0
- # print float (parts[2])
- # print fraction
- # print "debug end"
- if degrees < 0:
+ if parts[0][0] == '-':
return degrees - fraction
return degrees + fraction
@@ -24,6 +24,9 @@ line0 = "ARISSAT-1/RADIOSCAF-B"
line1 = "1 37772U 98067CK 11220.22334818 .00031592 00000-0 37647-3 0 118"
line2 = "2 37772 51.6391 258.8215 0013530 58.1430 19.7106 15.60689826 619"
+line0 = "FENGYUN 1C DEB"
+line1 = "1 30807U 99025AUR 11217.95818111 .00601080 13349-3 25872-2 0 3694"
+line2 = "2 30807 099.0868 165.1314 0028608 315.8949 044.0355 15.84325581244298"
# line0 = "ARISSat-1"
# line1 = "1 37772U 98067CK 11219.88827546 .00035107 00000-0 41770-3 0 100"
@@ -38,13 +41,25 @@ if __name__ == "__main__":
graz = ephem.Observer ()
graz.long, graz.lat, graz.elevation = '15.44226', '47.06576', 376
# graz.date = time.strftime ('%Y/%m/%d %H:%M:S')
+ # sat.compute (graz)
+ # print sat.name, graz.next_pass (sat), graz.date, sat.sublong, sat.sublat, float (sat.range/1000)
+ # print sat.name, graz.date, dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), float (sat.range/1000)
+ # graz.date += ephem.minute
+ # sat.compute (graz)
+ # print sat.name, graz.next_pass (sat), graz.date, sat.sublong, sat.sublat, float (sat.range/1000)
+ # print sat.name, graz.date, dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), float (sat.range/1000)
sat.compute (graz)
- print sat.name, graz.next_pass (sat), graz.date, sat.sublong, sat.sublat, float (sat.range/1000)
- print sat.name, graz.next_pass (sat), graz.date, dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), float (sat.range/1000)
- graz.date += ephem.hour
- sat.compute (graz)
- print sat.name, graz.next_pass (sat), graz.date, sat.sublong, sat.sublat, float (sat.range/1000)
- print sat.name, graz.next_pass (sat), graz.date, dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), float (sat.range/1000)
+ array_string = 'new OpenLayers.LonLat ({0}, {1}).transform (from, to){2}'
+ java_array = [array_string.format (dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), ',')]
+ for i in range (12 * 24):
+ graz.date += 5 * ephem.minute
+ sat.compute (graz)
+ # print sat.name, graz.date, dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), float (sat.elevation) / 1000
+ java_array.append (array_string.format (dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), ','))
+ graz.date += 5 * ephem.minute
+ sat.compute (graz)
+ java_array.append (array_string.format (dms2degdec (sat.sublong.__str__ ()), dms2degdec (sat.sublat.__str__ ()), ''))
+ print createJavaArray (java_array, 'points')
# vim: tw=0 ts=2
# EOF