Barycentric coordinate system(重心坐标系)

来源:互联网 发布:淘宝店铺运营软件 编辑:程序博客网 时间:2024/06/05 09:09


原帖:空间三角形与射线相交并求交点的重心坐标系表示
有如下几点可以了解。

1.Barycentric coordinate system的数学定义  wiki  中文wiki 

其中 中文wiki 中有一个图:



图中B顶点左下方区域的符号和C顶点右下方区域的符号应该是弄反了。B顶点左下方应为:(-,+,-)。C顶点右下方应为:(-,-,+)

注:小技巧,可能有时候通过关键字比较容易找到中文的wiki,但是一般英文的更详细准确,但是不知道搜什么关键字,其实在网页右侧可以切换不同语言的wiki,这样就很方便通过中文的wiki找到对应英文的wiki。如图:




2.原帖中的推到,比较靠前的一步:
“由此得P(q,r) = (1-q-r)A+qB+rC,化简得P(q,r) = A–(B-A)q+(C-A)r”,这里的推到明显是错的。应该为:P(q,r) = A+(B-A)q+(C-A)r。所以后面的推到都是伴随着这个错误的。

3.wiki上的算法也是使用面积去求,例如:
\lambda_1=S (PBC)/S (ABC)=\begin{vmatrix}1 &x_p&y_p\\1 &x_b&y_b\\1 &x_c&y_c\\\end{vmatrix}/\begin{vmatrix}1 &x_a&y_a\\1 &x_b&y_b\\1 &x_c&y_c\\\end{vmatrix}
是不是应该有更高效的算法,文中提到《实时计算机图形学》上关于射线三角形相交的算法介绍:第二版P324, 可以研究一下。

4.一些扩展的概念: 齐次坐标, 仿射不变性。

5.原帖中提到的分析 重力坐标系 的作用:“在光线追踪中一个重要的步骤就是从屏幕上投射出一道光线,并求解其与3D物体的焦点并执行反射/折射等过程然后继续反射或折射,关键问题是如何求出这道光线与3D物体(空间三角形)的焦点?因为只有求出焦点之后才方便求出其贴图坐标以及该点的法线,很好的一个方法就是用重心坐标系来表示该焦点坐标。” 目前欠缺这方面的知识,还不清楚。
0 0