【PinkCAx】可视化工具开发记录与总结

news2025/1/12 22:59:06
-----------PinkCAx-----------

仅以此篇,记录我的一次可视化软件开发尝试点滴。

简介

PinkCAx是一款采用Python语言编写的,基于QT5+VTK架构的三维可视化工具。

image-20221121222934560

该工具目前的功能如下:

基本操作

  • 网格文件的打开与保存(支持STL、PLY、VTK等)

image-20221121220318262

  • 基本视图(线框、包围盒、刻度包围盒)

image-20221121220415216

  • 文件分类树视图

image-20221121222525906

  • 一些不知道如何分类的功能

image-20221121220516161

模型曲率计算包括高斯、最大、最小、平均曲率计算;加载属性作用是加载有限元模型的节点属性数据(温度、应力等);属性比较作用是计算两个属性数据的偏差(用于可视化评估代理模型预测效果)。

有限元后处理

  • 关于有限元后处理的操作

image-20221121220605096

  • 关于

image-20221121220718196

  • 代理模型预测

image-20221121222648008

构建代理模型,可视化训练结果。(开始跑题ing)

点云处理

  • 三个(两个)功能

image-20221121220923548

依次是:模型转换点云、点云降采样、有限元模型外表面抽取。

待添加功能

  • 有限元模型上任意点/单元的信息和属性查询
  • 增材CAM相关功能
  • 点云相关功能(ICP配准、点云手动对齐等)
  • ……

部分功能展示

可视化操作

在这里插入图片描述

代理模型预测

在这里插入图片描述

其他操作

在这里插入图片描述

总结

记录第一次QT5+VTK开发工具的点滴,总共历时五天。在这期间每天都很充实,持续在:产生需求-->开源学习-->编写程序-->调试程序-->产生下一个需求-->……的状态。并且深刻认识到了实践的重要性,通过对这个小工具的开发,我逐步上手QT5和VTK。对于VTK,上半年就有接触了,不过一直被其各种数据结构劝退,觉得numpy数组最好用(当时网格计算接触的比较多),不过到现在见识到了VTK在很多数据结构上的表现(特别是vtkUnstructuredGrid与有限元数据模型,恰到好处),加之对VTK的管线机制和各种Filter深入了解之后,现在频频“真香”。回到工具本身,其实尚存许多bug,且代码臃肿,后期还需调试和优化。

同时,PinkCAx工具的开发借鉴了许多开源代码,开源万岁!

有一说一,这个粉色还挺好看的。#f187b8 / 241,135,18。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/24621.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Packet Tracer - 确定 DR 和 BDR

地址分配表 设备 接口 IP 地址 子网掩码 RA G0/0 192.168.1.1 255.255.255.0 Lo0 192.168.31.11 255.255.255.255 RB G0/0 192.168.1.2 255.255.255.0 Lo0 192.168.31.22 255.255.255.255 RC G0/0 192.168.1.3 255.255.255.0 Lo0 192.168.31.33 255.25…

sqli-labs/Less-38

这一关有变成了get请求的题目了 我们先判断一下是否属于数字型注入 输入如下 id1 and 12 回显如下 属于字符型 然后判断一下是单引还是双引 输入1 报错了 从报错信息可知 这是一个单引号注入型 我们去佐证一下呗 输入1-- 回显如下 可以 确实是单引号注入型 然后我选择使用…

SeriLog日志框架的应用

C#中当前流行的日志框架有NLog、Log4Net、及SeriLog,在这里我们简单介绍SeriLog日志框架的应用 1、日志基础 (1)、日志等级 (2)、日志接收器 序号 接收器 说明 1 Console 输出到控制台 2 Debug 输出到VS的Debug窗口 3…

TCP沾包问题

TCP流式协议:所谓流式协议,即协议的内容是像流水一样的字节流,内容与内容之间没有明确的分界标志,需要我们人为地去给这些协议划分边界。 我们说 TCP 是流式协议究竟意味着什么? - 云社区 - 腾讯云 (tencent.com) 网…

DJ12-1 8086系列指令系统-1

指令:能够被计算机识别并执行的二进制代码。 指令系统:所有指令的集合。 指令按功能分类:数据传送类、算术运算类、逻辑运算和移位、串操作、控制转移类、处理器控制。 一、8086 指令格式 1. 指令的一般格式 在《计组》里面,我…

计算机网络——第六章笔记(2)

TCP 连接的建立 三次握手建立连接: 1、一方(server)被动地等待一个进来的连接请求 2、另一方(the client)通过发送连接请求,设置一些参数 3、服务器方回发确认应答 4、应答到达请求方,请求方最…

[Spring Cloud] Hystrix三大特性--降级,熔断,隔离

