射线平面交叉口

时间:2012-01-20 03:28:30

标签: raytracing

我很难按照下一页中描述的光线平面交点进行操作。

SIGGRAPH Ray-Plane Intersection

这是我的理解。

该平面被描述为Ax + By + Cz + D = 0

向量(A,B,C,D),其中A,B,C定义正常计划。如果A,B和C定义单位法线,则从原点[0,0,0]到平面的距离为D.

我的问题是D不应该是矢量吗?因为它代表了两点之间的分歧。我想我只是不明白你如何能够将点之间的距离表示为非向量。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

两点之间的距离始终是标量,单个数字。把矢量想象成太空中的点,对吧?所以,当你说两个向量之间的距离时,你会发现这两个点之间的距离是一个数字。两个矢量之间的距离是两个矢量的差矢量的大小。因此,您减去2个向量,得到差异向量并找到它的大小。那是你的距离,它是一个SCALAR而不是矢量。

答案 1 :(得分:0)

距离是标量值,而不是矢量。事实上,它是矢量的长度。

您可以将矢量视为一组描述空间中与原点相关的点的值。在R3中,您需要最小 3条信息来描述该点的位置。这些信息为您提供了方向的距离。

如果你告诉我一个城市距离50英里,那就是你描述的距离。当然,你不会告诉我这个城市的方向。当你给我2条信息时,你给了我一个向量,而不是标量值。

还记得距离的公式:

D = sqrt(x^2 + y^2 + z^2)

标量值;)