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

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

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

Re[2]: クリップ領域ではなく、描画禁止領域を追加したい。


(過去ログ 120 を表示中)

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

■70309 / inTopicNo.1)  クリップ領域ではなく、描画禁止領域を追加したい。
  
□投稿者/ 会社員 (4回)-(2014/03/10(Mon) 11:46:07)

分類:[.NET 全般] 

質問させて頂きます。
言語:VB2012(Vb.NET FrameWork 4.5)

任意のイメージ中の複数の領域を描画禁止としたクリップ領域の設定方法をどなたか教えていただけないでしょうか?

たとえば、FillRectrangleで小さい四角形をいくつも設定し、最後に、設定した全ての四角形の領域を描画禁止にした
状態のクリッピング領域(つまり四角形以外の部分が描画可能)を生成したいのです。

GraphicsPathを用意し、FillModeを切り替えつつaddRectangleで、Graphics.Clipに設定してみるのですが上手く行きません。。。

よろしくお願い致します。m(_ _)m
引用返信 編集キー/
■70310 / inTopicNo.2)  Re[1]: クリップ領域ではなく、描画禁止領域を追加したい。
□投稿者/ Hongliang (182回)-(2014/03/10(Mon) 12:00:41)
無限状態(引数なしコンストラクタで作成された状態)のRegionでRegion::Xorを使うなどすれば、クリップ領域と非クリップ領域を逆にすることが可能ですが。
引用返信 編集キー/
■70317 / inTopicNo.3)  Re[2]: クリップ領域ではなく、描画禁止領域を追加したい。
□投稿者/ 会社員 (5回)-(2014/03/10(Mon) 14:13:02)
No70310 (Hongliang さん) に返信
> 無限状態(引数なしコンストラクタで作成された状態)のRegionでRegion::Xorを使うなどすれば、クリップ領域と非クリップ領域を逆にすることが可能ですが。


さっそくの返信ありがとうございます。m(_ _)m
ご指摘いただき、調べた所、Region.Xor/Unionメソッドを初めて知り、以下手順で実現出来ました。
本当にありがとうございました。

1.Regionに対して描画禁止領域としての描画領域をどんどんUnion追加
2.Regionに対して全描画域をXor追加(これにより描画領域と描画禁止領域が反転)


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


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

このトピックに書きこむ

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

管理者用

- Child Tree -