世界の測量

Sibling of "Relevant, Timely, and Accurate, " but much lighter and shorter ※自らの所属する組織の見解を示すものでない

Tangram で国土地理院ベクトルタイル提供実験のデータを見る

Tangram で国土地理院ベクトルタイル提供実験のデータ(基盤地図情報)を見るコードを作成してみました。下記 gsi.html と gsi.yaml からなっています。ファイルは、GitHub レポジトリ https://github.com/handygeospatial/simple-demo においています。なお…

地図は「まちあるきファシリテーションツール」であり「意見交換プラットフォーム」(「国土交通」都市防災)

「国土交通」No.131(2015.4-5)「特集 都市防災」に「まちを歩いて防災マップをつくろう!!」という1ページ記事がある。「国土交通」No.131(2015.4-5) 特集 都市防災 - 国土交通省これを読んで思ったのだが、「マップづくり」という活動の主目的は、地図づ…

全国児童生徒地図優秀作品展の構造

第18回全国児童生徒地図優秀作品展の構成作品展の一覧を整理することを通じて、当該作品展の構造を考察する。 行事名 地区 主催 札幌市児童生徒社会研究作品展 札幌地区 札幌市教育地図研究会 私たちの身の回りの環境地図作品展 全国地区 環境地図教育研究会…

Geo+Webの新局面を象徴する「Turf for local gov」について

Turf for local gov: potholes and parking meters Turf for local gov: potholes and parking meters | Mapboxウェブ地図が単なる「プレースマークに吹き出し」だけの段階を脱する、それはウェブ地図の未来像の中に確実に描かれていることなのですが、その…

FOSS4G Advent Calendar 2014 に投稿

FOSS4G Advent Calendar 2014 http://qiita.com/advent-calendar/2014/foss4goss4g の 2014-12-15 のエントリとして、http://handygeospatial.github.io/foss4g-advent-calendar-2014/ を作成した。geojson-vt のサンプルサイトを作成したという話であるが、…

Hadoop を使った基盤地図情報の GeoJSON タイル変換 Pt. 1

本物の MapReduce を使った基盤地図情報の GeoJSON タイル変換の流れができた。ソースデータごとに GeoJSONL に変換するステップの後、一度に MapReduce を使って変換する方法である。ソースデータの一部が変更された時に、変更を受けていないソースデータに…

8月16日からの大雨(広島市内)正射画像をCesium 1.0で見る

地理院タイル「8月16日からの大雨(広島市内)正射画像(2014年8月28日撮影)」をCesium 1.0で見るサイトを作成しました。 サイト:8月16日からの大雨(広島市内)正射画像(2014年8月28日撮影)

The web is the totality of facts, not of things.

