Google Maps API プログラミング入門

Google Maps API プログラミング入門
Google Maps APIプログラミング入門
著者勝又雅史
定価3,570円
総ページ数480ページ
紙面サイズB5変判
発売年月日2010年3月31日
ISBN978-4-04-868418-7
出版社アスキー・メディアワークス
この本を購入する

2011年12月現在、第2版を書き直し中です。そのためAmazonで在庫切れになっております。2012年1月〜2月頃に出版できると思います

2012年12月に第2版が出版されます。
詳細は「Google Maps APIプログラミング入門 第2版」の紹介ページをご覧ください



このサイトでもある「Google Maps API」について、分かりやすく幅広く解説した1冊の本を書きました。
この本では「理論よりもコード」をモットーに「Google Maps API version2」「Google Maps API version3」 「Google Maps API for Flash」「Google Static Maps API version2」について、解説とサンプルコードを多数紹介しています。

この本を作る際に心掛けたのは「同じサンプルを作らない」ということです。Google Maps API v2,v3,for Flashとそれぞれ 設計思想や動作環境に違いはあるものの、やはりそこは同じGoogle マップというテーマ。普通であればどうしても各章同じようなコードを 書いてしまうのですが、この本では各章それぞれに違ったサンプルになるように工夫しています。

この本の見所としてもう一つアピールをしておきたいのが、Google Maps API Premierについて紹介していることです。
Premier(プレミア)は、Google Maps APIの有償版です。この有償版についても、無償版とどう違うのか、価格はどうなのか、など 徹底的に調べました。また実際にGoogle Maps API Premierを使う場合の技術的内容についても掲載しています。


これからGoogle Maps APIを始めたいという方から、すでにGoogle Maps APIを使っているという方まで楽しんでいただける内容になっています。 「これを読めばGoogle Maps APIは使いこなせる」と言っても過言ではありません。
この本がボロボロになるくらいまで読んでいただければ幸いです。

訂正・更新情報

