OCCT中的平面(Geom_Plane)
程序员文章站
2022-04-03 23:19:37
...
描述三维空间中的平面,通过坐标系将平面定位在空间中。平面由坐标系的原点,x方向,y方向定义。该坐标系是局部坐标系,有以下特点:
坐标系的x方向,y方向分别表示平面的u、v。
坐标系的原点表示平面的原点。
坐标系的“主方向”垂直于平面。
平面的参数方程是:
其中,O, XDir , YDir 分别是平面所在的局部坐标系的原点,x方向,y方向,参数u,v 的范围是。
在OCCT中,Geom_Plane有如下几种初始化方式。
Geom_Plane::Geom_Plane (const gp_Ax3& A3)
{
pos = A3;
}
创建三维空间中的平面,A3的“Z轴方向”表示平面的“法向”,A3的“位置”表示平面的“原点”,A3的“x方向”和“y方向”表示参数u,v的方向。
Geom_Plane::Geom_Plane (const gp_Pln& Pl)
{
pos = Pl.Position();
}
通过gp中的非临时平面创建新的平面。
Geom_Plane::Geom_Plane (const Pnt& P, const Dir& V)
{
gp_Pln Pl (P, V);
pos = Pl.Position();
}
P是平面的原点,V是平面的法向。
Geom_Plane::Geom_Plane ( const Standard_Real A,
const Standard_Real B,
const Standard_Real C,
const Standard_Real D)
{
gp_Pln Pl (A, B, C, D);
pos = Pl.Position ();
}
从笛卡尔方程创建一个平面:Ax + By + Cz + D = 0.0,如果Sqrt(A * A + B * B + C * C)<=gp的阈值,则上调该值。