2011-08-10 30 views
2

塗りつぶしポリゴンを描画するのに必要な一連のステップを探しています。私はそれをビットマップにレンダリングする関数を作成します。私はVisual Basicに似た言語で書いていますが、クラスや継承のようなオブジェクト指向のものはほとんどありません。描画能力はdrawline()とdrawrect()ですが、それはそれですが、私はポリゴンを塗りつぶすと、forループまたはwhileループで一度に1ドットになりますが、ビットマップをバイト配列に変換することができます(より高速かもしれません)。完成したポリゴンラインをバイト配列として扱い、そのように塗りつぶす方法があれば、100,000のplot(x、y)コマンドより高速かもしれませんか?私は、どちらの方法で見るのが面白いかわからない。塗りつぶした対称ポリゴンを描画するアルゴリズム?

Iは、ビットマップ領域の中央側の任意の数、最小3と、不規則なポリゴンを描画する(ラジアル対称)だけ対称つもりはありませんよ。

描画方法は、0,0ビットマップのuppper放置有するデカルトです。私は、入力が次のようになります推測:

drawpolygon(bitmapobj,width,height,sides,radius) 

ビットマップの大きさは、多角形の限度となりますので、おそらく、半径が必要ではないでしょうか?

可能であれば英語のステップを探していますが、言語固有の要素があまり多くない場合は便利です(たとえば、C++には宣言の束があります。私が使用している言語に変換する方法を100%確信しているわけではありません)。

答えて

1

here与えられた方程式(最後の1)があります。すべてのx、y座標をループ、およびこの式の出力がゼロ未満である、あなたが「内側」である点決定しappropraitelyそれらを着色することができることを確認することにより

+0

私は方程式ではなく「方法」を探しています。私は方程式を読むことができません、私はステップを見ています:例えば、画像の中心から各点のxとyの位置を計算するには?これらの点の間に画像の輪郭を描いたら、画像を埋めるアルゴリズムが必要です。 – alphablender

+0

@alphablender - 方程式は単純に何かを計算するのに必要なステップです。その方程式はあなたの(x、y)座標のどれが形状の内側にあるか、そうでない座標を示します。それは見た目ほど難しくありません。 – sje397

+0

私はそのページの間違ったページを見ているかもしれませんが、あなたの答えに方程式をコピー/ペーストすることができます。そのページはまだ新しいもので更新されていますので、 "そのページの最後のページ"はやや曖昧です。 – alphablender

関連する問題