✨✨个人主页:沫洺的主页 📚📚系列专栏: 📖 JavaWeb专栏📖 JavaSE专栏 📖 Java基础专栏📖vue3专栏 📖MyBatis专栏📖Spring专栏📖SpringMVC专栏📖SpringBoot专…

高级测试工程师必备技术:用Git版本控制自动化测试代码

初识Git版本控制 自动化测试代码反复执行,如果借用持续集成工具会提高测试效率,那么需要我们把自动化测试代码发布到正式环境中,这时候用Git版本控制工具高效、稳定、便捷。 分布式版本控制 Git可以把代码仓库完整地镜像下来,有…

Mybatis整合MP

Mybatis整合MP 案例准备: 创建测试表: -- 创建测试表 CREATE TABLE tb_user (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键ID,user_name varchar(20) NOT NULL COMMENT 用户名,password varchar(20) NOT NULL COMMENT 密码,name varchar(30) …

kafka性能指南

kafka性能指南 1.绪论 首先是epoll模型,epoll使其在框架上得以使用mmp和回写高性能。 epoll模型具体可以看linuxIO那一个笔记,这里简单讲一下 首先是epoll模型,模型要求有一组fd由单独线程监控,然后app去干别的事,当…

Arduino开发实例-MAX30100 脉搏血氧仪传感器驱动

MAX30100 脉搏血氧仪传感器驱动 1、MAX30100介绍 MAX30100 脉搏血氧仪和心率传感器是一款基于 I2C 的低功耗即插即用生物识别传感器。 MAX30100 是一款集成脉搏血氧饱和度和心率监测传感器解决方案。 它结合了两个 LED、一个光电探测器、优化的光学器件和低噪声模拟信号处理,…

【蓝桥杯Web】第十四届蓝桥杯(Web 应用开发)模拟赛 2 期 | 精品题解

🧑‍💼 个人简介:一个不甘平庸的平凡人🍬 🖥️ 蓝桥杯专栏:蓝桥杯题解/感悟 🖥️ TS知识总结:十万字TS知识点总结 👉 你的一键三连是我更新的最大动力❤️! &…

降本增效利器?Share Creators智能数字资产管理系统真香!

降本增效似乎是一个持续又永久的话题。尤其在今年, 显得格外的重要~ 疫情不知不觉已经伴随了我们三年,在各行各业都受到了疫情所带来巨大冲击的背景下,降本增效对很多企业来说不再是锦上添花,而可能是一条唯一的出路。 随着市场…

荧光素PEG活性酯,FITC-PEG-NHS,FITC-PEG-SCM,荧光素聚乙二醇琥珀酰亚胺乙酸酯

中文名称:荧光素聚乙二醇琥珀酰亚胺乙酸酯 英文名称:FITC-PEG-NHS,FITC-PEG-SCM 分子量: 1K,2K,3.4K,5K,10K(黄色、橙黄色或者橘黄色固体或者粉末) 端基取代率:≥90% 原料分散系数PDI:≤1.05 纯度:98%…

Vue简单示例——weex跨平台解决方案

简单介绍: Weex的出现主要解决了Web开发的应用频繁发布版本和多端研发两个问题,同时解决了前端语言性能差异和显示效果受限的问题。 什么是weex: Weex是使用流行的Web开发体验来开发高性能原生应用框架。使开发者可以用JS语言和前端开发经…

若依框架解读(微服务版)—— 3.验证码与登录

验证码 查看验证码的请求: 之前已经讲过http://localhost/dev-api/code会在前端重写为http://localhost:8080/code。 请求第一步会进入网关模块 网关相关知识:Gateway基于的WebFlux框架,与我们平时用的WebMVC是不太一样的。网关由Route&#…

PHP的Exception

# 简单解释 Exception是PHP的内置类,用来处理异常的基类 https://www.php.net/manual/zh/class.exception.php php class Exception implements Throwable { /** The error message */ protected $message; /** The error code */ protect…

MVC升级swagger No operations defined in spec!

不要嘲笑农民工种田怎么不香了,要反思为什么别人种田收入高。 以下是农民工即将转行挖野菜之前的种田心得。 1No operations defined in spec! 2Failed to load API definition. Failed to load API definition. 经过多次试验测试&#xff0…

光盘如何重装系统教程

​如果你想用光盘来重装自己的电脑系统,但是不知道怎么操作的话,下面让我们一起来看一下光盘重装系统的步骤吧。 工具/原料: 系统版本:win7 品牌型号:惠普 光盘重装系统: 1.首先我们需要先打开电脑上的光…

VUE 的生命周期

Vue 实例有一个完整的生命周期,也就是从创建之前→创建完成→挂载之前→挂载完成→更新渲染之前→渲染完成→销毁之前→销毁完成等一系列过程,我们称这是 Vue 的生命周期。通俗说就是 Vue 实例从创建到销毁的过程,就是生命周期。每一个组件或…