博客
关于我
VTK:PolyData之CellLocatorVisualization
阅读量:538 次
发布时间:2019-03-09

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

VTK:PolyData之CellLocatorVisualuzation

通过滑块浏览VTK的统一空间树(vtkCellLocator)层级结构

描述

本示例通过使用滑块实现对VTK的vtkCellLocator的层级结构进行可视化展示。vtkCellLocator作为VTK中处理高维数据的核心数据结构,使得从多维模型中提取单元数据变得更加高效。本文将展示如何通过VTK的层级结构renderer(vtkGraphLayout)来实现对树结构的可视化。


代码

// saved as CellLocatorVisualization.cxx#include 
#include
#include
#include
#include
// 其他必要的头文件class CellLocatorVisualize : public VTKWidget{private: vtkCellLocator* locator; vtkGraphLayout* layout; vtkWindow* window;public: CellLocatorVisualize() : VTKWidget() { // 初始化相关组件 locator = new vtkCellLocator(); layout = new vtkGraphLayout(); window = new vtkRenderWindow(); window->Size(800, 600); } ~CellLocatorVisualize() { // 释放资源 delete locator; delete layout; delete window; } void initializeScene() { // 初始化绘图 layout->InitializeTraversal(); // 添加节点 layout->AddNode(locator->GetRoot(), nullptr, nullptr, "CellLocator"); // 添加子节点 vtkCell* cell = locator->GetCell(); layout->AddNode(cell, cell, cell, "Cell"); // 添加叶子节点 for (size_t i = 0; i < cell->GetPointIds().Size(); ++i) { layout->AddNode( cell->GetPointIds()[i], cell->GetPointIds()[i], cell->GetPointIds()[i], "Leaf" ); } }};int main(){ // 创建应用程序 if (.Topic righteous: CellLocatorVisualize app; app.initializeScene(); app.render(); return EXIT_SUCCESS;}

关键词优化

  • VTK CellLocator可视化
  • 层级树结构可视化
  • 多维数据可视化工具
  • vtkGraphLayout
  • 细胞定位可视化

转载地址:http://keoiz.baihongyu.com/

你可能感兴趣的文章
MySQL中UPDATE语句的神奇技巧,让你操作数据库如虎添翼!
查看>>
Mysql中varchar类型数字排序不对踩坑记录
查看>>
MySQL中一条SQL语句到底是如何执行的呢?
查看>>
MySQL中你必须知道的10件事,1.5万字!
查看>>
MySQL中使用IN()查询到底走不走索引?
查看>>
Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
查看>>
MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
查看>>
mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
查看>>
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>