ゲームでベジェ曲線移動爆弾とかでは使ったことあるけど、
描画大変そうだな・・・とおもったらメソッドあるじゃ~ん。
綺麗な線を描くには欲しい機能。
まず入力に3段階のシーンが増えてめんどくさかった。
多くてもマウスボタンを押しこんで移動、そして離す程度のものだった。しかも途中キャンセル処理も必要・・・。
さらに座標の入力順がよく分からなくて逆さまになったりで結構悩んだり。
.NETのベジェ曲線は3の倍数+1の数の座標が必要らしく、
よく分かんないから3点状態の時は片方の根元の座標を覚えさせて誤魔化す。
2点を決めて(黄色って結構見づらいな・・・(今更感))
いざ、描画。
やったぜ。
ベジェ曲線実装
Re: ベジェ曲線実装
おおっと,これは無慈悲なベジェ砲!
操作中のプレビュー表示(黄)が細い点が 使いやすいのか否か?
ドットの直線とか曲線とかは最後のラスタライズ結果の 綺麗/汚い が印象に強く出るので
操作中もラスタライズ結果をプレビューできた方が使いやすいのではないかな,とか.
まぁ実際は
そこらへんはドット単位で手直しする=これ系の機能で描いた結果がそのまま最後まで残るわけではない
ので,ざっくりと形が取れれば良いのか.
…ん? だったら この黄色線みたいなのを重畳表示できる みたいな機能があると便利なのかも…!?
操作中のプレビュー表示(黄)が細い点が 使いやすいのか否か?
ドットの直線とか曲線とかは最後のラスタライズ結果の 綺麗/汚い が印象に強く出るので
操作中もラスタライズ結果をプレビューできた方が使いやすいのではないかな,とか.
まぁ実際は
そこらへんはドット単位で手直しする=これ系の機能で描いた結果がそのまま最後まで残るわけではない
ので,ざっくりと形が取れれば良いのか.
…ん? だったら この黄色線みたいなのを重畳表示できる みたいな機能があると便利なのかも…!?
Re: ベジェ曲線実装
>>usaoさん
あると便利だと思ったので早速いじってみました^^
=======================================================
描画予測はビットマップをカンバスサイズと同じサイズで作ってそのまま同じ座標を使って描きこんでから、
表示サイズに引き延ばして描画すればいいから処理の重さは別として実装は楽だったということに気付く・・・
直線はセルの真ん中の座標に~とか要らないもの。
しかし現在の状態だとカンバス外からはみ出ると補助線が見えない。
パネル全域サイズをわざわざ用意するのも野暮だし、必要なサイズのが分かればなんとかなりそうなので、
選択範囲の応用で行けそう感。
あると便利だと思ったので早速いじってみました^^
=======================================================
描画予測はビットマップをカンバスサイズと同じサイズで作ってそのまま同じ座標を使って描きこんでから、
表示サイズに引き延ばして描画すればいいから処理の重さは別として実装は楽だったということに気付く・・・
直線はセルの真ん中の座標に~とか要らないもの。
しかし現在の状態だとカンバス外からはみ出ると補助線が見えない。
パネル全域サイズをわざわざ用意するのも野暮だし、必要なサイズのが分かればなんとかなりそうなので、
選択範囲の応用で行けそう感。
Re: ベジェ曲線実装
> 補助線
これが何を意味しているのか…?
補助線の先っぽ(:●が描かれている場所)が,その補助線が生えてない側の曲線端点の傾き(っていうか)を指定している感じ…?
これが何を意味しているのか…?
補助線の先っぽ(:●が描かれている場所)が,その補助線が生えてない側の曲線端点の傾き(っていうか)を指定している感じ…?
Re: ベジェ曲線実装
>>usaoさん
補助線は座標同士を繋げている感じです。
使ってるペイントソフトと解説サイトでこういう風にやってるからなんとなく似せてるだけです(;^ω^)
>>いわんさん
昔ゲーム作る練習でインベーダー風のものを作ってた時の産物です。
ミサイルがまっすぐ飛ぶだけじゃつまらないと思ったんですかねぇ。覚えてませんw
viewtopic.php?f=78&t=18390
補助線は座標同士を繋げている感じです。
使ってるペイントソフトと解説サイトでこういう風にやってるからなんとなく似せてるだけです(;^ω^)
>>いわんさん
昔ゲーム作る練習でインベーダー風のものを作ってた時の産物です。
ミサイルがまっすぐ飛ぶだけじゃつまらないと思ったんですかねぇ。覚えてませんw
viewtopic.php?f=78&t=18390
Re: ベジェ曲線実装
>>usaoさん
グラフィックを描くという中でスプライン曲線の使い道がわからないからなぁ(;^ω^)
ゲーム内のエフェクトの演出の描画命令にあったら便利そう・・・とかですかねぇ。
グラフィックを描くという中でスプライン曲線の使い道がわからないからなぁ(;^ω^)
ゲーム内のエフェクトの演出の描画命令にあったら便利そう・・・とかですかねぇ。
Re: ベジェ曲線実装
> スプライン曲線の使い道がわからない
そこらへんは ベジェなのかスプラインなのか には依らない話なのでは.
(どっちも曲線なわけですから,曲線の使い道自体がないときにはどっちも役割もてない)
・ベジェは全ての制御点上を通らない(両端のみ通る)曲線
・スプラインは全ての制御点の上を通る曲線
場面次第では後者側の性質が扱いやすいこともあります.
「スプライン補間」とかいう言葉があるとおりに,補間用途のとき,すなわち
「俺はこれらの点を通るカーブを引きたいぜ!」と思い立った場合とかですね.
でも Office のオートシェイプの曲線(←スプラインと思われ)で図を描こうとするとなかなか思った通りにいかなくて「クソが…!」ってなるので,
曲線的な絵を描きたいときにはベジェの方が便利なのかも?
そこらへんは ベジェなのかスプラインなのか には依らない話なのでは.
(どっちも曲線なわけですから,曲線の使い道自体がないときにはどっちも役割もてない)
・ベジェは全ての制御点上を通らない(両端のみ通る)曲線
・スプラインは全ての制御点の上を通る曲線
場面次第では後者側の性質が扱いやすいこともあります.
「スプライン補間」とかいう言葉があるとおりに,補間用途のとき,すなわち
「俺はこれらの点を通るカーブを引きたいぜ!」と思い立った場合とかですね.
でも Office のオートシェイプの曲線(←スプラインと思われ)で図を描こうとするとなかなか思った通りにいかなくて「クソが…!」ってなるので,
曲線的な絵を描きたいときにはベジェの方が便利なのかも?
Re: ベジェ曲線実装
ベジェは下書き絵にあてながら、直感的に曲線のしなり具合を微調整できるのが強みですし、
スプラインはその直感さが無いから使わないなぁ・・・(;^ω^)
スプラインはその直感さが無いから使わないなぁ・・・(;^ω^)