【发布时间】:2017-12-20 14:43:48
【问题描述】:
我不知道如何解决这个问题,因为我使用的 API 具有基本上是原点的平面数据结构、定义平面的 x y 和 z 向量。
如果我有两个平面,我怎样才能找到平分线平面? 这种平面有数学描述吗?
在几何上,我会通过计算平面之间的交线来解决这个问题,然后不知道如何为该平面定义一个点。
任何帮助将不胜感激。
在我尝试过这样的事情之前,这得到了我想要的,但我想知道是否有不做交叉点的解决方案:
public static Plane BisectorPlane(Plane a, Plane b)
{
Rhino.Geometry.Intersect.Intersection.PlanePlane(a, b, out Line lnA);
a.Translate(a.ZAxis);
b.Translate(b.ZAxis);
Rhino.Geometry.Intersect.Intersection.PlanePlane(a, b, out Line lnB);
return new Plane( lnA.From,lnA.To,lnB.PointAt(0.5));
}
我想知道是否有可能不是从几何上(计算交叉点)而是从数学上解决这个问题。
【问题讨论】:
-
我会认为两个平面之间的平分线是一条 line 因为会有无数个平面?例如一个书尾
-
在几何上我使用的方法是这样的:1)使两个平面相交,得到一条线 2)通过 z 轴移动两个平面并再次相交。 3)从第一行和第二行中点构造平面。通过这种方式,我得到了我想要的正确平面。也许它被称为不平分线。但是有没有其他方法可以做到这一点而无需交叉?