本書に記載されておりますコード・説明に、誤り・または内容が更新されたものが幾つかあります。
本書を読み進めていただきます上で、参考にしていただけますと幸いです。

  • 第2章 Google Maps API Version 2

    • 2.1.6 緯度経度とズームレベルを指定する
      記載されているコードが、P32と同じになっております。
      本来掲載されるはずだったコードはコチラです。
  • 第3章 Google Maps API Version 3

  • 第4章 Google Maps API for Flash

  • 第6章 その他

    • 6.2 HTTPリクエスト経由のジオコーディング・逆ジオコーディング
      HTTP経由のジオコーディングのバージョンがアップされました。
      本書で説明されている内容も引き続き使うこともできますが、 新しいバージョンもご利用ください。
      The Google Geocoding Web Service

    • 6.3 日本測地系と世界測地系の変換について
      function cnvTky2JGD(a,b){ ではなく
      function cnvTky2JGD(lat,lng){ です。

中身紹介

第1章 Google Maps APIについて
第1章
Google Maps APIについて
第2章 Google Maps API Version 2
第2章
Google Maps API Version 2
第3章 Google Maps API Version 3
第3章
Google Maps API Version 3


第4章 Google Maps API for Flash
第4章
Google Maps API for Flash
第5章 Google Static Maps API Version 2
第5章
Google Static Maps API Version 2
第6章 その他
第6章
その他


第7章 Google Maps API Premier
第7章
Google Maps API Premier

目次

  • はじめに

  • 第1章Google Maps API について

    • 1.1 Google Maps API キーを取得する
    • 1.2 Google Maps API 無償版の利用規約について
    • 1.3 Google Maps API に関する情報源コミュニティ問題追跡システム
    • 1.4 Google Qualified Developer プログラム
    • 1.5 Google Maps API に関する用語
  • 第2章Google Maps API Version 2

    • 2.1 地図の表示情報ウィンドウ
      • 2.1.1 地図を表示する
      • 2.1.2 「地図を表示する」コードレビュー
      • 2.1.3 google.maps.. 名前空間を使ったコーディング
      • 2.1.4 G 名前空間とgoogle.maps.. 名前空間が共存できるコーディング
      • 2.1.5 maps.google.com とmaps.google.co.jp について
      • 2.1.6 緯度経度とズームレベルを指定するコード
      • 2.1.7 地図中央の地理的座標(緯度経度)を取得する
      • 2.1.8 情報ウィンドウを開く
      • 2.1.9 編集できる情報ウィンドウ
      • 2.1.10 情報ウィンドウの最大化
      • 2.1.11 タブ付き情報ウィンドウの2 番目のタブを最初から選択する
      • 2.1.12 最大化した情報ウィンドウの中にタブウィンドウを表示する
    • 2.2 コントロール
      • 2.2.1 コントロールを追加する
      • 2.2.2 コントロールを削除する
      • 2.2.3 右下に表示する小さい地図のサイズを変更する
      • 2.2.4 コントロールを表示する位置を変更する
      • 2.2.5 ユーザーインターフェイスをまとめて設定する
      • 2.2.6 ドラッグした範囲にズームするコントロールを追加する
      • 2.2.7 地図に右クリックメニューを追加する
    • 2.3 マーカー
      • 2.3.1 マーカーを地図に追加する
      • 2.3.2 マーカーから情報ウィンドウを開く
      • 2.3.3 マーカーがクリックされたら情報ウィンドウを開く
      • 2.3.4 マーカーのアイコンを変更する
      • 2.3.5 アイコンのクリックできる座標を設定する
      • 2.3.6 マーカーをドラッグできるようにする
      • 2.3.7 マーカーがクリックされたらマーカーを削除する
      • 2.3.8 地図上のクリックされた位置にマーカーを追加する
      • 2.3.9 PopupMarker を利用する(1)
      • 2.3.10 PopupMarker を利用する(2)
      • 2.3.11 MarkerManager を利用する
    • 2.4 ポリラインポリゴン
      • 2.4.1 地図上にライン(線) を描画する
      • 2.4.2 測地に沿ったライン(線) を描画する
      • 2.4.3 地図上にポリゴンを描画する
      • 2.4.4 緯度経度のデータをコード化する(ポリライン編)
      • 2.4.5 緯度経度のデータをコード化する(ポリゴン編)
      • 2.4.6 ポリラインポリゴンをユーザーが編集できるようにする
      • 2.4.7 ポリゴンで描画された領域の面積を取得する
    • 2.5 マップタイプタイルレイヤ
      • 2.5.1 マップタイプを変更する
      • 2.5.2 マップタイプを切り替えるコントロールを追加する
      • 2.5.3 地図にマップタイプを追加する
      • 2.5.4 GHierarchicalMapTypeControl に表示できるマップタイプを追加する
      • 2.5.5 現在選択されているマップタイプを調べる
      • 2.5.6 地図がズームインアウトできるレベルを制限する
      • 2.5.7 回転木馬式マップタイプコントロールを利用する
      • 2.5.8 Google Earth をGoogle Maps API から表示する
    • 2.6 イベント
      • 2.6.1 イベントリスナを追加する
      • 2.6.2 イベントリスナを削除する
      • 2.6.3 イベントをバインドする
      • 2.6.4 クロージャを利用する
      • 2.6.5 イベントを擬似的に発生させる
    • 2.7 Google 検索バーストリートビュージオコーディング
      • 2.7.1 Google 検索バーを表示する
      • 2.7.2 Google 検索バーにGoogle Adsense を表示する
      • 2.7.3 Google ストリートビューを表示する
      • 2.7.4 Google ストリートビューの視点とマーカーを同期する
      • 2.7.5 GOverviewMapControl のようなGoogle ストリートビュー
      • 2.7.6 ジオコーディング
      • 2.7.7 より詳しいジオコーディング結果を取得する
      • 2.7.8 緯度経度から住所を取得する(逆ジオコーディング)
    • 2.8 サーバーとの連携
      • 2.8.1 HTTP 通信でサーバーのファイルを読み込む(GXmlHttp)
      • 2.8.2 HTTP 通信でサーバーのファイルを読み込む(GDownloadUrl)
      • 2.8.3 HTTP 通信でサーバーにデータを送る(GDownloadUrl)
      • 2.8.4 KML データを地図に表示する
      • 2.8.5 Google Spreadsheet からデータを読み込んで地図に表示する
    • 2.9 ディレクション(道案内)
      • 2.9.1 ディレクション(道案内)サービスを利用する
      • 2.9.2 ディレクションの交通手段を指定する
      • 2.9.3 経由地点を指定してディレクションをリクエストする
      • 2.9.4 ディレクションの結果の詳細を取得する
    • 2.10 ローテーション(地図の回転)
      • 2.10.1 ローテーションを有効にする
      • 2.10.2 ローテーションの方向を指定する
    • 2.11 サンプルコーディング
      • 2.11.1 地図にサイドバーを付ける
      • 2.11.2 マーカーをグループ単位で表示非表示にする
      • 2.11.3 ラベル付きのマーカーを作成する
  • 第3章Google Maps API Version 3

    • 3.1 地図の表示
      • 3.1.1 地図の表示とマップタイプの指定
      • 3.1.2 「地図の表示とマップタイプの指定」コードレビュー
      • 3.1.3 指定した緯度経度の領域に合うように地図を表示する
      • 3.1.4 地図の背景色を変更する
      • 3.1.5 地図が読まれるときに「Now loading」を表示する
      • 3.1.6 地図に関するデフォルトの動作や設定を変更する
      • 3.1.7 iPhone やAndroid デバイスに合わせた地図を表示する
    • 3.2 イベント
      • 3.2.1 Google Maps API V3 のイベントについて
      • 3.2.2 UI イベントの引数
      • 3.2.3 MVC 状態変化イベント(1)
      • 3.2.4 MVC 状態変化イベント(2)
      • 3.2.5 イベントを発生させる
    • 3.3 コントロール
      • 3.3.1 コントロールを追加する
      • 3.3.2 コントロールのスタイルを変更する
      • 3.3.3 コントロールの位置を変更する
      • 3.3.4 デフォルトコントロールを無効にする
      • 3.3.5 MapTypeControl で変更できるマップタイプを指定する
      • 3.3.6 自作コントロールを作成する
    • 3.4 マーカー/情報ウィンドウ
      • 3.4.1 地図にマーカーを表示する
      • 3.4.2 マーカーのアイコン画像を変更する(1)
      • 3.4.3 マーカーのアイコン画像を変更する(2)
      • 3.4.4 一枚の画像ファイルから複数のアイコン画像を変更する
      • 3.4.5 マーカーがクリックされたら情報ウィンドウを開く
      • 3.4.6 マーカーのアイコンにクリックできる範囲を設定する
      • 3.4.7 マーカーをドラッグできるようにする
      • 3.4.8 複数の情報ウィンドウを表示する
      • 3.4.9 情報ウィンドウに小さい地図を表示する
      • 3.4.10 マーカーを地図上から削除する
      • 3.4.11 マーカーにmouseover したときタイトルを表示する
      • 3.4.12 KML ファイルを読み込んで地図上にマーカーを追加する
    • 3.5 マップタイプ
      • 3.5.1 マップタイプを指定する
      • 3.5.2 現在選択されているマップタイプを調べる
      • 3.5.3 WMS サービスを使って、カスタムマップタイプを作成する
      • 3.5.4 地図の上に画像レイヤを重ねる
    • 3.6 ポリラインとポリゴン
      • 3.6.1 ポリラインの描画
      • 3.6.2 ポリゴンの描画(1)
      • 3.6.3 ポリゴンの描画(2)
      • 3.6.4 ポリラインポリゴンのイベントと削除
    • 3.7 ジオコーディングディレクション
      • 3.7.1 住所から緯度経度を取得する(ジオコーディング)
      • 3.7.2 ジオコーディングの結果について
      • 3.7.3 緯度経度から住所や地名を取得する(逆ジオコーディング)
      • 3.7.4 ジオコーディングの範囲を限定する(1)
      • 3.7.5 ジオコーディングの範囲を限定する(2)
      • 3.7.6 ディレクション(道案内)サービスを利用する
      • 3.7.7 DirectionsRequest について
      • 3.7.8 DirectionsRenderer について
      • 3.7.9 ルート案内の結果を説明するパネルを表示する
  • 第4章Google Maps API for Flash

    • 4.1 開発環境とGoogle Maps API for Flash SDK について
      • 4.1.1 SDK ライブラリの入手
      • 4.1.2 Flash CS3/4 での開発の概要
      • 4.1.3 Flex Builder での開発の概要
      • 4.1.4 Flex SDK での開発の概要
    • 4.2 地図の表示
      • 4.2.1 地図を表示する
      • 4.2.2 地図のマップタイプを指定する
      • 4.2.3 地図の中心の緯度経度を取得する
      • 4.2.4 地図を指定の位置に移動させる
      • 4.2.5 地図の動作設定を変更する
      • 4.2.6 地図がダブルクリックされたときの動作を変更する
      • 4.2.7 地図の初期化をまとめて行う
      • 4.2.8 地図上に十字線を表示する
    • 4.3 コントロール
      • 4.3.1 地図を制御するコントロールを追加する
      • 4.3.2 コントロールを削除する
      • 4.3.3 コントロールの位置を調整する
      • 4.3.4 オーバービューマップコントロールのスタイルを変更する
      • 4.3.5 ズームコントロールの範囲を制限する
      • 4.3.6 ドラッグズームコントロールを表示する
      • 4.3.7 自作のズームコントロールを作成する(Flex 編)
      • 4.3.8 自作のズームコントロールを作成する(Flash CS3/4 編)
      • 4.3.9 スケールコントロールをドラッグできるようにする
    • 4.4 マーカー
      • 4.4.1 地図にマーカーを追加する
      • 4.4.2 マーカーのアイコンを変更する
      • 4.4.3 マーカー用の画像をswf ファイルに埋め込む(Flex 編)
      • 4.4.4 マーカー用の画像をswf ファイルに埋め込む(Flash CS3/4 編)
      • 4.4.5 マーカーを削除する
      • 4.4.6 マーカーにマウスカーソルを重ねたときツールチップを表示する
      • 4.4.7 マーカーをドラッグ&ドロップできるようにする
      • 4.4.8 ズームレベルごとにマーカーを管理する
    • 4.5 情報ウィンドウ
      • 4.5.1 情報ウィンドウを開く
      • 4.5.2 情報ウィンドウにHTML を表示する
      • 4.5.3 情報ウィンドウにスタイルシートを適用する
      • 4.5.4 外部のスタイルシートを読み込んで情報ウィンドウに適用する
      • 4.5.5 情報ウィンドウのデザインを変更する
      • 4.5.6 オリジナルデザインの情報ウィンドウを作る(Flex 編)
      • 4.5.7 オリジナルデザインの情報ウィンドウを作る(Flash CS3/4 編)
      • 4.5.8 タブつきの情報ウィンドウを表示する(Flex 編)
    • 4.6 イベント
      • 4.6.1 イベントリスナを追加/削除する(マーカーがクリックされたら情報ウィンドウを開く)
      • 4.6.2 イベントリスナにおけるクロージャ
      • 4.6.3 地図がクリックされた位置にマーカーを追加する
      • 4.6.4 マーカーの情報ウィンドウを最初から表示させる(擬似イベントを発生させる)
      • 4.6.5 地図上に追加されたマーカーの数を管理する
    • 4.7 マップタイプ
      • 4.7.1 地図にマップタイプを追加/削除する
      • 4.7.2 地図上に追加されているマップタイプを列挙する
      • 4.7.3 マップタイプの選択が変化したときにマップタイプを判定する
      • 4.7.4 マップタイプを重ね合わせる
      • 4.7.5 夜空のマップタイプを追加する
    • 4.8 オーバーレイ
      • 4.8.1 地図の一部に画像を表示する(グラウンドオーバーレイ)
      • 4.8.2 ポリラインを表示する
      • 4.8.3 子午線をまたいでラインを描画する
      • 4.8.4 測地に沿ったポリラインを描画する
      • 4.8.5 ポリゴンを表示する
      • 4.8.6 ラインデータをエンコード化する
      • 4.8.7 オーバーレイをすべて削除する
      • 4.8.8 マーカーの重なり順をGoogle Maps API V2 と同じにする
    • 4.9 外部との連携
      • 4.9.1 XML ファイルを読み込んでマーカーを地図上に追加する
      • 4.9.2 CSV ファイルを読み込んでマーカーを地図上に追加する
      • 4.9.3 KML ファイルを読み込んでマーカーを地図上に追加する
    • 4.10 3D 表示
      • 4.10.1 地図を3D 表示する
      • 4.10.2 3D 表示の基本
      • 4.10.3 位置を変更するときにアニメーション表示させる
      • 4.10.4 Flash 用の3D ライブラリ(Papervision3D)を使う
      • 4.10.5 地図上の球をグルグルまわす
      • 4.10.6 球に地球のテクスチャを貼り付ける
      • 4.10.7 エッフェルタワーを表示する
    • 4.11 ディレクションジオコーディング
      • 4.11.1 ディレクションサービス(ルート検索)を使う
      • 4.11.2 徒歩モードでルートを探す
      • 4.11.3 寄り道ポイントを設定する
      • 4.11.4 ルート検索の結果に関する情報を取得する
      • 4.11.5 ルート検索の結果のデザインを変更する
      • 4.11.6 ルート検索の結果の各ステップにマーカーを追加する
      • 4.11.7 住所や名称から緯度経度を取得する(ジオコーディング)
      • 4.11.8 緯度経度から住所を取得する(逆ジオコーディング)
      • 4.11.9 gmaps-utility-library-flash ライブラリについて
  • 第5章Google Static Maps API Version 2

    • 5.1 緯度経度を指定して地図を表示する
    • 5.2 住所や名称を指定して地図を表示する
    • 5.3 ズームレベルを指定する
    • 5.4 地図サイズを指定する
    • 5.5 地図画像の画像形式を指定する
    • 5.6 マップタイプを指定する
    • 5.7 モバイル用に最適化する
    • 5.8 マーカーを追加する
    • 5.9 住所や名称を使ってマーカーを指定する
    • 5.10 マーカーにオリジナル画像を指定する
    • 5.11 ポリラインポリゴンを描画する
    • 5.12 エンコード化されたポリラインポリゴンを描画する
    • 5.13 地図サイズに応じて最適な中心位置とズームの地図を表示する(1)
    • 5.14 地図サイズに応じて最適な中心位置とズームの地図を表示する(2)
    • 5.15 地図の表示言語を指定する
    • 5.16 sensor パラメータを利用する(Android 携帯の場合)
    • 5.17 sensor パラメータを利用する(iPhone の場合)
  • 第6章その他

    • 6.1 Google Maps API に関するFAQ
    • 6.2 HTTP リクエスト経由のジオコーディング逆ジオコーディング
    • 6.3 日本測地系と世界測地系の変換について
    • 6.4 その他のールやサイト
    • 6.5 60 進法の緯度経度から10 進法の緯度経度の変換
  • 第7章Google Maps API Premier

    • 7.1 無償版とGoogle Maps API Premier の違い
    • 7.2 Google Maps API Premier 開発パートナー
    • 7.3 Google Maps API Premier 販売パートナー
    • 7.4 Google Maps API Premier デベロッパーキット
    • 7.5 Google Maps API Premier の技術的な内容
  • 著者紹介

  • 索引


掲載コードのダウンロード

この本で紹介したコードをダウンロードすることができます。

掲載コードのダウンロード(約45.8MB)
Windowsで文字化けを起こすため、2011年3月22日に文字化けしないように圧縮しなおしました。






Search
Books
Google Maps API Programming Guide

Four Google Maps API Experts wrote this book. Introducing useful examples for developers!
See more details