- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:三次元を二次元に・・・)
ヘッダーファイルの中にXeasyGraphic.hがあり、三次元を二次元に変換する方法を知りたい
このQ&Aのポイント
- この質問では、ヘッダーファイルの中にXeasyGraphic.hがあり、立方体を表示させ回転させたいが、結果がゆがんでしまうという問題が発生しています。
- 質問者は、三次元で回転させた立方体を二次元に落とす方法を知りたいとしています。
- 質問者は、どのようにすれば立方体が正しく回転して二次元に変換されるのか教えてほしいと言っています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#30727
回答No.1
プロジェクションは無視しますが、3D→2Dの透視変換をするならば、 d = box_z2 - (-15); // Z座標=(-15) から見る flat_x = box_x2 / d; flat_y = box_y2 / d; のようにします。 3DのZ座標の最小値は-10√2だからこの場合はありえませんが、box_z2 - (-15) が負になると、座標が反転し、0だと、0割り算が発生し、正であっても0に近いと、XY座標が極めて大きな値になるので、例えば1未満のときは、ラインそのものを表示しないような工夫が必要になります。
その他の回答 (1)
noname#30727
回答No.2
No.1ですが、Z軸で回転させているので、-10√2は-10の間違いでした。