STL模型转有限元网格

news2024/12/24 20:14:18

随着计算机图形学、硬件和3D打印技术的发展,基于曲面三角网格的图形渲染及其文件格式越来越流行。 在有限元分析(FEA)中,工程师有时会得到基于三角形网格的几何文件(如STL文件等)并进行后续分析。 由于曲面三角网格与有限元网格的根本区别,曲面网格不能直接用于有限元法的计算。 有必要将表面网格转换为 FEA 网格以进行后续分析。 本文概述了STL表面网格和有限元网格的特点,并举例说明了如何将STL网格转换为FEA网格。

在这里插入图片描述

推荐:用 NSDT设计器 快速搭建可编程3D场景。

1、三角面网格

三角网格是指由三角形单元组成的曲面模型。 它使用点和边形成许多小的空间三角形来近似 3D 模型的表面。 大多数基于 3D 网格的几何体也使用这种近似方法。 使用这种原始表示方法,几乎所有的 3D 模型表面都可以使用三角形来近似。 由于三角网格处理简单快捷、可视化好、性能好,被认为是描述三维模型的常用方法之一。 随着计算机图形学的飞速发展,三角网格模型在三维动画、电子商务、计算机辅助设计、制造、数字娱乐等诸多领域得到了广泛的应用。 特别是随着3D打印技术的蓬勃兴起,三角面网格成为3D模型表示方法的重点。 同时开发了不同的数据存储格式,其中应用广泛的有STL、OFF、OBJ、PLY等。

在这里插入图片描述

STL格式(Stereo Lithography的简称)是3D Systems于1988年开发的一种接口协议,是一种服务于快速原型制作技术的3D图形文件格式。 STL 文件由一系列无序的三角形面组成。 每个三角面的定义包括顶点坐标和三角面的法向量。 注意文件中没有给出三角形面之间的拓扑关系,三角形通过共享两个顶点相邻。 由于简单、不易出错,STL已经成为最常用的文件格式,成为快速成型技术领域事实上的接口标准。 目前市面上几乎所有的3D打印机都是通过识别STL模型进行打印。

另一种广泛使用的三角形格式是 OFF(对象文件格式)。 与STL文件不同的是,OFF文件给出了顶点的个数以及三角形和边的个数等信息,但OFF文件并没有指明三角形的法向量。 OFF文件可读性强,点集和面集简单明了。 它们都以 OFF 关键字开头,易于识别。 除了OFF文件,PLY(Standford triangle mesh)、OBJ等表面网格在工业界和学术界也有一些应用。 我们将在以后的文章中描述它们。

2、有限元分析中的 3D 网格

虽然在三维有限元分析中有一些特殊类型的单元,例如代表板(plate)和壳(shell)的面单元,代表桁架(truss)和梁(beam)的线单元。 但是,3D 实体元素使用最广泛。 常用的实体单元有四面体(terahedral)和六面体(hexahedral)单元,广泛应用于三维结构、热、流体、声学和电磁模拟。 实体单元不仅具有整体的表面信息,而且内部还有离散的网格。 这种差异也使得FEA实体网格比以STL为代表的面网格更加复杂,数据量也大得多。

有限元网格对单元的质量要求比较高。 元素不能过度扭曲。 网格密度需要适中。 粗网格会导致准确的问题。 而密集的网格会导致沉重的计算负担。 一些拓扑复杂的区域也需要密集网格。 常用的网格质量指标是:

  • 雅可比比:由全局坐标和局部坐标得出的雅可比矩阵的比值。 理想值为 1,不能小于 0。
  • 纵横比:指元素的最长边与最短边的比值。 理想元素的纵横比为 1。
  • 偏度:元素规律性的量度。 取值范围为 0 到 1,值越小,元素越理想。

单元的排列顺序也会影响有限元分析的结果。 一般来说,二阶单元优于线性一阶单元,但二阶单元节点数的增加也会导致计算量相对较大。

3、将 STL 网格转换为 FEA 网格

通用有限元软件 WelSim 已经支持将 STL 曲面网格转换为实体网格以进行有限元分析。 用户可以通过导入STL文件快速完成网格划分项目,生成四面体实体网格(Tet4),导出FEA网格文件用于后续的有限元分析。

操作步骤如下:

