RubyでMapReduceするwukongについて、Hadoopを使わないローカルモードでの動作テストをしました。 続きを読む wukongを使って、表状態になっている住所データから、住所の要素それぞれの下位ノードが分かるツリーデータに変換してみます。 続きを読む
d:id:yellow_73:20080117 を拝見してこの手の話題の需要を感じたので、エントリしてみます。 DE-9IM のマトリクスを簡単にみることができるメソッドがあったら便利かも PostGISのマニュアルを見てたら、intersectとcrossの語が使い分けられているふうにみえます。 2008-01-16 これらの言葉の定義は、OpenGIS Simple Features Specification for SQL にあります。定義はかなり数学的で、DE-9IM と呼ばれる体系を使って書かれています。 ただ、DE-9IM を理解するよりも、具体的にこれらの predicates がどのように動くかを見てみるほうが「役に立つ」のではないか、DE-9IM のマトリクスを簡単にみることができるメソッドがあったら便利かも、と思いました。 それ、geotools.rb でできるよ。
PostGIS から Ruby を介して SVG に直結するタイプのウェブマッピングのコンセプト実証コードです。 コンセプト HTML5 の時代には、クライアントサイド(ブラウザ)のグラフィック能力が格段に向上しています。また、SVG 的にグラフィック要素を宣言していくタイプのグラフィックでは、グラフィックに対してイベントハンドラを自在に定義できるため、デスクトップアプリではむしろ実現できなかった、柔軟かつ豊かなユーザインタラクションが可能となってきます。 一方で、これまで作られてきた "Ajax 的" マップツールキットは、必ずしも HTML5 時代の新機能を活用しておらず、むしろ HTML5 時代の新機能を API の下に隠蔽する傾向があります。 そこで、サーバ側プログラミングと密接に連携することを前提に、SOAP/ASP 的な発想の地図画像サービス(すなわち、Web 1.0 的なサー
今回の震災で感じたGeo+Webの技術面の課題を記録し始めたいと思います。 あとで考えることができるよう、またあとで考えることができるきっかけとなるよう、ここに書いてみます。 情報の出口に関する課題 1ファイル10MBを超えるようなデータは分散配布を考えるべき 通常、Geo+Webの配布データといえば、数百KBくらいまでのタイルデータですが、災害時には、1ファイル10MBを超えるようなデータが大量に配布される場面が多いです。この場合、OSS の配布で通常行われているような分散配布技術が適用できると思います。例えば、Apache の配布で行っているようなミラーサイトだとか、もう少しラジカルには bittorrent みたいな方法とか。常識的な処方としてはミラーサイトだと思いますが、災害時に真に多くの人が時間を争って必要とするようなデータについては、bittorrent 的な技術の活用が考えら
ラスタ上の幾何描画と,ベクトル幾何描画の間にはもう少し整理された関係が構築できるのではないか。ラスタは離散座標系で,ベクトルはR2座標系。 ベクトル幾何描画では,Mathematical Morphology 的な処理に対応する処理ができない気がする。本当はそれに相当するものが自動総描を担うべきなのではないかと感じる。 制御系でも,離散系は有限整定みたいなすごく都合のいい性質がある(ように記憶しているけど記憶はとても怪しい)。それに近いことができるのではないか。 多分,手始めに相互の間の可逆変換の体系を作る必要がある。z 変換のようなもの。多分それはすごく難しくて,できるとしたらものすごい割り切りが必要。 ラスタ上の幾何描画は,一般のラスタよりはすごく小さいカテゴリで,Mathematical Morphology の舞台である2値画像に,ある制約を加えたサブセットでもある。 通常のラスベ
Twitter の HTTP GET で使える API を使って、キーワード検索したツイートのうちジオタグ付きのツイートの座標を表示するプログラムを Ruby で作成してみました。 the code # geotweets.rb %w{uri open-uri json}.map{|l|require l} print "> " while gets q = URI.escape($_.strip) JSON::parse(open("http://search.twitter.com/search.json?" + "q=#{q}&rpp=100&dummy=#{Time.now.to_i}"). read)['results'].map{|r| g = r['geo']; p g if g} unless q.size == 0 print "> " end examples $ ru
Apple の Core Location はとても優秀なサービスモデルなのではないかという考察です。 無線LAN測位の三大データベース 無線LAN測位というものがあります。無線LAN測位は、無線LANの電波がそれほど遠くまでは届かないことを積極的に利用していると思っています。その他の測位と違い、無線LAN測位は、測位というよりはむしろ、無線LAN基地局からの位置クッキーをバーチャルに実現する技術だと思います。無線LAN測位の能力を測位可能な面積で語ることは、実はあまり的を得ていません。 というのは、無線LAN測位を行うデバイスは、無線LANを使って何らかのインターネットサービスを受けることが前提であると考えるほうが常識的であるからです。インターネットサービスの付加サービスとして、現在位置クッキーを受け取ることができる、というのが無線LAN測位の本質なのだと思います。 無線LAN測位のため
ISO 19136 になり、Encoding Specification から Encoding Standard に格上げ(?)された、Geography Markup Language GML 3.2.1。私は XML Schema とはなるべくつきあいたくないので、「これで何にでも使える」極端に単純な GML Application Schema を試作してみました。 Geography Markup Language (GML) 3.2.1 is there as an Encoding Standard, not an Encoding Specification*1. I prototyped an extremely simple general-purpose GML Application Schema, because I do not like to hang aro
オープンスタンダードは、スタンダードという言葉の定義からして、オープンソースやオープンデータとは性質が異なるという考察です。 d:id:hfu:20090304 の続きとして、オープンソースとオープンデータにオープンスタンダードがくっつきすぎることに対する違和感について、思考実験*1により分析してみました。 「ダメなオープン○○」という思考実験 オープンなデータ、ソフトウェア、スタンダードについて、それが技術的にダメだったときに取り得る行動について、「無視する」という選択肢を除くとどうなるか考えてみたところ、 オープンでダメなデータは、更新すればよい。 オープンでダメなソフトウェアは、改善すればよい。 オープンでダメなスタンダードは、地獄への道を舗装する(d:id:sshi:20060215)。 ということばを思いつきました。 これを分析すると、スタンダードは、その「策定過程」や「再配布方
d:id:yellow_73:20100223 ありがとうございます。これに触発されて、私の考えをいくつか補完してみたいと思います。 サーバとクライアントの役割をひっくり返す話は安全地域での画像生成に限定した話のつもりでした 画像生成のキューがサーバから提供されていて、中断可能な分散クライアントが適宜キューからタスクを取得し、クライアントがサーバからソースデータを取り込んで分散して画像生成し、サーバに地図画像を戻すモデル http://d.hatena.ne.jp/hfu/20100218/1266437151 について、 クライアントを信用できるかどうかが重要です。 http://d.hatena.ne.jp/yellow_73/20100223#p1 とありますが、これはおっしゃるとおりです。上記のモデルは、サービスの完全に後方で、スタティックに提供する画像を生成する「地図画像生成」の
OpenLayers のベクトル編集機能を試してみました。 内容 このエントリは、d:id:hfu:20090407 の続きというところもあって、アパッチを使わない流儀でいきます。d:id:hfu:20090407 と違う点は、Rack ではなくてその上に乗っている Sinatra を使うようになったことと、finds.jp さんの基盤地図情報25000 WMSを使うようになったことです。 OpenLayers で基盤地図情報 25000 WMS を表示して、ベクトルレイヤとして適当な GeoRSS レイヤと WKT レイヤをつけた上で、WKT レイヤを編集可能にするサーバプログラムは、次のようになりました。 require 'rubygems' require 'sinatra' get '/' do content_type "text/html" haml <<-EOS !!! XM
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く