C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[7]: 【質問】地図:県毎に色を変える仕組みについて


(過去ログ 73 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■42624 / inTopicNo.1)  【質問】地図:県毎に色を変える仕組みについて
  
□投稿者/ にわか雨 (1回)-(2009/10/19(Mon) 14:49:02)

分類:[VB.NET/VB2005 以降] 

質問させて頂きます。
下記のようなPGを作成中なのですが表現方法(利用オブジェクトなど)がわかりません。
何かアドバイス頂けたらと思います。

作成PG概要----------------------------------------
○CSVファイル取込(県ごとの在庫データCSV)
 ↓
○地図画面表示
※CSVの在庫データの数値によって地図内の県に対する色を変える。
----------------------------------------------------

ネットにて3時間ほど調べたのですが全然わかりません・・

地図を部分的に色を替えるような仕組みを表現する「オブジェクト」、「ツール」、などはあるのでしょうか?何か解決に繋がるヒント・アドバイスなどを頂けたら幸いです。
引用返信 編集キー/
■42625 / inTopicNo.2)  Re[1]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ ヴァン (24回)-(2009/10/19(Mon) 15:03:00)
No42624 (にわか雨 さん) に返信
> 質問させて頂きます。
> 下記のようなPGを作成中なのですが表現方法(利用オブジェクトなど)がわかりません。
> 何かアドバイス頂けたらと思います。
>
> 作成PG概要----------------------------------------
> ○CSVファイル取込(県ごとの在庫データCSV)
>  ↓
> ○地図画面表示
> ※CSVの在庫データの数値によって地図内の県に対する色を変える。
> ----------------------------------------------------
>
> ネットにて3時間ほど調べたのですが全然わかりません・・
>
> 地図を部分的に色を替えるような仕組みを表現する「オブジェクト」、「ツール」、などはあるのでしょうか?何か解決に繋がるヒント・アドバイスなどを頂けたら幸いです。

こんにちは。
地図データは何で持ってます?

都道府県をそれぞれ違う色で塗っておいて、その色を置換するとか?
引用返信 編集キー/
■42627 / inTopicNo.3)  Re[2]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ にわか雨 (2回)-(2009/10/19(Mon) 15:16:17)
No42625 (ヴァン さん) に返信
> こんにちは。
> 地図データは何で持ってます?
>
> 都道府県をそれぞれ違う色で塗っておいて、その色を置換するとか?

返信有難う御座います。
地図データはビットマップでもっています。
色を置換たりする為には地図データをペイントなどで区切って県毎にビットマップファイルを持つ必要があるのでしょうか?
というかbmpでもっちゃまずいのでしょうか・・

申し訳ないです。知識が乏しいもので。
引用返信 編集キー/
■42635 / inTopicNo.4)  Re[3]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ 魔界の仮面弁士 (1355回)-(2009/10/19(Mon) 18:09:26)
No42627 (にわか雨 さん) に返信
> 色を置換たりする為には地図データをペイントなどで区切って県毎にビットマップファイルを持つ必要があるのでしょうか?

(案1)県外のエリアを透過にした、47種(1都1道2府43県分)の PNG 画像を
   用意しておき、それらを重ね合わせて描画表示する。

(案2)地図全体画像とは別に、各県部分を切り出した Region データを用意しておき、それを
   http://dobon.net/vb/dotnet/graphics/setclip.html
   のようにして利用して、各県をクリッピング描画する(各県を任意色で塗りつぶす事も可能)。

# 案2の実装を行った事はあります。都道府県地図ではありませんでしたが。
引用返信 編集キー/
■42665 / inTopicNo.5)  Re[4]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ たくボン (267回)-(2009/10/20(Tue) 00:47:07)
No42635 (魔界の仮面弁士 さん) に返信
> ■No42627 (にわか雨 さん) に返信
>>色を置換たりする為には地図データをペイントなどで区切って県毎にビットマップファイルを持つ必要があるのでしょうか?
> (案2)地図全体画像とは別に、各県部分を切り出した Region データを用意しておき、それを
>    http://dobon.net/vb/dotnet/graphics/setclip.html
>    のようにして利用して、各県をクリッピング描画する(各県を任意色で塗りつぶす事も可能)。

俺ならこっちでするかな。Regionなら単一背景色だけでなく、色々な視覚効果つけたりできるし、都道府県のCSVデータによって輝度や色調深度を変えたりするのも楽だから。
最初のRegion作るのが一番大変だと思うけど、そこはフォトショップとか使って都道府県別のマスクを作ってそれから作るのが楽かも。
引用返信 編集キー/
■42859 / inTopicNo.6)  Re[5]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ にわか雨 (4回)-(2009/10/22(Thu) 13:14:31)
No42665 (たくボン さん) に返信
> ■No42635 (魔界の仮面弁士 さん) に返信
>>■No42627 (にわか雨 さん) に返信
> >>色を置換たりする為には地図データをペイントなどで区切って県毎にビットマップファイルを持つ必要があるのでしょうか?
>>(案2)地図全体画像とは別に、各県部分を切り出した Region データを用意しておき、それを
>>   http://dobon.net/vb/dotnet/graphics/setclip.html
>>   のようにして利用して、各県をクリッピング描画する(各県を任意色で塗りつぶす事も可能)。
>
> 俺ならこっちでするかな。Regionなら単一背景色だけでなく、色々な視覚効果つけたりできるし、都道府県のCSVデータによって輝度や色調深度を変えたりするのも楽だから。
> 最初のRegion作るのが一番大変だと思うけど、そこはフォトショップとか使って都道府県別のマスクを作ってそれから作るのが楽かも。

貴重なご意見ありがとうございます!!
大変助かります。
あともう一つ質問なのですが
Regionデータを作成するのに滑らかな曲線で画像を切り抜く事はできるのでしょうか?
調べたところ四角くしかできないような・・・


引用返信 編集キー/
■42866 / inTopicNo.7)  Re[6]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ 魔界の仮面弁士 (1360回)-(2009/10/22(Thu) 13:44:17)
2009/10/22(Thu) 13:45:51 編集(投稿者)

No42859 (にわか雨 さん) に返信
> Regionデータを作成するのに滑らかな曲線で画像を切り抜く事はできるのでしょうか?
> 調べたところ四角くしかできないような・・・

自分の場合には、
 (1) フリーの Paint.NET などを利用して、目的の形状をもった白黒2値の Bitmap を生成。
 (2) それをドット単位で 1 ラインずつ走査して矩形リージョンにし、それを繋げていく。
 (3) 完成した Region を、.GetRegionData().Data でバイナリ保存しておく。
 (4) 実行時には、そのバイナリを RegionData に読ませて、Region クラスに復元して利用する。
として対応していました。

(2) の部分については『bitmap region』などのキーワードで検索すると、
幾つかのサンプルを見つけられるかと思います。

元地図がビットマップ画像ではなくベクトル画像の場合には、また話が変わってきますけれども。
引用返信 編集キー/
■42903 / inTopicNo.8)  Re[7]: 【質問】地図:県毎に色を変える仕組みについて
□投稿者/ にわか雨 (5回)-(2009/10/23(Fri) 10:08:53)
No42866 (魔界の仮面弁士 さん) に返信
> 2009/10/22(Thu) 13:45:51 編集(投稿者)
>
> ■No42859 (にわか雨 さん) に返信
>>Regionデータを作成するのに滑らかな曲線で画像を切り抜く事はできるのでしょうか?
>>調べたところ四角くしかできないような・・・
>
> 自分の場合には、
>  (1) フリーの Paint.NET などを利用して、目的の形状をもった白黒2値の Bitmap を生成。
>  (2) それをドット単位で 1 ラインずつ走査して矩形リージョンにし、それを繋げていく。
>  (3) 完成した Region を、.GetRegionData().Data でバイナリ保存しておく。
>  (4) 実行時には、そのバイナリを RegionData に読ませて、Region クラスに復元して利用する。
> として対応していました。
>
> (2) の部分については『bitmap region』などのキーワードで検索すると、
> 幾つかのサンプルを見つけられるかと思います。
>
> 元地図がビットマップ画像ではなくベクトル画像の場合には、また話が変わってきますけれども。

ヴァン様・魔界の仮面弁士様・たくボン様
とても丁寧に教えて頂き感謝の気持ちでいっぱいです。
ありがとうございます!!がんばってみます



解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -