GIS

地理情報(GIS)の開発

Drupalでの地理情報を扱うモジュールなどの設定や開発環境などの情報。

Leafletモジュールを使う

Leaflet  ダウンロード ここから  詳細は ここから

Google Mapとの連携するモジュール

Simple Google Maps ダウンロード ここから  詳細は ここから

Location Map ダウンロード ここから  詳細は ここから

Route Planner ダウンロード ここから  詳細は ここから

 

 

GIS関連の役立つ情報

動画 Google maps Geolocation Codeigniter Full Script (PHPの場合) ここから

 

 

 

タグ: 

CMS: 

Leaflet

Leafletモジュール

Leaflet はWeb地図のためのJavaScriptライブラリです。 概要は Wikipediaにて 

Drupal と Leafletを使って複数のロケーション情報を地図上でマッピングする手順。

この手順は、YoutubeのGetting started with Leaflet - Drupal」 を参考にしました。

 

インストール環境

Drupal 7.41 Views 7.x-3.11 Geofiled 7,x-2.3  geoPHP 7.x-1.7  Libraries 7.x-2.2   Geocoder 7.x-1.2  Leaflet 7.x-1.3  Leaflet Library 0.7.7  Entity API 7.x-1.6 

 

必要なモジュールやPHPライブラリの設定

Geofieldモジュールのダウンロードとインストール ここから 

geoPHPモジュールのダウンロードとインストール ここから このモジュールのほかに、geoPHPライブラリー(GitHubのgeoPHPサイトからダウンロード)もインストールします。 ここから sites/all/libraries の下に、geoPHP ディレクトリとして保存します。

Libraries API モジュールのインストール。ダウンロードは ここから 。

Geocoder モジュールのダウンロードとインストール ここから 。

 

デモデータの作成手順

コンテンツタイプの新規作成、ロケーション情報(名前、本文説明、住所フィールド)などを追加します。

たとえば、コンテンツタイプ名 Location にする。 address と accommodation のフィールド追加します。

addressフィールドはTXTで作成します。 geofieldフィールドは、geofieldタイプ、Geocode from another fieldのウィジェットを選択します。

作成したロケーションのコンテンツタイプを新規追加する前に、タクソノミーを使って、ロケーションタイプ(ホテル、サウナ、など)を設定します。

Drupal Leaflet modue make content types

 

geofieldのウィジェットは以下の設定で保存します。geocoderは地図のXY座標を取得する方法で、以下の場合は、Google Mapsから取得する設定です。

Drupal 7 geofiled

 

作成したロケーションのコンテンツタイプを新規追加する前に、タクソノミーを使って、ロケーションタイプ(ホテル、サウナ、など)を設定します。

 

タクソノミーのボキャブラリーに、type of accommodation を追加し、そのタームに、Campsite、Hotel、Saunaなどを登録します。

Drupal 7 taxonomy vocabulary

Drupal 7 taxonomy Term

 

先程のロケーションのコンテンツタイプに、type of accommodationのフィールドを追加します。ターム参照、選択リストを選定。

Drupal 7 Leaflet taxonomy

 

選択リストのボキャブラリーは、type of accommodation を選択します。

ロケーションタイプのコンテンツを新規作成し、 addressには、日本語で住所を記入します。 accommodation も選択します。

Drupal 7 Leaflet make new content

 

作成したロケーションのページには、入力した住所の実際のXY座標(GoogleMaps経由)が表示されます。

Drupal 7 Leaflet geofield

同じように複数のロケーションを追加します。

 

Viewsの設定(Leafletで登録したロケーションのコンテンツを表示)

Leafletモジュールのインストール ここから  Leafletライブラリのインストール ここから  ダウンロードしたら、sites/all/libraries の下に、leaflet ディレクトリとして保存します。

Viewsモジュールのインストール ここから  Entity APIモジュールのインストール ここから 

Viewsの作成 コンテンツタイプはロケーションを選択、Display formatは Leaflet Mapを選択、 items to display は 0 を選択(制限なし)、user a pger はなし、Create a menu link をチェックします。

Drupal 7 leaflet views setup 1

 

Viewsの設定画面で、フィールドの追加 geofiled

Drupal 7 leaflet views add field geofield

 

フォーマットの環境設定でコンテンツを設定します。 ただし、Description Content は次のBodyフィールドを追加したあとに有効になります。

Drupal 7 Leaflet Views format settings

 

地図上のバルーンアイコンをクリックして、その場所の説明を表示するBodyフィールドを追加します。 フォーマットは切り詰め、文字の長さを100に設定しました。

Drupal 7 Leaflet add body field

 

フォーマットの環境設定でコンテンツを設定します。 Description Content は、コンテンツ:Body を選択します。 上記2番目の図を参照して下さい。

以上の設定で地図上に登録したロケーションの情報が下記のように表示されます。

 

実際のテスト環境の画面

Drupal 7 + Leafletモジュール

 

さらに、タクソノミーで設定した、type of accommondation のHotel.、Sauna、などのカテゴリごとに表示させるためには、Viewsのフィルター機能などを使って拡張可能です。

 

 

タグ: 

オープンソースソフトウェア: 

CMS: 

Location Map

Location Map モジュール

管理画面で地図情報を定義

Drupal Location Map module

表示は、xxxxxx/locationmap  で表示

実際に表示された場合

Drupal Location Map

別の表示形式

Drupal Location Map module

 

 

タグ: 

CMS: 

Route Planner

Route Plannerモジュール
  • Google Map との連携で便利なモジュールRoute Planner

https://www.drupal.org/project/routeplanner

設定はブロックで行う

Drupal Route Planner module

住所フィールド

Drupal Route Planner module

マップ表示

Drupal Route Planer module

実際の例 東京駅から横浜駅までをルート計測

Drupal Route Planner module

 

 

タグ: 

CMS: 

Simple Google Maps

Simple Google Maps モジュール

コンテンツタイプのフィールドに設定でき、Viewsなどとの連携も可能

Drupal Simple Google Maps module

表示でテキストをGoogle Mapと連携

Drupal SImple Google Maps module

実際に表示された場合

Drupal Simple Google Maps module

 

 

タグ: 

CMS: