MULTISOUP

MULTISOUP

MULTISOUP

Staff Blog

Introduction example

2017.06.24

ジオメトリライブラリを使って距離や面積を算出する

ジオメトリライブラリ

みなさん、こんにちは。
Google Maps JavaScript API を使用して2点間の距離やエリアの面積を計算する方法をご存知ですか?

 

数学が得意だから自分で計算できる! という人もいるかもしれませんが、地図には投影法というものがあり、その投影法を考慮した形で計算するのは、中々大変なものがあります。

 

このようなとき、JavaScript API にはジオメトリライブラリというものがあるので、ご活用ください。

簡単に距離や面積を算出することができます!!

 

ジオメトリライブラリを使用する場合は、下記のように js ファイルロード時に「libraries=geometry」と指定する必要があります。

<script https://maps.google.com/maps/api/js?v=3&libraries=geometry&key={API_KEY}"></script>

 

 

距離を算出するには、「google.maps.geometry.spherical.computeLength」に LatLngオブジェクトの配列を渡すだけです。最低2点以上設定してください。

var pos = [
    new google.maps.LatLng(35.5, 139.5),
    new google.maps.LatLng(35.5, 139.4)
];
var dist = google.maps.geometry.spherical.computeLength(pos);

 

 

次に面積です。距離と同様に「google.maps.geometry.spherical.computeArea」にLatLngオブジェクトの配列を渡します。当然、面積なので3点以上必要ですね。

var pos = [
    new google.maps.LatLng(35.5, 139.5),
    new google.maps.LatLng(35.5, 139.4),
    new google.maps.LatLng(35.4, 139.3)
];
var area = google.maps.geometry.spherical.computeArea(pos);

 

 

デモサイトを作成したので、お試しください。

地図上をクリックすると、ラインやポリゴンを描画します。そのオブジェクトの距離、面積を算出します。

Full Screen

 

 

ジオメトリライブラリには、他にも以下の機能があります。

● ポイントがポリゴン内に存在するか判定する機能

● ポイントがポリライン・ポリゴンの境界付近に存在するか判定する機能

 

詳しくは、下記サイトをご覧ください。

https://developers.google.com/maps/documentation/javascript/geometry?hl=ja

 

 

今後も便利なライブラリがあれば、このブログで紹介していきたいと思います。

バイ!

【関連記事】こんな記事も読まれています

2017.03.17

時差計算ができるGoogle Maps Time Zone API の利用方法を・・・

みなさん、こんにちは。

 

Google Maps API で最後まで紹介できていなかった「続きを読む

2017.02.26

Wi-Fi マックアドレスから位置取得

みなさん、こんにちは。

Google Maps API には様々なAPIがありますが、その中の「続きを読む

2016.06.22

山梨県立富士山世界遺産センター公式アプリ「ふじめぐり」

みなさん こんにちは!

本日(6/22)、山梨県立富士山世界遺産センターが開館しました!

今回は富士山世界遺産センターと「・・・

続きを読む

 - Google Maps JavaScript API, スタッフ日記

お問い合わせお見積もりから開発のご相談まで、お気軽にお問い合わせください。

(※)は入力必須項目です。

当社では、お客様がお問い合わせの際に必要な個人情報または、 お問い合わせ内容等につきましては、
お問い合わせの回答の目的のみに利用します。

Google Maps for Work™に関するご質問やお見積りは、
マルティスープまでお気軽にお問い合わせください03-3518-9013 (受付時間:平日 9:00−18:00)