2012-03-14 185 views
1

我有兩個等值面(頭骨和皮膚)。給定點A在顱骨等值面上,我使用「double * pos = pickerCell-> GetPickNormal()」計算A點的法線。 當我打印pos,這是我得到:-6.2367,1.98263,-0.9823 有人可以向我解釋這3個值是什麼意思?vtk IntersectWithLine()函數使用正常線

我想找到點A的這個法線與皮膚等值面的交點。

我可以使用IntersectWithLine()函數嗎?如果是的話,我的情況就是正常的?正常的起點和終點是什麼?

或者還有更好的方法嗎?

回答

0

正如您發現的那樣,您需要將相交的線定義爲兩點。通常所做的是從你選擇的點P開始(計算法線v的同一點)並計算兩點,A = P + V delta和B = P-v delta,其中你有使用上下文設置增量(如果您的模型位於單位立方體中,增量可能類似.01,如果您的模型具有尺寸爲1000的單位,增量可能爲1等)。

此外,我不知道爲什麼正常的細胞選擇器返回沒有正常化,但我假設,如果你規範化它是表面正常。我會稱之爲'pos'以外的東西以避免混淆(因爲它是一個方向,而不是一個位置)。