1、在 WelSim 软件中,创建一个新的 FEM 项目,然后从菜单或工具栏中选择导入几何。 将弹出如下对话框:
在这里插入图片描述

2、选择一个 STL 文件并单击“打开”。
在这里插入图片描述

3、由于是STL几何模型,默认显示三角形网格线,用户可以在属性视图中选择隐藏网格线显示。

在这里插入图片描述

4、简单地设置元素的最大尺寸。 在这里,根据样本的整体尺寸,我们将最大单元尺寸设置为 10 mm。 单击 Mesh All 按钮执行有限元网格划分。
在这里插入图片描述

5、如下图,一共生成了4025个节点,16112个Tet4元素。

在这里插入图片描述

6、要将生成的有限元网格数据保存为文件,可以右键单击网格节点并选择导出网格。 如下所示:
在这里插入图片描述

7、目前支持的网格文件格式有UNV,WelSim自带的格式,Abaqus的*.inp格式,Nastran的*.bdf格式,如下图。
在这里插入图片描述

此时,STL 网格文件已转换为可用于有限元分析 (FEA) 或计算流体动力学 (CFD) 分析的实体网格。


原文链接:STL转有限元网格 — BimAnt

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

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

相关文章

华为OD机试真题 Java 实现【检查是否存在满足条件的数字组合】【2022Q4 100分】

一、题目描述 给定一个正整数数组,检查数组中是否存在满足规则的数字组合 规则:A B 2C 二、输入描述 第一行输出数组的元素个数。 接下来一行输出所有数组元素,用空格隔开。 三、输出描述 如果存在满足要求的数,在同一行…

【MySQL】不允许你不会SQL语句之DDL

目录 前言: 一.DDL数据库语句 1.1语句讲解 1.2总结 二.DDL表语句 2.1语句讲解 2.2总结 三.DDL字段语句 3.1语句讲解 3.2总结 四.MySQL数据类型 五.结尾 前言: 在从零到一入门MySQL一篇中,我们对数据库已经有了一定的了解&#xf…

Linux 设备树手动反编译 dtb 生成 源文件dts

验证平台 win10 64 位 VMware Workstation Pro 16 ubuntu 20.04 dtc 工具: 来自 linux-6.3.5 中的 scripts/dtc/ 安装 dtc 工具 其实可以通过安装 dtc 软件包,但不建议这么做,最好通过编译Linux 最新的内核,获取这个 dtc 工具…

利用Web Serial API实现Vue与单片机串口通信

一、Web Serial API介绍 Web Serial API 是一项 Web 技术,用于在浏览器中访问串行端口设备(如 Arduino、传感器等)并与之通信。它提供了一组 JavaScript 接口,使得 Web 应用程序可以通过 USB 串行端口连接到硬件设备,并…

华为OD机试真题 Java 实现【报数游戏】【2022Q4 100分】

一、题目描述 100个人围成一圈,每个人有一个编码,编号从1开始到100。他们从1开始依次报数,报到为M的人自动退出圈圈,然后下一个人接着从1开始报数,直到剩余的人数小于M。请问最后剩余的人在原先的编号为多少&#xff…

【JavaSE】Java基础语法(四十五):TCP UDP 全解

文章目录 1. TCP发送数据2. TCP接收数据【应用】3. TCP程序练习4. TCP程序文件上传练习【应用】5. UDP发送数据6. UDP接收数据【应用】7. UDP通信程序练习【应用】8. UDP三种通讯方式 1. TCP发送数据 Java中的TCP通信 Java对基于TCP协议的的网络提供了良好的封装,使…

chatgpt赋能python:Python删除文件目录

Python删除文件目录 Python是一种高级编程语言,广泛应用于开发各种类型的应用程序。Python的许多功能使其成为开发者的首选编程语言之一。在这篇文章中,我们将讨论如何使用Python删除文件和目录。 文件和目录的区别 在开始之前,让我们了解…

16_Linux内核启动流程

目录 链接脚本vmlinux.Ids Linux内核入口stext mmap_switched函数 start_kernel函数 rest_init函数 init进程 链接脚本vmlinux.Ids 要分析Linux启动流程,同样需要先编译一下Linux源码,因为有很多文件是需要编译才会生成的。首先分析Linux内核的连接脚本文件arch/arm/kem…

【Python】Python系列教程-- Python3 字符串(十一)

文章目录 前言Python3 字符串Python 访问字符串中的值Python 字符串更新Python 转义字符Python 字符串运算符Python 字符串格式化Python三引号f-stringUnicode 字符串Python 的字符串内建函数 前言 往期回顾: Python系列教程–Python3介绍(一&#xff…

计算机网络-网络层1.0

传输单位 网络层将分组从源端传到目的端,为分组交换网上的不同主机提供通信服务,传输单位为数据报 路由器 完成路由选择和分组转发 路由选择:按照分布式算法,根据从相邻路由器所得到的的关于整个网络拓扑的变化情况&#xff0…

操作系统第二章​练习题

第一部分 教材习题(P84) 1、什么是前趋图?为什么要引入前趋图?​ 前趋图:是用于描述程序段或进程之间执行的先后顺序的有向无循环图。 引入的原因:为了更好的描述程序的顺序和并发执行的情况。 试画出下面4条语句的前趋图&#…

LeetCode 2559 统计范围内的元音字符串数

LeetCode 2559 统计范围内的元音字符串数 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/count-vowel-strings-in-ranges/description/ 博主Github:https://github.com/GDUT-Rp/LeetCode 题目:…

Vue3小兔鲜:组合式写法入门

Vue3&#xff1a;组合式写法入门 Date: May 11, 2023 认识Vue3 1. Vue3组合式API体验 通过 Counter 案例 体验Vue3新引入的组合式API <script> export default {data(){return {count:0}},methods:{addCount(){this.count}} } </script><script setup> imp…

【JavaSE】Java基础语法(四十四):XML解析

文章目录 1. 概述2.标签的规则3. 语法规则【应用】4. xml解析【应用】 1. 概述 万维网联盟(W3C) 万维网联盟(W3C)创建于1994年&#xff0c;又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。 建立者&#xff1a; Tim Berners-Lee (蒂姆伯纳斯李)。 是Web技术领域…

【分布族谱】高斯分布和逆高斯分布的关系

文章目录 高斯分布逆高斯分布简介通过高斯分布构造逆高斯分布 高斯分布 正态分布&#xff0c;又称Gauss分布&#xff0c;其概率密度函数入下图所示 正态分布 N ( μ , σ ) N(\mu, \sigma) N(μ,σ)受到期望 μ \mu μ和方差 σ 2 \sigma^2 σ2的调控&#xff0c;其概率密度函…

基于SpringBoot+Vue的医疗服务系统设计与实现

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架下…

Qt for Android环境配置(联合Android Studio)

目录 1.安装JDK2.安装Android Studio并下载必要组件3.安装QtCreator并配置 Official Doc 1.安装JDK Oracle JDK Download 配置环境变量&#xff1a; 2.安装Android Studio并下载必要组件 Android Studio Download 下图中&#xff0c;31.0.0是当前Qt必需的&#xff0c;3…

chatgpt赋能python:Python制作抽奖——让你的活动更有趣

Python制作抽奖——让你的活动更有趣 在活动中&#xff0c;抽奖环节常常是一大亮点。而用Python制作抽奖程序&#xff0c;则可以更灵活、更实用地完成这个环节。接下来我们将介绍Python制作抽奖的方法&#xff0c;并且说明如何让你的抽奖环节更加有趣。 Python制作抽奖的方法…

【Linux网络服务】Nginx优化

Nginx网页优化 一、配置Nginx网页缓存时间1.1设置方法 二、隐藏Nginx版本号2.1方法一&#xff1a;修改配置文件2.2方法二&#xff1a;修改源码文件&#xff0c;重新编译 三、修改用户与组四、日志切割五、连接超时六、更改进程数七、网页压缩八、配置防盗链九、Linux内核参数优…

华为OD机试真题 Java 实现【素数之积】【2022Q4 100分】

一、题目描述 RSA加密算法在网络安全世界中无处不在&#xff0c;它利用了极大整数因数分解的困难度&#xff0c;数据越大&#xff0c;安全系数越高。 给定一个32位正整数&#xff0c;请对其进行因数分解&#xff0c;找出是哪两个素数的乘积。 二、输入描述 一个正整数num …