0

私はIOSを初めて使用し、Object-Cを使用するiPhoneおよびiPad用の面白いペイントアプリを開発しています.

このアプリでは、画像をタッチすると、選択した色 (ペイント バケット ツール) によって、タッチしたピクセルでほぼ同じ色のピクセルがすべて塗りつぶされます。

Floodfill アルゴリズムが必要なものであることはわかっていますが、FloodFill アルゴリズムを実装して、必要な領域の色を塗りつぶす方法に本当にこだわっています。

私もそれを見ましたが、2つのファイルしかなく、説明がありません。使用しようとしましたが、成功しませんでした。

私が欲しいのは、イメージ(そのようなもの)を ImageView にロードすることだけで、ImageView に触れると色が塗りつぶされます。

4

2 に答える 2

0

UIImage の CGImage にアクセスすることで、UIImage のバイトデータを取得できます。

これから、タッチされたピクセルの色を見つけることができます。

次に、タッチされたピクセルから単純なフラッド フィル アルゴリズムを実行する場合です。

ピクセルの色を取得しています... UIImage (Cocoa Touch) または CGImage (Core Graphics) からピクセル データを取得するにはどうすればよいですか?

フラッド フィル アルゴリズム... http://en.wikipedia.org/wiki/Flood_fill

フレームワークなどを探すのではなく、おそらく自分でこれを行うでしょう。

于 2013-01-08T10:54:34.437 に答える
0

描画に UIBezierPath を使用する場合、その -fill メソッドを使用して形状を塗りつぶすことができます。

于 2013-01-08T10:06:01.553 に答える