marunomaruno-memo

marunomaruno-memo

Google Maps API

2009年01月20日 | Weblog
2009-01-20
Google Maps API
================================================================================

Google Maps API に登録して、使ってみた。

■登録方法

Google Maps API
http://code.google.com/intl/ja/apis/maps/

を参考に、ユーザー登録し、Google Maps API キーを取得する。


■サンプル

Google Maps API のドキュメント
http://code.google.com/intl/ja/apis/maps/documentation/

を参考に、マップを表示(マーカー、マップコントロールなどもあわせて表示)するだけの
サンプル。なお、基準は東京タワー(東京都港区芝公園4‐2‐8)。


□sample.html
---
<!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Google Maps JavaScript API の例</title>
<script
    src="http://maps.google.com/maps?file=api&v=2&key=取得した Google
 Maps API キー値"
    type="text/javascript"></script>
<script type="text/javascript"><!--

    function initialize() {
        if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById("map_canvas"));
        
            // 経度と緯度、ズームレベル(0-19)
            var point = new GLatLng(35.658634, 139.745411); // 東京タワー
            map.setCenter(point, 15);
        
            // 地図の属性(地図、航空写真)
            map.setMapType(G_NORMAL_MAP); // 航空写真
        
            // 情報ウィンドウの表示
            map.openInfoWindow(map.getCenter(),
                    document.createTextNode("東京タワー"));
        
            // マップコントロールの表示
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());
            map.addControl(new GOverviewMapControl());
        
            // マーカー
            map.addOverlay(new GMarker(point));
        }
    }

--></script>
</head>

<body onload="initialize()" onunload="GUnload()">
<div id="map_canvas" style="width: 500px; height: 300px"></div>
</body>
</html>
---



□ Google Maps API を読み込む

つぎのようにして、 取得した Google Maps API キー値 を指定して、JavaScript を読み
込む。
Google Maps API は、Google AJAX API と完全<script
src="http://maps.google.com/maps?file=api&v=2&key=取得した Google
Maps API キー値
"
type="text/javascript"></script>
<script type="text/javascript">


□ function initialize()
<body onload="initialize()" onunload="GUnload()">

body タグに onload 属性をつけて、このページが呼び出されたときにはこの initialize
() 関数を実行するように設定する。


□ if (GBrowserIsCompatible())

ブラウザーが Google Maps API と互換性があるかどうかをチェックする。


□ マップを表示する領域の取得と設定

通常は、div タグを使って、マップを表示する領域を定義する。
これは、getElementById() 関数によって、DOM 要素として取得し、GMap2 オブジェクト
を作るコンストラクターに引き渡す。

var map = new GMap2(document.getElementById("map_canvas"));
<div id="map_canvas" style="width: 500px; height: 300px"></div>


□ 経度と緯度、ズームレベル(0-19)の設定

GLatLng オブジェクトを、経度と緯度を渡して作る。
これを、map オブジェクトに setCenter() メソッドを使って設定する。あわせて、ズー
ムレベルも設定できる。

var point = new GLatLng(35.658634, 139.745411); // 東京タワー
map.setCenter(point, 15);


□ 地図の属性(地図、航空写真)

setMapTypes メソッドを使って設定する。

map.setMapType(G_NORMAL_MAP); // 航空写真

標準のマップ・タイプは以下のとおり。
---
G_NORMAL_MAP - デフォルト ビュー
G_SATELLITE_MAP - Google Earth の航空写真を表示
G_HYBRID_MAP - 通常のビューと航空写真の混合表示
---


□ 情報ウィンドウの表示

地図上にふきだし(情報ウィンドウ)を持てる。

map.openInfoWindow(map.getCenter(), document.createTextNode("東京タワー"));


□ マップコントロールの表示

マップ上に、表示形式を変えたり、ズームを制御するためのコントロールを出せる。
addControl メソッドを使って、マップオブジェクトに追加する。
map.addControl(new GSmallMapControl());

つぎのコントロールがある。
---
GLargeMapControl - Google マップ上で使用する大きなドラッグ/ズームコントロール。
デフォルトでは地図の左上に表示されます。

GSmallMapControl - Google マップ上で使用する小さなドラッグ/ズームコントロール。
デフォルトでは地図の左上に表示されます。

GSmallZoomControl - ドラッグ コントロールがない小さなズーム コントロール。Google
マップで、車のルートの順序を示す小地図のブローアップ ウィン
ドウ内で使用されています。

GScaleControl - 地図の縮尺

GMapTypeControl - マップ タイプ (地図や航空写真など) をユーザーが切り替えるた
めのボタン

GHierarchicalMapTypeControl - 多くのマップ タイプ セレクタを配置するための入れ子
になったボタンとメニュー アイテム

GOverviewMapControl - 画面の隅にある最小化可能な全体図
---


□ マーカー

マップ上にマーカーを置ける。
addOverlay メソッドを使って、マーカーをマップオブジェクトに追加する。

map.addOverlay(new GMarker(point));


以上


Ajax 逆引きクイックリファレンス

2009年01月18日 | Weblog
Ajax 逆引きクイックリファレンス
http://www.openspc2.org/reibun/QuickReferenceAjax/index.html
http://book.mycom.co.jp/book/4-8399-2035-4/4-8399-2035-4.shtml
単行本: 319ページ
出版社: 毎日コミュニケーションズ (2006/03)
ISBN-10: 4839920354
ISBN-13: 978-4839920357
発売日: 2006/03
商品の寸法: 24.2 x 17 x 2.4 cm

