-2

マトリックス変換とテクスチャ マッピングについていくつか質問をしていたところ、答えを得る方法がわからない 2 つの質問に出くわしました。答えは赤い色で強調表示されます。(これらは C++ で実装できますが、実装する前に、最初に変換に慣れたかっただけです)

マトリックス変換-1の場合、代わりに翻訳のために(マトリックスの右上)を持たないでください0 ここに画像の説明を入力

編集: 2 番目の質問への回答がまだ必要です。私の 2 番目の質問は、彼らがどのようにしてy coordinate for point D

ここに画像の説明を入力

4

2 に答える 2

3

最初の質問に答える:

結果の画像は、x軸に沿って半分に圧縮され、Y軸を横切る長さの2倍に引き伸ばされます。

スケーリングマトリックスが答えになります。スケーリング行列は、要素を持つ対角行列{X-scaling, Y-scaling, 1}です。

今、

| 0.5 0 0 |
|  0  2 0 |
|  0  0 1 |

典型的なスケーリングマトリックスです。x軸を0.5だけスケーリングします(つまり、x軸を半分に拡大(圧縮)します)。これはMatrix(1,1)で顕著です。

Y方向のスケーリングはMatrix(2,2)で与えられます。2あそこは、Y軸が2倍に伸びていることを意味します。

:この質問には、翻訳は含まれていません。単純なスケーリングにより、翻訳のように見えることに注意してください。

于 2012-06-04T09:21:13.483 に答える
0

2番目の質問に対する答えが見つかりました。

ポイント B の上の角の y 座標は 1 でなければなりません。そうしないと底面が見えないからです。したがって、点 D には y 座標 2 が必要です。B から角の点、D まで線を引くと、テクスチャ イメージが 2 回繰り返されます。

于 2012-06-06T10:28:41.227 に答える