当前位置: 首页 > news >正文

VTK 距离可视化 PolyDataDistance DistancePolyDataFilter

1.vtkDistancePolyDataFilter

该接口主要用于计算两个vtkPlyData数据集之间的距离。使用vtkImplicitPolyDataDistance在第一个输入的每个点上计算到第二个输入的有符号距离。可选地,可以计算第二个输入中每个点到第一个输入的有符号距离。这可以通过调用ComputeSecondDistanceOn()来启用。

SignedDistanceOff()设置后,可计算无符号的距离值。


2. vtkImplicitPolyDataDistance

 它用于计算点到PolyData数据的距离。通过vtkCellLocator找到最近点,并利用vtkCell的EvaluatePosition方法确定距离。文章还列举了关键参数如EvaluateFunction、SetTolerance等 ;

用于计算输入vtkPolyData上从点x到最近点p的距离。函数的符号被设置为最近曲面点的角加权伪法线与向量x - p之间的点积的符号。几何图形内部的点具有负的距离,外部的点具有正的距离,而输入vtkPolyData上的点具有零的距离。函数的梯度是最近点的角加权伪正规。

3.vtkDistancePolyDataFilter 样例,计算两个 polydata 距离,并显示

 

4.vtkImplicitPolyDataDistance 样例,计算点到polydata 距离,并显示 

vtkImplicitPolyDataDistance* imp = vtkImplicitPolyDataDistance::New();
imp->SetInput(src);
 
// Calculate distance from points.
int numPts = mesh->GetNumberOfPoints();
 
vtkDoubleArray* pointArray = vtkDoubleArray::New();
pointArray->SetName("Distance");
pointArray->SetNumberOfComponents(1);
pointArray->SetNumberOfTuples(numPts);
 
for (vtkIdType ptId = 0; ptId < numPts; ptId++)
{
  double pt[3];
  mesh->GetPoint(ptId, pt);
  double val = imp->EvaluateFunction(pt);
  double dist = SignedDistance ? (NegateDistance ? -val : val) : fabs(val);
  pointArray->SetValue(ptId, dist);
}

 

 

相关文章:

  • 使用 FFmpeg 剪辑视频指南
  • 分布式光纤声波振动技术在钻井泄漏检测中的应用
  • 【UCB CS 61B SP24】Lecture 4 - Lists 2: SLLists学习笔记
  • 在PyCharm中运行Jupyter Notebook的.ipynb文件及其pycharm软件的基础使用
  • 前端循环全解析:JS/ES/TS 循环写法与实战示例
  • windows解压多个文件夹内的zip文件脚本
  • 计算机三级网络技术知识汇总【4】
  • 1005 K 次取反后最大化的数组和(贪心)
  • Electron通过ffi-napi调用dll导出接口
  • MacOS安装Emacs
  • 【Mermaid图表渲染错误分析与解决方案之关键字错误】
  • 读书笔记:要点提炼《基于大模型的RAG应用开发与优化——构建企业级LLM应用》(严灿平)
  • 计算机科学与技术
  • GPT2 模型训练
  • 本地文件共享——HFS
  • Linux线程池
  • 第3章 3.2 配置系统 .NET Core配置系统
  • 【C++委托与事件】函数指针,回调机制,事件式编程与松耦合的设计模式(上)
  • 孤独症项目(3)
  • 【开源】编译器,在线操作
  • 理财经理泄露客户信息案进展:湖南省检受理申诉,证监会交由地方监管局办理
  • 保证断电、碰撞等事故中车门系统能够开启!隐藏式门把手将迎来强制性国家标准
  • 人民日报评“组团退演出服”:市场经济诚信原则需全社会维护
  • 国家主席习近平同普京总统出席签字和合作文本交换仪式
  • 美联储主席:不打算先发制人地降息,将继续观望
  • 4月外汇储备增加410亿美元,黄金储备连续6个月增加