0

私が次のような立方体を持っていると仮定します

P1(0, 0, 0) P5(0, 0, 1)
P2(1, 0, 0) P6(1, 0, 1)
P3(0, 1, 0) P7(0, 1, 1)
P4(1, 1, 0) P8(1, 1, 1)

次に、変換/回転/スケール行列を適用する必要があります。言う、

transform = Pt(3, 3, 5)
rotation = 30º
scale = 2x`

Ok。しかし、最終的な結果を得るために、これらの各値をマトリックスのどこに配置すればよいでしょうか。それは私をたくさん混乱させます。

編集

たとえば、P2の場合、次のようになります。

| 1 |   | a b c |
| 0 | x | d e f | = R
| 0 |   | g h i |

しかし、私は何を持っていa,b,c,d,...iますか?

4

2 に答える 2

3

1回の操作でそれを行うには、4x4の行列が必要です。詳細と例については、http: //www.engineering.uiowa.edu/~ie_246/Lecture/OpenGLMatrices.pptを参照してください。

最後に、このように変換を連鎖させます

point[i] = T1*T2*T3*..*vertex[i]

PDF変換

于 2012-11-13T00:16:47.997 に答える
0

立方体の角にある8つのポイントは、それぞれ3x1のベクトルです。行列変換は3x3行列です。

どの軸を中心に回転しますか?これにより、その回転行列がどのように見えるかが変わります。x軸については次のとおりです。

     | +cos(theta) -sin(theta)  0 | 
Rx = | +sin(theta) +cos(theta)  0 |
     | 0           0            1 |

スケールは簡単です。すべてのx座標に2倍します。

    | 2  0  0 |
S = | 0  1  0 |
    | 0  0  1 |

これらを各ポイントに適用します。

于 2012-11-13T00:09:18.973 に答える