吴程锴的第三次上机作业:Dragon绘制与地形可视化
需积分: 0 13 浏览量
更新于2024-08-05
收藏 387KB PDF 举报
"本次资源是吴程锴同学的18029100040号第三次上机作业,主要包括两个部分:Dragon绘制和地形可视化。作业涉及到Python编程、数据处理以及三维可视化技术,使用了Mayavi和NumPy等库进行实现。"
在第一个作业中,吴程锴同学完成了Dragon的绘制。这部分代码首先导入了mayavi、os.path和tarfile库,用于处理和渲染3D模型。代码从'dragon.tar.gz'压缩文件中提取数据到'dragon_data'目录下,然后通过mlab.pipeline.surface()函数加载并渲染名为'dragon_recon/dragon_vrip.ply'的PLY文件,这是一种常见的3D模型文件格式。渲染完成后,使用shutil.rmtree()删除了解压的文件夹,以保持工作环境的整洁。
1.1代码的关键步骤如下:
1. 打开tar.gz压缩文件
2. 创建或跳过'dragon_data'目录
3. 提取所有内容到'dragon_data'
4. 加载并渲染PLY文件
5. 显示渲染结果
6. 删除'dragon_data'目录
1.2的结果是成功渲染出Dragon模型,并通过mlab.show()展示。
第二个作业涉及地形可视化的实现。在此部分,代码导入了zipfile、numpy和mayavi库,用于读取、处理和可视化地形数据。代码从'5.1.6N36W113.hgt.zip'压缩文件中读取高度数据,将其转换为numpy数组并进行形状调整。对数据进行切片和填充,将-32768的无效值替换为数据集中最小的非负值。最后,使用mlab.figure()创建一个新的图形窗口,并用mlab.surf()函数渲染地形数据,设置了特定的颜色映射和图形大小。
2.1代码的主要流程如下:
1. 读取ZIP文件中的'HGT'文件
2. 将二进制数据转换为numpy数组
3. 调整数据数组的形状
4. 对数据进行切片和异常值处理
5. 创建新的Mayavi图形窗口
6. 渲染地形数据并设置视觉效果
2.2的结果应该是成功地以三维地形图的形式展示了指定区域的地形数据。
这两部分作业体现了Python在数据处理和科学计算方面的应用,同时展示了Mayavi库在3D图形和可视化上的强大功能。
2022-08-08 上传
2022-08-08 上传
2022-08-08 上传
2022-08-03 上传
2022-08-08 上传
2022-08-08 上传
2022-08-03 上传
点击了解资源详情
点击了解资源详情

莉雯Liwen
- 粉丝: 31
最新资源
- 数据库收集器:通过表单简化数据库学习过程
- Windows 64位VisualSVN服务器学习版安装指南
- C语言指针详解及常见误区解析
- 源代码揭秘:VC++可变向三角形按钮控件
- STM32MP157 HAL库驱动:时钟配置及单片机移植
- C#开发的重力模拟程序示例
- 打造ios三列省市区选择器的实践教程
- Bold360 AI智能客服插件,提升客户支持效率
- STM32F103C8T6下位机FreeRTOS移植与PID控制实现
- OurMsg2016软件源码及开发文档解析
- 无线点餐系统必备Jar包清单解析
- STM32MP157高级定时器输出比较模式HAL库驱动实现
- iOS自定义分页控制器实现与使用指南
- RFduino-Dongle-Firmware:Arduino编程与串行通信解决方案
- 从DOT图形生成Verilog Dataflow代码的Python工具
- nginx主从热备配置及keepalived安装指南