news 2026/4/15 7:17:35

HyperTreeGridSource创建、处理与可视化超树网格

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HyperTreeGridSource创建、处理与可视化超树网格

一:主要的知识点

1、说明

本文只是教程内容的一小段,因博客字数限制,故进行拆分。主教程链接:vtk教程——逐行解析官网所有Python示例-CSDN博客

2、知识点纪要

本段代码主要涉及的有①vtkHyperTreeGridSource的简介,②超树网格的尺寸设置


二:代码及注释

import vtkmodules.vtkInteractionStyle import vtkmodules.vtkRenderingOpenGL2 from vtkmodules.vtkCommonColor import vtkNamedColors from vtkmodules.vtkFiltersGeneral import vtkShrinkFilter from vtkmodules.vtkFiltersHyperTree import vtkHyperTreeGridToUnstructuredGrid from vtkmodules.vtkFiltersSources import vtkHyperTreeGridSource from vtkmodules.vtkRenderingCore import ( vtkActor, vtkDataSetMapper, vtkRenderWindow, vtkRenderWindowInteractor, vtkRenderer ) def main(): colors = vtkNamedColors() descriptor = 'RRR .R. .RR ..R ..R .R.|R.......................... ' \ '........................... ........................... ' \ '.............R............. ....RR.RR........R......... ' \ '.....RRRR.....R.RR......... ........................... ' \ '........................... ' \ '...........................|........................... ' \ '........................... ........................... ' \ '...RR.RR.......RR.......... ........................... ' \ 'RR......................... ........................... ' \ '........................... ........................... ' \ '........................... ........................... ' \ '........................... ........................... ' \ '............RRR............|........................... ' \ '........................... .......RR.................. ' \ '........................... ........................... ' \ '........................... ........................... ' \ '........................... ........................... ' \ '........................... ' \ '...........................|........................... ' \ '...........................' """ vtkHyperTreeGridSource 用于 生成(测试或示例用)vtkHyperTreeGrid 数据对象 的类 在 VTK 中,HyperTreeGrid(HTG) 是一种特殊的 自适应层次网格(Adaptive Hierarchical Grid) 它是一种 稀疏体素树结构(octree / quadtree); 每个单元(cell)可以被递归细分; 可以在不同区域具有不同的分辨率; 常用于表示大规模稀疏数据(如 AMR 格式、体绘制中的自适应分辨率) """ source = vtkHyperTreeGridSource() # source.SetMaximumLevel(6) # 报错 source.SetMaxDepth(6) # 设置每棵树的最大细分层级 """ SetDimensions 设置 超树网格(Hyper Tree Grid, HTG) 最粗糙级别的基础网格的尺寸 这定义了3D空间中网格的初始划分。它指定了在X方向上有4个单元格,在Y方向上有4个单元格,在Z方向上有3个单元格 整个 HTG 结构以一个4*4*3 48个**基础单元格(Root Cells)**的矩阵为起点。后续的细分和结构变化都是基于这48个单元格进行的 """ source.SetDimensions(4, 4, 3) # SetGridScale 设置每个方向上每个单元格的宽度是多少单位 source.SetGridScale(1.5, 1.0, 0.7) # SetBranchFactor设置超树网格的分支因子(Branch Factor), # 即当一个单元格被细分时,它会分裂成的子单元格数量 source.SetBranchFactor(4) # SetDescriptor 设置一个 ASCII 描述符字符串,用于定义 HTG 的拓扑结构 source.SetDescriptor(descriptor) source.Update() """ vtkHyperTreeGridToUnstructuredGrid 将vtkHyperTreeGridSource数据转换成通用的网格格式 """ htg2ug = vtkHyperTreeGridToUnstructuredGrid() htg2ug.SetInputConnection(source.GetOutputPort()) htg2ug.Update() shrink = vtkShrinkFilter() shrink.SetInputConnection(htg2ug.GetOutputPort()) shrink.SetShrinkFactor(.8) mapper = vtkDataSetMapper() mapper.SetInputConnection(shrink.GetOutputPort()) mapper.ScalarVisibilityOff() actor = vtkActor() actor.SetMapper(mapper) actor.GetProperty().SetDiffuseColor(colors.GetColor3d('Burlywood')) # Create the RenderWindow, Renderer and Interactor renderer = vtkRenderer() renderWindow = vtkRenderWindow() renderWindow.AddRenderer(renderer) interactor = vtkRenderWindowInteractor() interactor.SetRenderWindow(renderWindow) renderer.SetBackground(colors.GetColor3d('SlateGray')) renderer.AddActor(actor) renderer.ResetCamera() renderer.GetActiveCamera().Azimuth(150) renderer.GetActiveCamera().Elevation(30) renderer.ResetCameraClippingRange() renderWindow.SetSize(640, 480) renderWindow.Render() renderWindow.SetWindowName('HyperTreeGridSource') if __name__ == '__main__': main()
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 5:57:17

AI重光照技术革命:Qwen-Edit-Relight LoRA让光影编辑效率飙升

AI重光照技术革命:Qwen-Edit-Relight LoRA让光影编辑效率飙升 【免费下载链接】Relight 项目地址: https://ai.gitcode.com/hf_mirrors/dx8152/Relight 技术突破:从手动调整到智能生成 传统图像光影编辑面临巨大挑战:专业摄影师调整…

作者头像 李华
网站建设 2026/4/15 5:57:34

Multisim与SQL数据库集成:操作详解

让Multisim“活”起来:用SQL数据库驱动电路仿真自动化你有没有遇到过这样的场景?一个团队里,三个人做同一个电源模块的仿真,结果却各不相同。排查半天才发现——原来大家用的电容容差不一样,有人用的是10%,…

作者头像 李华
网站建设 2026/4/14 14:14:01

人工智能演讲PPT专业指南:打造高质量技术分享

人工智能演讲PPT专业指南:打造高质量技术分享 【免费下载链接】人工智能演讲PPT普及这一篇就够了 人工智能演讲PPT:普及这一篇就够了欢迎来到本资源页面,这里提供一份精心制作的人工智能(AI)主题PPT,专为演…

作者头像 李华
网站建设 2026/4/15 5:57:33

京东、字节、小米、比亚迪等大厂集体涨薪,释放强烈信号!

大家好,我是播妞。年底大厂福利战真的“卷”到没边了!最近,互联网大厂的“涨薪大战”备受关注,从12月初开始,字节跳动、小米、比亚迪、宁德时代、京东等大厂就陆续宣布了涨薪计划,并且涨薪真的是一家比一家…

作者头像 李华
网站建设 2026/4/15 5:58:30

二进制逆向神器fq工具:零基础快速解析任意文件格式

二进制逆向神器fq工具:零基础快速解析任意文件格式 【免费下载链接】fq jq for binary formats - tool, language and decoders for working with binary and text formats 项目地址: https://gitcode.com/gh_mirrors/fq/fq 你是否曾面对神秘的二进制文件一筹…

作者头像 李华
网站建设 2026/4/12 20:42:46

Spring Authorization Server完整指南:从零搭建企业级授权中心

在当今微服务架构盛行的时代,如何安全高效地管理用户认证与授权成为了每个开发者必须面对的问题。Spring Authorization Server作为一个功能强大的OAuth2授权服务器实现,为开发者提供了一套完整的身份认证解决方案。本文将带你从项目介绍到实际部署&…

作者头像 李华