温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

VTK隐函数之vtkPlane

发布时间:2020-03-28 00:00:49 来源:网络 阅读:1170 作者:006玩命 栏目:编程语言

vtkPlane

 vtkPlane provides methods for various plane computations. These include projecting points onto a plane, evaluating the plane equation, and returning plane normal. vtkPlane is a concrete implementation of the abstract class vtkImplicitFunction.

成员函数:
  • void EvaluateFunction(double x[3])、void EvaluateFunction(double x,double y,double z)用于估算点x[3]是否位于平面上、平面前或平面后(法线方向为前),它是从抽象类vtkImplicitFunction继承而来,在基类中它是一个纯虚函数。
  • void EvaluateGradient (double x[3], double g[3])用于估算点x[3]处函数倾斜度
  • void vtkPlane::SetNormal(double x[3])、void vtkPlane::SetNormal(double x,double y,double z)
  • Set/get平面法向量.平面是由“点”和“法向量”定义的。
  • void Set/GetOrigin(double x[3])与SetNormal用法类似。
  • void vtkPlane::Push(double distance)该函数可以将平面沿着法线方向移动distance距离

 在成员函数中还定义了点、矢量向某个平面投影的功能函数,如ProjectPoint、ProjectVector等。

 隐函数的数学表达式为F(x,y,z)=w,平面的隐函数方程有点法式和一般式。在vtkPlane中采用的是点法式隐函数。
 点法式平面隐函数方程为:A(x-x0)+B(y-y0)+C(z-z0)=w, (A,B,C)为平面法向量,即vtkPlane中的Normal,(x0,y0,z0)为平面上一点,即vtkPlane中的Origin。
 平面的一般式方程为:Ax+By+Cz=w


EvaluateFunction(...)函数的源代码如下:  

double vtkPlane::EvaluateFunction( double x[3] )
{
  return ( this->Normal[0]*(x[0]-this->Origin[0]) +
           this->Normal[1]*(x[1]-this->Origin[1]) +
           this->Normal[2]*(x[2]-this->Origin[2]) );
}
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI