
日本の白地図画像(例えば http://www.craftmap.box-i.net/japan.php のもの)を使用し、
都道府県ごとに色を指定、データを入れたら自動で色をマッピングしてくれるようなプログラムを書こうと思ってます。
簡単に言うと、 http://aoki2.si.gunma-u.ac.jp/map/map.html のような仕組みのプログラムを作りたいのですが…。
画像を取り込んで、色を塗りつぶす場所と色を指定、というプログラムを書けばいいのは分かるのですが、「指定した範囲だけ塗りつぶす」ということが調べても全く分からなかったので質問しました。
どのようなサイトが参考になるのか、またはどの書籍を参考にしたら良いのか教えて頂けないでしょうか?
宜しくお願い致します。
No.3ベストアンサー
- 回答日時:
う~ん、私ならsvg形式の白地図を使いますね。
たとえばwikipediaの「日本地図.svg」なんかは県境を描画して中身を#bbee66で塗りつ
ぶしたデータです。これの各都道府県のpathにidを振っておいて、
javascriptからDOMをいじってfill属性を付加してやれば、簡単に好
みの色で塗りつぶすことが出来ます。
私はjavascriptもあんまり詳しくないんですけど、とりあえずDOMイ
ンスペクタやテキストエディタでいじってみて簡単に出来たので。
ありがとうございます。
svg形式やDOMという言葉を初めて聞いたので、まずはそこから理解してみます。
質問する前は何か本を一冊読めば出来るだろうと考えていたのですが、安直でしたね…。勉強します。

No.4
- 回答日時:
塗りつぶせるかどうかは、?ですが、もしやるとしたら
各都道府県の画像を背景を透明にして、土地の部分だけを塗りつぶした画像を白地のものとそれ以外の色でつくります
各県の配置は、白地の画像を絶対値指定で配置します
指定された県だけ、色付きの画像に変えればできると思います
提示されたサイトは、おそらくアウトラインデータをビットマップに変換しています
なのでPHPとかでなら、同じ機能を実現できると思います
でも道のりは、かなり遠いと思います
No.2
- 回答日時:
「塗り潰し」は面倒なので、考え方を変えましょう。
「白地図を、パレット付きのインデックスカラーの画像データ」にして、最初からすべて違う色で塗り分けてしまえば良いのです。
例えば、256色カラーの画像にして
カラー0:海岸線(黒)
カラー1:北海道(白色)
カラー2:青森(白色)
(略)
カラー47:沖縄(白色)
カラー48:県境いの線(灰色)
カラー49:湖沼、海洋(白色)
カラー50~255:未使用
という画像を用意します。
ここで「北海道を水色にする」なら「カラーパレットデータの1番を水色に書き換える」と、北海道が水色になります。
画像をファイルにして置いておくなら「1番のカラーパレットデータが格納されている場所」は「ファイルの先頭から○○バイト目」と言う感じで固定されているので、ファイルの中身を書き換えるのは簡単です(※)
カラーパレットデータは、0番から255番まで、規則的に順番通りに並んでいるので、計算で位置を求めるのも可能な筈です。
※PNG画像ファイルの場合は、ファイルの一部を書き換えたらチェックサムも書き換えないと上手く行かないので、簡単には行きません。
ありがとうございます。
「パレット付きのインデックスカラーの画像データ」という言葉の意味が理解できないので、勉強不足ですね…。
まずは調べて、自分で実装してみます。
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
背景画像の繰り返しについて
-
uwscについての質問です。 画面...
-
VBSでワードに画像を貼り付ける
-
同じ画像を複数回表示させる
-
画像の存在チェック
-
HTMLで画像をポップアップで表...
-
画像の一部だけが点滅する画像...
-
VB6での画像のサイズ変更に関して
-
uwscについてです
-
セックスレスの既婚女性は自慰...
-
Visual Basic 6.0 コンボボック...
-
CloseとDisposeの違い
-
エクセルで、日付を入力すると...
-
エクセルVBAで、MsgBox やInput...
-
メルカリのメルカードで買い物...
-
「ご処理進めて頂きますようお...
-
VBAでCOPYを繰り返すと、処理が...
-
PDFフォームに本日の日付を自動...
-
マウスイベントが動かない
-
オブジェクト名をVBAで指定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL VBA 複数のImageコントロ...
-
VBAのユーザーフォームのイメー...
-
Excel ユーザーフォームで表示...
-
【EXCEL VBA】ダブルクリックで...
-
スマホでサイトの画像を長押し→...
-
UWSC 画像判定と条件分岐について
-
HTMLで画像をポップアップで表...
-
「using Windows」でエラーが出る
-
画像のビット数を変更する方法
-
画像処理したBitmapをピクチャ...
-
UWSC「画像が無い場合」
-
背景画像の繰り返しについて
-
PowerPoint VBA で画像の鮮明度...
-
uwcs のマクロで画像認識をして...
-
gif 画像上の ボタンに リン...
-
画像が分割されて切り替わる、...
-
uwscの画像認識に失敗します。
-
C#で画像を他の画像に貼り付け...
-
vb.net 画像の透過について
-
MFCでCImageListに画像追加失敗
おすすめ情報