第一章 Ajaxとは
1. Ajaxとは
2. DHTMLとFlash
3. Ajaxに必要な知識と技術
4. Ajaxの弱点/難点
5. 通信上の制約
6. XMLの処理
7. スタイルシートの注意点

第二章 非同期通信処理
1. サーバーと通信を行う
2. サーバーからテキストデータを読み込む
3. サーバーからXMLデータを読み込む
4. サーバーにgetメソッドでデータを送信する
5. サーバーにpostメソッドでデータを送信する
6. 読み込みを中断する
7. タイムアウト処理を行う
8. サーバーからの応答を調べる
9. ファイルが読み込めない、存在しない場合の処理を行う
10. 取得するデータのMIME形式を指定する
11. 取得するデータのヘッダーを全て読み込む
12. 取得するデータのヘッダーを個別に指定して読み込む
13. ヘッダーを書き換える

第三章 prototype.jsを利用する
1. prototype.jsを使って通信する
2. エラー処理を行う
3. URLパラメータを生成する
4. フォームデータを読み込む
5. 空欄をチェックする
6. HTML, XMLタグカット
7. バージョンを取得する

第四章 XML/HTMLデータへのアクセス
1. 指定したタグの情報を取得する
2. ノードの値を取得する
3. タグ名を取得する
4. ノードの種類を取得する
5. 属性値を参照する
6. 属性名を取得する
7. 子要素に同名のタグがある場合の処理
8. 最後の子要素を参照する
9. XMLデータのタグ間に空白やタブが含まれる場合の処理
10. 子ノードがあるかどうか調べる
11. ノードを複製する
12. 子ノードを追加する
13. ノードを挿入する
14. エレメント(タグ)を作成する
15. 子ノードを削除する
16. 子ノードを入れ替える

第五章 データを受信/送信する
1. サーバー上のテキストファイルを読み込む
2. サーバー上のHTMLファイルを読み込む
3. サーバー上のXMLファイルを読み込む
4. getメソッドでデータを送信する
5. postメソッドでデータを送信する

第六章 データを解析する
1. タブ区切りテキストを表示する
2. CSVデータを表示する
3. ゲームのマップを表示する
4. EXCELのXMLデータを表示する
5. WORDのXMLデータを表示する
6. ファイルメーカーのXMLデータを表示する
7. JSONのデータを表示する
8. 簡単なデータベース検索を行う

第七章 クライアントサイドの技術
1. テキストフィールド/テキストエリアへのアクセス
2. チェックボックスへのアクセス
3. ラジオボタンへのアクセス
4. セレクトメニューへのアクセス
5. div, spanタグへのアクセス
6. imgタグへのアクセス
7. スタイルシートへのアクセス
8. イベントの追加/削除
9. イベントの伝達
10. 右ボタン(コンテキストメニュー表示)の禁止
11. マウス座標を取得する
12. ドラッグ処理を行う
13. 定期的に処理を行う
14. キャッシュさせないようにする

■第八章 特殊効果(エフェクト)
1. 不透明度の処理
2. Rico : フェードイン/フェードアウトの処理
3. Rico : 移動処理
4. Rico : サイズ変更処理
5. Rico : 位置とサイズ変更処理
6. Rico : 角丸四角形
7. Rico : ドラッグ処理

第九章 Google Mapsを利用する
1. Google Mapsを表示する
2. Google Mapsを表示できないブラウザに対処する
3. 移動、ズーム可能な詳細コントロールを表示する
4. 地図←→衛星画像切り替えコントロールを表示する
5. ズームコントロールを表示する
6. 複数のコントロールを表示する
7. コントロールを削除する
8. 表示(地図、衛星写真)を切り替える
9. 表示倍率(ズームイン/ズームアウト)を指定する
10. 表示倍率を取得する
11. 指定座標に移動させる
12. 表示範囲の座標を取得する
13. 指定座標が表示範囲内かどうか調べる
14. 地図の中心座標を取得する
15. 情報ウィンドウを表示する
16. 指定位置の周辺地図を表示する
17. 情報ウィンドウを閉じる
18. 標準のマーカーを表示する
19. カスタムマーカーを表示する
20. マーカーを削除する
21. イベント処理を追加する
22. イベントを削除する
23. 線を表示する
24. 線を削除する

第10章 Yahooを利用する
1. Yahooの検索サービスを利用する
2. 検索でヒットした総数を求める
3. 検索でヒットしクライアントに返された結果数を求める
4. 返された検索結果が何ページ目にあたるかを求める
5. 検索結果の数を指定する
6. 検索結果の開始位置を指定する
7. 検索対象の言語を指定する
8. 検索する文書の種類を指定する
9. 検索するサイトを指定する
10. 検索結果のページのタイトルを表示する
11. 検索結果からページにリンクする
12. 検索結果のサイトのサマリーを表示する
13. 検索結果のページの最終更新日を表示する
14. 検索結果のサムネール画像を表示する
15. 画像形式を指定して検索する
16. 動画のサムネールを表示する
17. 動画形式を指定して検索する
18. 動画の再生時間を取得する

第11章 アマゾンを利用する
1. アマゾンのサービスを利用する
2. 取得するXMLの種類を指定する
3. 指定したジャンルの商品の総数を取得する
4. 書籍名を取得する
5. 金額を表示する
6. 商品ページのURLを取得する
7. 表示条件を設定する
8. サムネール画像を表示する
9. キーワードに一致した商品を表示する
10. レビューを表示する

第12章 Ajax応用サンプル
1. Yahoo! : ランキングチェック
2. Yahoo! : 更新日の新しいページ順に表示
3. 簡易テキストブラウザ
4. スピードチェッカー