ウェブとは「思考しうること」の表現であり、すべて「思考しうること」は言語に支配される。ウェブとは言語がその限界を定めるもの、すなわち世界である。また、世界は事実の総体であり、ものの総体ではない。 よって、インターネットにモノがつながること(…

Leaflet + Webix (thx shimz.me)

http://shimz.me/example/webix/map/maps.html のカバーで、 http://handygeospatial.github.io/mapsites/2014/08/15/ を作成しました。感謝。 コード 多少の単純化を施しています。Webix も Leaflet もスッキリ書かせてくれるスタイルなので、かなり楽に書…

Cesium 1.0 で地理院タイル(地形モデルつき)

2014年8月1日に Cesium 1.0 がリリースされました(Cesium Version 1.0 Released)。それに先立ち、2014年4月29日には STK World Terrain という「terrain tileset for use with Cesium and other applications」という位置づけのものをリリースされています…

Leaflet.TileLayer.Filter の適用 Pt. 1

Leaflet.TileLayer.Filter (Home · humangeo/leaflet-tilefilter Wiki · GitHub) を地理院タイルに適用してみました。 結果 http://handygeospatial.github.io/mapsites/2014/08/09/ 画像をinvertするサンプルです。Safari や Chrome で見る限り、Leaflet.Ti…

Candidate areas for photogrammetric image analysis with GSI tiles

Considering availability of data and how typical the landscape is, I chose some candidate areas for photogrammetric image analysis with GSI tiles: Kiryu http://handygeospatial.github.io/mapsites/2014/08/06/#17/36.41629/139.34524 Kiryū, Gun…

OpenLayers 3 で地理院の道路中心線ベクトルタイルを読む

OpenLayers 3 で地理院の道路中心線ベクトルタイルを読むサイトを作成した。最小限のコードに加え、OpenLayers 3 の特徴である地図の回転に対応してある。 作成したサイト Experimental GSI Vector Tiles via OpenLayers 3 (shift+drag to rotate) 技術的特…

IETF GeoJSON

IETF での GeoJSON の検討が進んでいるようです: https://datatracker.ietf.org/doc/draft-butler-geojson/?include_text=1 仕様の検討・作成は、GitHub で進められているようです: https://github.com/geojson/draft-geojson GeoJSON のもともとの仕様は…

OpenBeerMap2 via VTS

OpenBeerMap というものがある。やや待たされる感じがしたので、VTSベースのものを作ってみた。 構想 OpenBeerMap というものがある(https://openbeermap.github.io )。確認はしていないが Overpass API を使っているそうである。こういうスタティックかつ…

ボランティアGISと地理院地図(雑誌「測量」7月号 碓井論文から抜き書き)

雑誌「測量」7月号に、NPO法人全国GIS技術研究会理事長の碓井照子先生(奈良大学名誉教授・地理学)の論文「2005年以降のGIS産業の質的変化(1)ーネオジオグラフィーの世界とボランティアGISー」が掲載されており、この中でボランティアGISと地理院地図の関係…

地名の英語表記ルールの骨子

http://www.gsi.go.jp/common/000093364.pdf に記載されている地名の英語表記ルールについて、自分なりの斜め読みで骨子にしてみた。正確なところは原資料をあたっていただきたい。 原則 地名や施設名の表音のローマ字表記のうち地形や種別を表す部分(yama、…

国土数値情報(河川データ)ベクトルタイル(z=13以上、北海道のみ)サイト

国土数値情報(河川データ)ベクトルタイル(z=13以上、北海道のみ)サイトをリリースしたので取り急ぎご案内する。技術的背景は稿を改めて説明するかもしれない。サイト:http://handygeospatial.github.io/mapsites/2014/06/30/http://www.handygeospatial…

ベクトルタイルコンバータのマルチジオメトリ入力対応

ベクトルタイルコンバータの入力がマルチジオメトリである場合にエラーとなっていたので修正した。該当部分は次の通り。 r.geometry.each{|single_geometry| single_geometry.tile(z) {|x, y, g| f = {:type => 'Feature', :geometry => g, :properties => p…

ベクトルタイルコンバータの出力するタイルがずれていないことの確認

ラインやポリゴンのデータもストリーム処理でベクトルタイルに変換する。Rubyで。 - 世界の測量 で作成したコンバータが出力するタイルがずれていないことを次の方法で確認した。 基本的方法 ウェブ地図(Leaflet)でタイル番号を出力し、タイル番号のタイル…

GeoJSONベクトルタイル(ベクトルタイルの Content-Type としての GeoJSON)雑感

ベクトルタイルの Content-Type に GeoJSON を使うメリットの一つは、QGIS で読めるということ。QGIS を data hack の scaffold に使えるということが直面する作業のためによく、また、ウェブブラウザに限定されないベクトルデータ配信方式としてベクトルタ…

ラインやポリゴンのデータもストリーム処理でベクトルタイルに変換する。Rubyで。

ラインやポリゴンのデータもストリーム処理でベクトルタイルに変換するプログラムを作成したので共有する。Rubyでgeoruby-ext(特にRGeo経由でGEOS)を使う。 使い方 $ ruby convert.rb [theme] [z] [shapefiles...] theme は、{z}/{x}/{y}.geojson が置かれ…

ICUのRuby実装twitter-cldr-rbの動作確認をする

i18n 界隈では、昔から ICU - International Components for Unicode が知られている。最近、このRuby実装である twitter/twitter-cldr-rb · GitHub を知ったので、このGithubページのREADMEにある Usage をなぞるだけであるが手元の OS X で動作確認してみ…

ツールとしてのいくつかのことばの定義

思考のツールとして、いくつかの言葉をかりそめに定義しておく。 オンラインデータ 使用可能な形でオンラインアクセス可能になっているデータを指す。伝統的に、インターネット提供されるデータは、直接使用することは不可能なアーカイブ形式で配布されるこ…

【開始】georuby-ext を通じた RGeo ベースのジオメトリ処理

最近久しぶりにジオメトリ処理の引き合いを頂きまして、定例なのですが今 Ruby でジオメトリ処理をするための方法の確認を開始しました。 使用するライブラリ Shapefile等データの取り扱いには、これまでよくGeoRubyを使っていましたので、GeoRubyと連結の良…

MapReduce的ベクトルタイル作成のマルチスケール処理方法

map.rb、sort、reduce.rb を使った「MapReduce的ベクトルタイル作成」ですが、次のようにすると、少なくともポイントデータについては問題なく、マルチスケールのベクトルタイルを高速に作成できそうですね。 作成する最大のズームレベルにおいて、z/x/y に…

dejimaはオープンリダイレクタ?

オンラインデータのクロスオリジンプロキシdejimaの作成 - 世界の測量で作成した http://dejima.herokuapp.com/ は、よくは分かりませんがOAuth問題で言われているオープンリダイレクタのようですね。 OAuth 2.0 の脆弱性 (!?) "Covert Redirect" とは - OAu…

dejimaを利用したGeoJSONファイルのクロスドメイン読み込み

先ほど作成したdejimaプロキシを用いてleaflet-omnivoreからクロスドメインでGeoJSONファイルを読み込むサンプルを作成した。 サンプル http://handygeospatial.github.io/mapsites/2014/05/07/ ソース <html> <head> <meta charset='UTF-8'> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> </meta></meta></head></html>

オンラインデータのクロスオリジンプロキシdejimaの作成

前回のleaflet-omnivoreの検証で気がついたことは、オンラインデータについて、フォーマットの問題はクライアントサイドで片付きつつあるのに対して、クロスドメイン問題は、CORS設定の普及が間に合っていないという問題である。この問題を当面回避するため…

leaflet-omnivore テスト

leaflet-omnivore の考え方を理解するために、テストをしてみた。 結果 leaflet-omnivore テストに使ったCSVデータはdataSet/fukui_kindergarten/fukui_kindergarten.csv at master · shimizu/dataSet · GitHubを使用させていただいた。残念ながら、素のgith…

sotm-us-2014-dc-springmeyer.pdf からの抜き書き

sotm-us-2014-dc-springmeyer.pdf からの抜き書きを試みる。 ベクトルタイルとは何か 画像タイルと同じようなもの キャッシュが容易であり、高速配信できる。 アドレッシングスキームは画像タイルと同じ。 多数の複雑なレイヤを(一種類のタイルで)表現する…

バイナリベクトルタイルのウェブ地図対応状況

http://vector.io/vector-map/ に学ばせて頂き、バイナリベクトルタイル(MVT; Mapnik Vector Tiles)のウェブ地図(Leaflet)対応状況を確認してみた。 結果 MVT on Leaflet 0.8 WebGLが必須となっている等するため、ブラウザによっては動かない場合もある…

Dojo Mobile 利用テスト

勉強のためにDojo Mobile tutorial | Flickrview | Part I | Sample1を自分なりのスタイルにして書きなおしてみるとhttp://handygeospatial.github.io/mapsites/2014/03/25/のようになった。ふむ。

地理空間情報クリアリングハウスのCKAN APIを叩いてみる Pt. 2

地理空間情報クリアリングハウスのCKAN APIを叩いてみる Pt. 1 - 世界の測量の続き。 Get a full JSON representation of a dataset, resource or other object (cnt'd) http://ckan.gsi.go.jp/api/3/action/tag_show?id=気象 特定タグのデータセットのリス…

地理空間情報クリアリングハウスのCKAN APIを叩いてみる Pt. 1

地理空間情報クリアリングハウスにはAPIが用意されている。http://docs.ckan.org/en/latest/api/index.htmlを参考に、試しに叩いてみる。 Get JSON-formatted lists of a site’s datasets, groups or other CKAN objects http://ckan.gsi.go.jp/api/3/action…

タイルパス→タイル位置ツール xyz.html

タイルパスをタイル位置に変換して地図上に表示する xyz.html を作成した。CC0。 http://handygeospatial.github.io/mapsites/xyz.html?16/58509/24181.png みたいな感じで、?の後ろにタイルパスを入れると、タイル矩形を地図に表現するだけの簡単なツールで…

リアルタイム・ベクトルタイル

リアルタイム・ベクトルタイルの実験をした。結果は http://handygeospatial.github.io/mapsites/2014/02/25/ 。 タイルデータサーバ heroku で実装した。http://rtvt.herokuapp.com/xyz/11/1852/749.geojson といったアドレスにアクセスすれば、タイル内10…

国土数値情報(避難施設データ)のベクトルタイル変換

国土数値情報(避難施設データ)のベクトルタイル変換を行ってみた。国土数値情報(地価公示)データの変換と同じだが、47都道府県分一つ一つクリックする必要はある。OS Xの場合、~/Downloads フォルダに展開されるので、そこをスタートラインにして、次の…

MapReduce的ベクトルタイル作成(地価公示)Pt. 5

その後、属性表示がもう少し human readable になるように改造してみた。 http://handygeospatial.github.io/mapsites/2014/02/12/ 変更点 変更点は、関数 render_properties の内容だけである。次のように書き換えた。 function render_properties(prop) { …

MapReduce的ベクトルタイル作成(地価公示)Pt. 4

間があいてしまったが、前回作成したベクトルタイルデータを表示する。 http://handygeospatial.github.io/mapsites/2014/02/11/ の解説である。 ソースコード index.html のソースコードは、次の通りである。その他、leaflet-hash.js と TileLayer.GeoJSON.…

MapReduce的ベクトルタイル作成(地価公示)Pt. 3

データをAWS S3にputする。 データの作成 これまで作成したプログラムmap.rb及びreduce.rbを使って、次の通りズームレベル14〜18のGeoJSONベクトルタイルを作成した。 $ ruby map.rb 14 | sort | ruby reduce.rb $ ruby map.rb 15 | sort | ruby reduce.rb $…

MapReduce的ベクトルタイル作成(地価公示)Pt. 2

ついでreduce.rbを紹介し、実際にタイルを作成する。 reduce.rb ソートされ、タイルごとに並んでいるデータをTileJSONに書き出すだけの簡単なプログラム。 require 'fileutils' require 'json' last = nil geojson = nil $n_tiles = 0 def write(geojson, zx…

MapReduce的ベクトルタイル作成(地価公示)Pt. 1

UNIXのsortを使って、TileStacheよりも原理的に早く、ベクトルタイルを作成する。狙うは、国土数値情報(地価公示)。小分けにして記録していく。これはその1回目。 原理 mapの出力でありsortの対象のデータは、古き良き「行指向」データである。形式は次の…

ベクトルタイル・いちさと(小学校区)Pt. 6・アンクリップトTopoJSON

アンプリップトTopoJSON対応をした。 http://handygeospatial.github.io/mapsites/2014/01/06/unclipped_topojson.html コードはまだあまり整理されておらず、データのリファレンスカウント(もどき)がグローバル変数になっており、タイルをアンロードした…

ベクトルタイル・いちさと(小学校区)Pt. 5・クリップトTopoJSON

TopoJSONを使うと良いよという助言を頂いたので、TopoJSONタイルにチャレンジしてみた。 結果 ※見た目は従前と変わらないが、データが軽くなったのでレスポンスがよくなっている。 http://handygeospatial.github.io/mapsites/2014/01/06/clipped_topojson.h…

ベクトルタイル・いちさと(小学校区)Pt. 4 アンクリップト・タイル

面データでは、タイル境界の問題が顕著である。TileLayer.Vector.Unclipped.jsを利用して、タイルにかかるポリゴンをタイル境界で切り取らないように用意したタイルから、タイル境界なしにポリゴンデータを描画する方法を試してみた。 結果 http://handygeos…

ベクトルタイル・いちさと(小学校区)Pt. 3 テストサイトの公開

ここまで準備したデータを使ってテストサイトを公開した。 http://handygeospatial.github.io/mapsites/2014/01/06/clipped.html ファイルのアップロード 作成したファイルをAWS S3にアップロードするには、s3cmdを使用した。tilestache-seed.py がデータを…

ベクトルタイル・いちさと(小学校区)Pt. 2 ベクトルタイルデータを用意し確認するまで

タイルデータの作成 作成したShapefileを対象とする tilestache.cfg を作成したところ、次のとおり。 {"cache": { "name": "Disk", "path": "/vagrant/es", "dirs": "portable", "gzip": [] }, "layers": { "school_district": { "provider": {"name": "vect…

ベクトルタイル・いちさと(小学校区)Pt. 1 Shapefile を用意するまで

より範囲を限定して、ベクトルタイルの実験をポリゴン方向に進めることにした。対象とするデータは国土数値情報(小学校区データ)である。今回は、作業順序の順番で情報共有する。 範囲の設定 茨城・千葉・埼玉・東京(いちさと)の合成地域から矩形区域を…

ベクトルタイル・バスルート

国土数値情報(バスルートデータ)の一部のベクトルタイル化する試行を行った。失敗の多い試行であったが、学習は進めることができたと思う。 結果 http://handygeospatial.github.io/mapsites/2014/01/01/ いくつか、見るに耐える部分を紹介する。 羽田空港…