Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
将 OpenGL 与正交投影一起使用。
我已经在 3d 中定义了一个平面。它的位置和方向由一个 4x4 矩阵定义。
我想做的是用鼠标在飞机上画草图。
我可以通过将鼠标的光线投射到屏幕上来找到与飞机的交点。这一点是参考世界坐标系(OpenGL的身份模型视图矩阵)x+ right, y+ up, z+ out of the screen。
我发现了很多这样的例子,将射线与平面相交。
现在,我如何将该点映射到平面的坐标系?这可能已在相关问题中得到解答,但我似乎无法找到它。
定义平面的一种方法是通过两个非共线向量和一个基点。
p(u,v) = ↑r + u·↑a + v·↑b, where u,v are scalars
完成平面射线相交后,您知道与平面 ↑h 的交点,根据定义,它必须位于平面上。要获得该点的 u,v 值,您必须将向量从 ↑r 投影到交点到基向量 ↑a 和 ↑b 上:
u = (↑h - ↑r) · ↑a ; where '·' denotes the scalar product v = (↑h - ↑r) · ↑b