- - PR -
Graphics2Dの中身を知りたい
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-10-31 20:21
なるほど、そういう意味ですか。
逆に計算していくということなのですね。 分かりました。 やってみたいと思います。 ありがとうございました。 | ||||||||
|
投稿日時: 2004-10-31 20:50
追加です。
やってみますと簡単に書きましたが、直線を表すピクセルですら、自分で計算する根本的なものになりそうですね。 回転させた頂点の座標から、面を構成する各ピクセルの座標を計算し、それに対応する元のピクセルを計算して、情報を入れるようにすればできそうですね。 私にとってはかなり高度なことですが、やってみようと思います。 ありがとうございました。 | ||||||||
|
投稿日時: 2004-10-31 23:50
ん?
高度って、元々ゴールデンさんがやっていた方法(空白ができてしまっ た方法)と同じ程度の複雑さ、コード量にしかならないと思います。 そうでないとしたら何か間違っているかも知れませんよ。 ![]() | ||||||||
|
投稿日時: 2004-11-01 23:43
どうやってもできないので、方眼紙に図を描いてみたら、空白ができる仕組みと、どんなところに空白ができるのかがしっかりわかった。コード自体は短くてすみそうですが、表示される1つの面の各ピクセルの並びが、横○列、縦○列のような一定ではできないことも分かった。なので暗礁に乗り上げています。
空白場所に、周りで重なっているピクセルを移動すればよいのですが、もしかしたら、周りに重なったピクセルが無い場合も考えられる。そういう場合は、ピクセルの押し出しをしなければならない。 頭がぐるぐるになったので、今日はやめますが、このような考え方でやっていけばできるのでしょうか。 | ||||||||
|
投稿日時: 2004-11-02 00:31
すばらしい!
最初からあまり深く考えずに、まずは三角関数で求めた元画像側の座標を整数 に丸めてしまって良いと思います。(だって、ゴールデンさんが最初にやった ときも、結局そうだったでしょう?) 画質が気に入らなければ、改良のアルゴリズムをあれこれ試してみるのが良い のではないでしょうか。 | ||||||||
|
投稿日時: 2004-11-03 22:56
やっぱりだめです。できません。
こうなったら、と思い、Excelで、コードのとおりに数式を入れて数値をチェックし、コードのおかしいところを見つけ(けっこうあった)、直していったら、固まったり変形するのは無くなったので、最終チェックとして方眼紙にピクセルを描いてみたら、空白がでない仕組みにちゃんとなっていた。 なのに、appletviewerで表示すると、空白ができてしまっている。 ちなみにその部分のコードです。(paint()部分) プログラムの数値とエクセルの数値に違いが無いかもdrawStringで表示して確かめ、数式入力ミスもなくしました。 なのに、おかしいのです。
pは100です。 jは面の番号で、1と3面は、ピクセルの穴ができてしまう面です。 おかしいところを指摘してくださると嬉しいです。 [ メッセージ編集済み 編集者: ゴールデン 編集日時 2004-11-03 23:03 ] [ メッセージ編集済み 編集者: ゴールデン 編集日時 2004-11-03 23:04 ] | ||||||||
|
投稿日時: 2004-11-04 02:15
ゴールデンさん、頑張ってますね。
特殊な投影を使うとか、半透明とかでなければ、6面全て処理する必要は ないと思います。 見えている3面だけ処理しますね。 各面が単純な色で塗りつぶすだけなら多角形の塗りつぶしで簡単ですが、 これまでのゴールデンさんがやってきた内容からすると、各面は画像が貼 りつけられるのでしょうね。 完成を楽しみにしています。 |