実録、ともおじちゃん

典型的な客先常駐型ソフトウェア技術者の13年の軌跡

Google Maps API: GGeoXml

2009年05月22日 | コンピュータ・家電

地理情報をKMLで記述して、いざ、GGeoXmlでロードしようとしたところ、何かしらオーバーレイは生成されているようですが、マーカーもポリラインも表示されず。

  var map = new GMap2(document.getElementById('map'));
  ...
 
  var gx = new GGeoXml('http://localserver/sample.kml');
  map.addOverlay(gx);

けど、Mappletサービスの「KMLオーバーレイとGeoRSSオーバーレイ」で例示されるKMLファイルをロードすると、期待通りの振る舞い。さんざん調べた挙句、開発環境のhttpdにKMLファイルへアクセスした形跡がないことに気付き、ググッてみると、ありました。たぶん、これと同じ原因。

GGeoXml is not loading 
      If the Google server can't read your files, then GGeoXml can't render them.

私の陥った現象は、おそらく、

  • 私が作成したKMLファイルは開発環境下で動作するhttpdに配置している
  • 当然、そのhttpdを運用するPCはイントラネットに属している
  • 外部ノードからそのPCにHTTP接続できない→ つまり、Google サーバが私のKMLファイルを見つけられない
ということだと思われます。

自分の書いたKMLファイルから生成されたオーバレイを確認するための方法を考えなければ…困った。

最新の画像もっと見る