我在由法向量和中心点定义的三维空间中有平面。我想确定这些飞机是水平还是垂直于底层,或者两者都不是。通常情况下,这可以通过发现是如何可以发现:从垂直面看水平面
a.b = |a||b|cos(t)
其中a
和b
两个3D向量。
如果a.b
= 0,则它们彼此垂直;如果a.b
等于a
和b
长度的产物,的t
余弦为1且t
是0,因此,它们平行
但是我没有接地平面!!!!
非常感谢
我在由法向量和中心点定义的三维空间中有平面。我想确定这些飞机是水平还是垂直于底层,或者两者都不是。通常情况下,这可以通过发现是如何可以发现:从垂直面看水平面
a.b = |a||b|cos(t)
其中a
和b
两个3D向量。
如果a.b
= 0,则它们彼此垂直;如果a.b
等于a
和b
长度的产物,的t
余弦为1且t
是0,因此,它们平行
但是我没有接地平面!!!!
非常感谢
你将需要确定你所说的地平面。确定此平面的几种方法是:
选择参考地平面。例如,如果您对使用X-Y平面作为地平面的 感兴趣,则使用 的正常值仅为<0, 0, 1>
。
如果情况不允许使用方便轴向对准参考 平面的,在你的参考地平面,T
挑三不共线的点, U
,V
。然后,包含三个点 的平面的法线由N = +/-[ (U-T) x (V-T) ]
给出,其中x
是交叉产品 运算符。
宾果,法线向量(0,0,1)的确有用。对我来说问题是我没有参考地平面,而零矢量ir显然是错误的。感谢你的回答 – 2012-03-18 12:07:58
如果你的地平面是水平的,则水平面将与X轴和零y分量正常,和垂直平面才会有正常为零的z分量。
关于比较飞机,“水平”和“垂直”并没有真正意义,除非你有至少2个飞机,一个参考地点和一个飞机进行比较。一旦有了参考平面,就可以将“水平”定义为“平行于参考平面”,“垂直”定义为“垂直于参考平面”。
但是,在所有情况下,您需要需要参考平面。 (很可能,你的坐标系可能会给你一个固有的坐标系,经常在零点找到)
Thnx,看起来像(0,0,1)是ging答案 – 2012-03-18 12:09:21
如果您没有地面飞机,您如何拥有地面层? – 2012-03-16 15:41:28
我很努力地理解为什么你不能在你的计算中引入底层,即使它不存在于模型中的一组平面中。 – 2012-03-16 15:43:07