使用 2*3 矩阵在平面上的投影
我可以轻松地将一组 3D 点的投影绘制到具有法线向量 (1,1,1) 的平面上,通过使用矩阵
(-sqrt(3)/2 sqrt(3)/2 0)
(-1/2 -1/2 1).
我想做同样的事情,但是对于具有法线向量的任意平面上的投影 ( a,b,c) 而不是 (1,1,1)。如何求矩阵?
提前致谢!
编辑:重新表述问题:
从 (1,1,1) 观看时,三个单位向量投影到 (-sqrt(3)/2, -1/3), (sqrt( 3)/2,-1/2),(0,1)。 (直到一个无关紧要的缩放因子。)
我想找到从 (a,b,c) 而不是 (1,1,1) 观看时三个单位向量的投影。
I can easily draw the projection of a 3D set of points onto the plane with normal vector (1,1,1), by using the matrix
(-sqrt(3)/2 sqrt(3)/2 0)
(-1/2 -1/2 1).
I want to do the same thing, but for a projection onto an arbitrary plane with normal vector (a,b,c) instead of (1,1,1). How to find the matrix?
Thanks in advance!
EDIT: rephrasing of the question:
When viewing from (1,1,1), the three unit vectors are projected to (-sqrt(3)/2, -1/3), (sqrt(3)/2, -1/2), (0,1). (Up to a scaling factor which doesn't matter.)
I want to find the projection of the three unit vectors when viewed from (a,b,c) instead of (1,1,1).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当我编写这样的代码时,我只是使用了维基百科有关此主题的精彩文章。
此处和此处。 SO 上还有一个相关的 问题。
Back when I wrote such a code, I simply used wikipedia's nice article on this topic.
There are additional ressources available here and here. There is also a related question on SO.
恐怕你不能在任意平面情况下使用 3x2 矩阵。这是一篇很棒的论文,正是您想要的正在寻找。
I'm afraid you're can't stuck with 3x2 matrix in arbitrary plane case. Here is a great paper for exactly what you're looking for.