Google Earth(TM) 地図サービスのオススメスポット・Wiki更新状況・おもしろい情報の紹介などを書き綴っていきます。

日曜日, 10月 21, 2007

ERBで作るKML その3

 前回からの続きです。  とりあえずサンプルとして、KMLの説明欄に現在の時間が表示されるrkmlファイルを作成してみました。  サンプル (ソースはこちら)  description欄に時間を取得するようにrubyの関数を埋め込むだけで、後は普通にKMLを書くだけです。(実際に使う場合は、前回のerb.cgiにおいてUtilモジュールをincludeしたりして、htmlのエスケープをする必要もあるでしょう。)  最近はGoogleEarthの話よりもRubyの話が多いですが、RubyはGoogleEarthを楽しむのに最も適した言語の一つだと思います。  KMLを生成するサーバーサイドスクリプトとして利用でき、また、COM APIを利用することもできます。しかも、One-Click Rubyを使えば導入も速攻です。  個人的には基本的にはRuby、XMLを扱う場合にはPHP、みたいな使い分けが現状では好みでしょうか。。

金曜日, 10月 12, 2007

ERBで作るKML その2

 先日の続きです。早速作業に移ります。  まず、先日紹介したリンク先の下部で配布されている「erb-cgi.txt」をダウンロードします。これはファイル名を「erb.cgi」としておいてください。  次に.htaccessを作成します。記述する内容は次の通りです。 AddHandler rubypage .rkml Action rubypage /cgi-bin/erb.cgi  作成した.htaccessを「/(root)」へ、erb.cgiを「/cgi-bin」へアップロードします。(例えばの話なので、アップロード先は適宜。)  ERBを利用するための設定はこれだけです。これで「.rkml」と拡張子の付いたファイルはは、「/(root)」以下においてERBとして評価されるようになります。  ただ、erb.cgiのヘッダ設定を変更しなければ、KMLとして出力されません。KMLとして出力するには、erb.cgiの17行目あたりを次のように変更します。 HEADERS = <<EOF   Content-Type: application/vnd.google-earth.kml+xml EOF  続く。。  

水曜日, 10月 10, 2007

ERBで作るKML

 2007年もヤンキースが敗退してしまいました。残念。(実はヤンキースファンです。)  プレイオフも終わったことですので、かねてから紹介しようと思っていたERBでKMLを作成するTipsをやろうかと思います。(具体的な話は次回以降ですが…。)  PHPでKMLを作成する利点としては、PHPでHTMLを作成するのと同様に、タグの中にPHPのプログラムを挿入することが出来る点が挙げられます。  Rubyでも同様にタグの中にプログラムを入れる機能を提供する「ERB」というライブラリがあります。しかし、いちいち「require 'erb'」したり、「EOS」したりするようではPHPの方が良さそうに感じます。  今回からのTipsは、PHPのように基本的にはタグを書き、必要に応じてRubyのプログラムを書けば良いように(自分が借りている)レンタルサーバーを設定するというものです。  偉そうに書いていますが、内容的には下記サイトでやっていることを真似するだけです。 http://dekstop.de/weblog/2006/01/rhtml_on_osx_with_apache_and_erb/  これをちょこっとKML仕様にするだけです。  つづく。。 【遅ればせながらお知らせ】  GoogleEarthの見どころを紹介するWikiが名前等リニューアルして復活しています。 http://noblesse-oblige.jp/reco/  アドレスも変更しています。