FlashLite制作の中でわかった事をメモしていくblogです。
プロフィール
Author:hose
FlashLiteを使ってアプリ作ってる人です。
最新記事
最新コメント
最新トラックバック
検索フォーム
QRコード

2008/09/06 05:03 GPS情報取得方法(au)
前回うpしたgps point get! でやっているGPS情報取得についての解説です。
最初に書いておきますがこれはau限定での方法です。
他のキャリアについてはまた機会がありましたら記述します。
FlashLiteでは「1クリック、1通信」という制限があります。
なのでまずはボタンのシンボルを作成し、そのボタンが押された時に通信するようにします。
ボタンを作成したらAsのラインに↓を記述して下さい。
ボタンのインスタンス名.onPress = function() {
getURL("device:gpsone?url=[スクリプトのアドレス]&ver=1&datum=0&unit=0&acry=0&number=0");
}
ここでは指定したアドレスにgps情報を付加して送信しています。
その際、パラメータを付加して送信するGPS情報の形式を変更する事ができます。
gps point get!ではPHPで送信された情報を受信処理しています。
付加できるパラメータ
ver 通信バージョン
「0」「1」が指定できます。
ここは「1」に指定おけば大丈夫です。
datum 測地系
「0」「1」が指定できます。
0: WGS84 (世界測地系)
1: TOKYO (日本測地系)
どちらでもかまいせんがよく分からないのでしたら「0」を指定しておきましょう。
unit 座標系
「0」「1」が指定できます。
0: dms (度分秒をピリオドで分割)
1: degree (分以下を少数で表示)
私はヒュベニの計算式を使う関係上「0」を指定しています。
自分の作成したものにあう形式を指定しましょう。
acry 位置情報精度 (旧機種での指定はNG)
「0」としておけばOKです。
number GPS測位回数 (旧機種での指定はNG)
「0」と指定すればデフォルトの1回が選ばれるようです。
複数回指定できそうですが意味あるのかわかりません。
これ以外の独自の変数の付加についてですが
私の「W43S」「FlashLite2.0」「PHP」「.dat」という環境ではエラーを吐き出し使用不可でした。
私の知らないだけで、もしかしたら出来るのかもしれませんが
おそらく駄目なような気がします。
戻り値についての説明
ver :GPSVer
datum :測地系(「0」:WGS84 「1」:tokyo)
unit :経度緯度の表記方法( 「0」:dd.mm.ss.sss:度分秒 「1」:dd.ddd:度)
lat :緯度
lon :経度
alt :高度
time :時間 (YYYYMMDDHHiiss)
smaj :長軸半径誤差
smin :短軸半径誤差
vert :高度誤差
majaa :誤差楕円長軸角度
fm :測位方法
実際に使用するのは緯度・経度、あと時間ぐらいでしょうか。
自分の作成した物に必要な情報を活用して下さい。
えーっと、ここまで書いて自分の書いたPHPの方の処理にバグがある事が判明。
PHPに送信される緯度経度の最初に+やら-が最初についてるんですが
lat(緯度)については+が北緯、- が南緯
lon(経度)については+が東経、-が西経
となっています。
俺の書いたものでは計算の前にその符号を除去するんですが
+を除去するコードしか書いてませんでしたorz
もちろん日本でつかう分にはまったく問題ありません。
しかしこれじゃ折角「日本<=>ブラジル」でも距離が測れるように
ヒュベニの計算式使ったのにまったく意味がありません。
世界規模の物を作る方は「-」除去のコードも追加してお使い下さいw
最初に書いておきますがこれはau限定での方法です。
他のキャリアについてはまた機会がありましたら記述します。
FlashLiteでは「1クリック、1通信」という制限があります。
なのでまずはボタンのシンボルを作成し、そのボタンが押された時に通信するようにします。
ボタンを作成したらAsのラインに↓を記述して下さい。
ボタンのインスタンス名.onPress = function() {
getURL("device:gpsone?url=[スクリプトのアドレス]&ver=1&datum=0&unit=0&acry=0&number=0");
}
ここでは指定したアドレスにgps情報を付加して送信しています。
その際、パラメータを付加して送信するGPS情報の形式を変更する事ができます。
gps point get!ではPHPで送信された情報を受信処理しています。
付加できるパラメータ
ver 通信バージョン
「0」「1」が指定できます。
ここは「1」に指定おけば大丈夫です。
datum 測地系
「0」「1」が指定できます。
0: WGS84 (世界測地系)
1: TOKYO (日本測地系)
どちらでもかまいせんがよく分からないのでしたら「0」を指定しておきましょう。
unit 座標系
「0」「1」が指定できます。
0: dms (度分秒をピリオドで分割)
1: degree (分以下を少数で表示)
私はヒュベニの計算式を使う関係上「0」を指定しています。
自分の作成したものにあう形式を指定しましょう。
acry 位置情報精度 (旧機種での指定はNG)
「0」としておけばOKです。
number GPS測位回数 (旧機種での指定はNG)
「0」と指定すればデフォルトの1回が選ばれるようです。
複数回指定できそうですが意味あるのかわかりません。
これ以外の独自の変数の付加についてですが
私の「W43S」「FlashLite2.0」「PHP」「.dat」という環境ではエラーを吐き出し使用不可でした。
私の知らないだけで、もしかしたら出来るのかもしれませんが
おそらく駄目なような気がします。
戻り値についての説明
ver :GPSVer
datum :測地系(「0」:WGS84 「1」:tokyo)
unit :経度緯度の表記方法( 「0」:dd.mm.ss.sss:度分秒 「1」:dd.ddd:度)
lat :緯度
lon :経度
alt :高度
time :時間 (YYYYMMDDHHiiss)
smaj :長軸半径誤差
smin :短軸半径誤差
vert :高度誤差
majaa :誤差楕円長軸角度
fm :測位方法
実際に使用するのは緯度・経度、あと時間ぐらいでしょうか。
自分の作成した物に必要な情報を活用して下さい。
えーっと、ここまで書いて自分の書いたPHPの方の処理にバグがある事が判明。
PHPに送信される緯度経度の最初に+やら-が最初についてるんですが
lat(緯度)については+が北緯、- が南緯
lon(経度)については+が東経、-が西経
となっています。
俺の書いたものでは計算の前にその符号を除去するんですが
+を除去するコードしか書いてませんでしたorz
もちろん日本でつかう分にはまったく問題ありません。
しかしこれじゃ折角「日本<=>ブラジル」でも距離が測れるように
ヒュベニの計算式使ったのにまったく意味がありません。
世界規模の物を作る方は「-」除去のコードも追加してお使い下さいw
/ Top /



