クリエイター手抜きプロジェクト[182]Illustrator CS2/CS3編 GPSのトラックポイント(軌跡データ)を読み出し表示する
── 古籏一浩 ──

投稿:  著者:


最近では、カーナビだけでなくGPS機能がついた携帯や、GPS専用機などがあります。GPS機器によっては、記録した座標や軌跡(トラックポイント)をXMLデータなどに出力できるものがあります。例えば、GARMIN社のGPSmap 60CSxでは専用ソフトで軌跡をXMLデータとして出力することができます。

今回は、この記録データを抽出してIllustrator上に座標値として表示させるスクリプトです。座標点をプロットするスクリプトについては次回説明します。これまでにも使用したGARMIN社のGPSmap 60CSxでは、XMLデータを出力すると以下のようにタグが生成されます。



   < trkpt lat="35.9994058" lon="137.8527693" >
    < ele >888.3955078< /ele >
    < time >2007-12-24T05:32:43Z< /time >

ここから< trkpt >タグ内のlatとlonの値を抽出して、最後にまとめて座標値を表示すればできあがりです。ただし、このトラックポイントは非常に量が多いため、メモリが少ない場合などには正常に動作しない事があります。また、非常に時間がかかる点にも注意してください。

if (documents.length < 1) // ドキュメントがなかった場合は新規に作成
{
documents.add(DocumentColorSpace.CMYK,595.2756,841.8898);
}
docObj = activeDocument;
result = "";
CR = String.fromCharCode(13);
filename = File.openDialog("GPSで出力したXMLファイルを指定してください");
fileObj = new File(filename);
flag = fileObj.open("r");
if (flag == true)
{
while(!fileObj.eof)
{
text = fileObj.readln();
if(text.indexOf("< trkpt ") > -1) // XML < trkpt > Tag Search
{
xmlData = text.split(" "); // 空白で分割
lat = xmlData[7].substring(5,xmlData[7].length-1);
lon = xmlData[8].substring(5,xmlData[8].length-2);
result += lat+","+lon+CR;
}
}
textObj = docObj.textFrames.add();
textObj.contents = result;
fileObj.close();
}else{
alert("XMLファイルが開けませんでした");
}


【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/
>

ちなみに、CS3からはXMLデータオブジェクトを扱うことができるようになっています。これに関しては、また別の機会に。なんてやっているうちにCS4なんですよね……。

勉強がてらMac版のExcelのページを作成中です。
・マイクロソフト エクセル 使い方辞典(Excel 2008 for Mac)
< http://www.openspc2.org/reibun/Excel2008/
>

もうテラステーション満杯なので、しばらくは更新しないかも。
・ハイビジョン映像素材
< http://www.openspc2.org/HDTV/
>

photo
実践!Ajaxフレームワーク jQuery
古籏 一浩
毎日コミュニケーションズ 2008-06-28
おすすめ平均 star
starもうすこしサンプルの解説がほしいところ

jQueryで作る Ajaxアプリケーション prototype.jsとscript.aculo.usによるリッチWebアプリケーション開発 JavaScript & DHTMLクックブック 第2版 Webエキスパート必携テクニック集 prototype.jsパーフェクトリファレンス―Ajax実践プログラミング マイクロフォーマット ~Webページをより便利にする最新マークアップテクニック~ (Web Designing BOOKS)





photo
改訂第4版 JavaScript ポケットリファレンス
古籏 一浩
技術評論社 2006-10-18
おすすめ平均 star
starJavaScriptを使ったプロジェクトのお供に是非
starJavaScript仮免者以上の方へ
starバランスの良いバイブル
star中級者向けです。

[改訂版] PHP ポケットリファレンス (Pocket reference) 改訂新版 SQLポケットリファレンス (Pocket reference) 改訂第5版 オールカラー  HTML ポケットリファレンス (POCKET REFERENCE) 基礎 Ajax + JavaScript JavaScriptプログラミング入門 第2版

by G-Tools , 2008/10/06