経緯度からWeb Mercator座標を計算するコード

経緯度からWeb Mercator座標を計算するコードを 経緯度とGoogle Mercatorとの変換式を確認してみる(OpenLayers & Proj4js)。 - Relevant, Timely, and Accurate から取り出して、タイル矩形を EPSG:3857 の GeoTIFF に吐き出せるようにするコードを完成し…

XYZタイルが係る二次メッシュの算出

上を踏まえて、XYZタイルがかかる二次メッシュのリストを算出するコードを共有します。

XYZタイルの経緯度矩形の計算

XYZタイルの経緯度矩形をRubyで計算するコードを共有します。はてなブログでうまくはてな記法が乗らないので、久しぶりにはてなダイアリーへの投稿です。

ジオタグ付きツイートの座標をRubyで見る簡単なプログラム

Twitter の HTTP GET で使える API を使って、キーワード検索したツイートのうちジオタグ付きのツイートの座標を表示するプログラムを Ruby で作成してみました。

JavaScriptプログラムをJRubyインタプリタ上で動かしてJavaScriptライブラリのRuby移植への橋頭堡にする

Ruby には therubyrhino という gem があり、JavaScript プログラムを JRuby インタプリタ内の Rhino コンテキストで実行できます。これは、JavaScript ライブラリを Ruby に移植するときに、移植前プログラムを確認するのに便利です。

Prawnで簡単に任意のサイズのPDFを書き出す

Ruby では、Prawn を使うと、日本語が含まれる任意の寸法の PDF ファイルを書き出せることを確認しました。

JUMP (OpenJUMP) で Java を使って Shapefile を読むだけのコード

JUMP (OpenJUMP) で Java 言語を使って Shapefile を読むだけのコードを作成してみました。

今回の震災で感じたGeo+Webの技術面の課題 Pt. 1

今回の震災で感じたGeo+Webの技術面の課題を記録し始めたいと思います。

国土地理院提供の被災地の空中写真をFlickerに。経緯度はここに。

計画停電によるリスクをヘッジするための個人的試みとして、国土地理院提供の被災地の空中写真をダウンロードしたものFlickerに、経緯度はここにミラーします。

町域コンパレータ(基本コード)

日本郵便から配布されている郵便番号データでは、町域名が綺麗にソートされています。郵便番号の順序情報を利用して、町域をソートする町域コンパレータを作ってみました。

GeoHexV2SuperOverlay

GeoHexV2 で KML SuperOverlay を実現してみました。

ひとつのGeoHexをKMLにするSinatraワンファイル・サーバ

一つの GeoHex を KML にして送り出すワンファイル・サーバを作ることができました。

geohex-gem 2.0.1 の GeoHex::Zone.hexCoords を今すぐ使いたいための黒魔術

geohex-gem 2.0.1 の GeoHex::Zone.hexCoords を今すぐ使いたいために、後から手を入れてみました。本来は github できちんと貢献すべきですが、とりいそぎ。

wukongを使って住所の表データをツリーデータに変換

wukongを使って、表状態になっている住所データから、住所の要素それぞれの下位ノードが分かるツリーデータに変換してみます。

wukongをMac OS Xに導入してローカルモードで動作確認するまで

RubyでMapReduceするwukongについて、Hadoopを使わないローカルモードでの動作テストをしました。

iOSのオープンさについて

Android vs iOS という文脈で「iOS はクローズドである」と語られることが多いですが、iOS も、Mac OS X と同様に、「オープンな側面もある」ということの確認です。

W3C HTML5 Logo が出た/HTML5の8つの技術クラスとは何か

W3C から HTML5 のロゴが出ましたので紹介します。

「かんたんWebアプリ技術」と「Web技術哲学」について

考え始めてみました。twitter で書き流してしまう考えを、blog に定着してみる実験でもあります。

Web+GISを考えるにあたり、WebとGISの定義を確認する

Web+GISを考えるにあたって、WebとGISの定義を振り返ります。書きかけ的な記事です。

HTML5で、オフラインでも使えるiPod/iPhone超簡単アプリっぽいものをSinatra+Hamlのワンファイル・サーバで作ってみた

http://www.publickey1.jp/blog/11/html5ipodiphone.html を Ruby の Sinatra+Haml のワンファイル・サーバで実現してみました。

「霞ヶ関→霞が関」の町名変更について簡単に推測してみる。

町名「霞が関」は昭和42年4月の住居表示実施をきっかけに「霞ヶ関」から変更されたのではないでしょうか。手近にあるツールを使って情報を集めてみました。

SVG to PNG conversion using Ruby + cairo + rsvg on Mac OS X Snow Leopard + MacPorts

A way to convert a SVG file to PNG file using Ruby + cairo + rsvg on Mac OS X Snow Leopard + MacPorts is confirmed.

A quick way to get tiled images 'untiled'.

A way to get tlled images 'untiled', using RMagick. An experiment on OpenStreetMap tiles for Pacifico Yokoyama.

A way to remove pairs of the same (but with different orientation) geometries from a (small) LineString collection

Say you have a small collection of LineString geometries, and you want to remove pairs of same geometries with different directions. Here are some solutions using JTS (JTS Topology Suite) from Ruby, using Rjb (Ruby Java Bridge.)

Yet another way to keep Java classes in Ruby, using OpenStruct

Yet another way to keep Java classes in Ruby, using OpenStruct;

What is the actual mathematical expression for Google Mercator? Confirm it through Safari's Web Inspector on OpenLayers and Proj4js

Thanks to http://www.spatialreference.org/ , it is very easy to check the WKT definitions for WGS84 and "Google Mercator" projection. But the actual mathematical expression to convert Google Mercator to WGS84 is not so easy to check, altho…

経緯度とGoogle Mercatorとの変換式を確認してみる(OpenLayers & Proj4js)。

既存の JavaScript プログラムに埋め込まれた、経緯度とGoogle Mercatorとの変換式(特にメルカトルから経緯度への逆変換式)を確認してみました。Safari の Web インスペクタを使って簡単に調べてみます。

ST_AsSVG も魔法ではない。(ST_AsSVG がポリゴンに対してやっていること)

PostGIS に含まれている便利な関数 ST_AsSVG ですが、魔法ではないので特別なことはしていません。穴あきポリゴンに対する ST_AsSVG の動きを追ってみます。

位置参照情報を正規化っぽくして SQLite3 に入れたらずいぶんコンパクトにできたけど、町字の 10% くらいについて町字コードを探せてない。

d:id:hfu:20100831 の帰結として、データベースのサイズと町字コードのマッチ度合いについてまとめます。

Sequel で GeoHash 検索の実験をするために神奈川県の街区&大字レベル位置参照情報を SQLite3 に入れたらマッチングに苦労した

GeoHash を用いてプレインな RDBMS で点情報の検索をしてみたいと思い、街区&大字レベル位置参照情報を SQLite3 に入れようとしています。Mac & Ruby 縛りでやっています。コードの一致を意識していたら、いろいろと落とし穴にはまったので、このエントリで…