hibitekitou
AppleScriptからGoogleEarthを制御する
mac |2014-03-15
さて、というわけで、緯度・経度・高度を指定した位置にGoogleEarthのカメラを制御するスクリプトがとりあえず出来ました。
まず、その位置の標高を取得するためのPythonスクリプトです。
# -*- coding: utf-8 -*-
#getElevation.py
import sys
from urllib import urlopen
import xml.dom.minidom
imputParam = sys.argv
lat = imputParam[1]
lng = imputParam[2]
url = "http://maps.googleapis.com/maps/api/elevation/xml?locations=" + lat + "," + lng + "&sensor=false"
xmlStr = ( urlopen( url ) ).read()
dom = xml.dom.minidom.parseString( xmlStr )
elevation = float( dom.getElementsByTagName("elevation")[0].childNodes[0].nodeValue )
sys.stdout.write( str ( round( elevation , 2) ) )
これをとりあえず getElevation.py という名前でデスクトップに置いておきます。
んで、以下のAppleScriptを実行。
set lat to 36.107447
set lng to 137.548871
do shell script "python ~/Desktop/getElevation.py " & lat & " " & lng
set elv to result
set ditance to 15000 - elv
tell application "Google Earth"
SetViewInfo {latitude:lat, longitude:lng, distance:ditance, tilt:0.0, azimuth:0.0} speed 5
end tell
これで乗鞍岳上空15km(海抜で15km)の位置に移動するはずです。
まずは課題を一つクリアでございます。
まず、その位置の標高を取得するためのPythonスクリプトです。
# -*- coding: utf-8 -*-
#getElevation.py
import sys
from urllib import urlopen
import xml.dom.minidom
imputParam = sys.argv
lat = imputParam[1]
lng = imputParam[2]
url = "http://maps.googleapis.com/maps/api/elevation/xml?locations=" + lat + "," + lng + "&sensor=false"
xmlStr = ( urlopen( url ) ).read()
dom = xml.dom.minidom.parseString( xmlStr )
elevation = float( dom.getElementsByTagName("elevation")[0].childNodes[0].nodeValue )
sys.stdout.write( str ( round( elevation , 2) ) )
これをとりあえず getElevation.py という名前でデスクトップに置いておきます。
んで、以下のAppleScriptを実行。
set lat to 36.107447
set lng to 137.548871
do shell script "python ~/Desktop/getElevation.py " & lat & " " & lng
set elv to result
set ditance to 15000 - elv
tell application "Google Earth"
SetViewInfo {latitude:lat, longitude:lng, distance:ditance, tilt:0.0, azimuth:0.0} speed 5
end tell
これで乗鞍岳上空15km(海抜で15km)の位置に移動するはずです。
まずは課題を一つクリアでございます。
コメント ( 0 )|Trackback ( )
コメント |
コメントはありません。 |
コメントを投稿する |
ブログ作成者から承認されるまでコメントは反映されません |