对于二维齐次坐标,我有一个3x3变换矩阵:
a b c
d e f
g h i我想将它传递给2D应用程序中的OpenGL (使用glMultMatrix),但是OpenGL采用4x4矩阵作为三维齐次坐标。我希望由我的4x4矩阵转换的所有坐标以x和y结束,就像3x3矩阵和z=0一样。
我已经试过想办法了。对于向量x, y, 1,我将得到转换后的向量ax + by + c, dx + ey + f, gx + hy + i,这意味着对于向量x, y, 0, 1,我希望得到转换的向量ax + by + c, dx + ey + f, 0, ?。这样做的一个矩阵是(据我所知):
a b 0 c
d e 0 f
0 0 1 0
0 0 0 1这是正确的吗?它起作用了吗?我不认为这是唯一能给出我想要的结果的矩阵,但我不太明白在第三行和第四行(和第四列)应该或不应该做什么。
发布于 2015-07-30 10:47:56
如果你想要z坐标是0,你必须传递一个零行.另外,在最后一行中包括透视图部分:
a b 0 c
d e 0 f
0 0 0 0
g h 0 ihttps://stackoverflow.com/questions/31721306
复制相似问题