博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VTK隐函数之vtkPlane
阅读量:7114 次
发布时间:2019-06-28

本文共 1253 字,大约阅读时间需要 4 分钟。

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]) );}

转载于:https://blog.51cto.com/weiyuqingcheng/2113936

你可能感兴趣的文章
活学活用! 用Local Storage实现多人聊天室
查看>>
一次爬虫实践记录
查看>>
炫酷粒子表白,双十一脱单靠它了!
查看>>
mysql锁以及实践总结
查看>>
【工具】MongoDB 与可视化工具 adminMongo 的安装、启动与连接
查看>>
Javascript--常用方法
查看>>
Swoft之服务注册发现Consul服务器配置
查看>>
[译]迁移到新的 React Context Api
查看>>
IM 推送保障及网络优化详解(二):如何做长连接加推送组合方案
查看>>
webpack4 踩坑记
查看>>
线程池你真不来了解一下吗?
查看>>
【跃迁之路】【424天】程序员高效学习方法论探索系列(实验阶段181-2018.04.05)...
查看>>
火狐放不了html5 video MP4格式
查看>>
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器...
查看>>
通过提交信息来关闭issue
查看>>
Angular学习笔记之集成三方UI框架、控件
查看>>
leetcode318. Maximum Product of Word Lengths
查看>>
解决“有边框的子元素宽度设定绝对值后,缩放浏览器会错位”的两种方法
查看>>
Node.js 学习之路
查看>>
angular 基于ng-messages的验证
查看>>