塗りつぶしについて – プログラミング – Home

通知
すべてクリア

塗りつぶしについて


jiro
 jiro
(@jiro)
ゲスト
結合: 23年前
投稿: 4
Topic starter  

はじめましてjiroと申します。
早速ですが、WINDOWSに標準でついている
MSペイントと同じようなソフトをC#で新規
開発しているのですが、塗りつぶしが
うまくできません。
線で囲まれた部分を指定色で塗りつぶす。
閉じられていない円に塗りつぶしを行うと
円の外まで塗りつぶされるような処理ができません。
「Fill***」を使用しても描画時にしか描画できず、
後から塗りつぶすことができません。
塗りつぶしの方法をご存知の方がいらっしゃいましたら
教えて頂けないでしょうか。
宜しくお願いいたします。


引用解決済
トピックタグ
鍋倉
 鍋倉
(@鍋倉)
ゲスト
結合: 22年前
投稿: 1
 

塗りつぶしのアルゴリズムはいくつか思いつきますが、
起点(クリックされた位置)のx,y座標で
x,yそれぞれの+1,-1の座標の色を判定していく方法が楽なのでは?
こんなところでも再帰ループが使えます。

Invalidate()をループ内におくと時間はかかりますが、面白いと思います。
なんかのグラフィックエフェクトにも使えるかも。


返信引用
jiro
 jiro
(@jiro)
ゲスト
結合: 23年前
投稿: 4
Topic starter  

鍋倉様 回答ありがとうございます。
回答についてもう一度質問がございます。

x,yの色はどのように判定すればよいのでしょうか?
再起ループとは普通のループとは異なるものなのでしょうか?

何度もすいませんが回答の程宜しくお願いします。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました