CN115455683A - 一种网格文件中数据的快速自动化修改方法 - Google Patents
一种网格文件中数据的快速自动化修改方法 Download PDFInfo
- Publication number
- CN115455683A CN115455683A CN202211074064.7A CN202211074064A CN115455683A CN 115455683 A CN115455683 A CN 115455683A CN 202211074064 A CN202211074064 A CN 202211074064A CN 115455683 A CN115455683 A CN 115455683A
- Authority
- CN
- China
- Prior art keywords
- modified
- file
- grid
- area
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种网格文件中数据的快速自动化修改方法,可以按不同的几何、结构要求,快速调整网格中需变动区域的节点信息。该方法包括,读取初始mesh网格文件,对文件中各网格节点、单元、面、区域进行编号并解析其相邻结构的连接关系;识别待修改区域的某一侧边界面为第一层待修改面,继而基于解析出的相邻结构间连接关系,将待修改区域按层划分;根据要求修改各层待修改面所包含的节点数据;将修改后的数据输出为新的mesh网格文件。这个方法可以在不影响网格质量的前提下,准确高效地对网格中节点数据批量修改,从而改变结构体的几何、结构参数,具有适用范围广、计算效率高、精确性好等优点,可有效提升设计人员的工作效率。
Description
技术领域
本发明属于CAE技术领域,涉及网格节点数据的批量修改方法,特别涉及参数化建模的应用。
背景技术
在实际设计中,当模型随需求发生变动时,传统的设计方法需要以手动的方式搭建几何模型,并对其重新进行网格划分,这个过程会造成大量重复性工作,整个过程需要设计人员进行非常复杂的操作,工作量大且效率低。基于参数化的设计方法能够有效解决此类问题,参数化建模是指通过简单的输入模型中的相关结构的参数值就能建立和分析新的模型,在其模型生成过程中,通过记录不同元素间毗邻关系,当结构、尺寸参数发生改变时,自动调整几何形状和尺寸,极大地提高设计效率。
经参数化建模直接生成的几何模型不能为数值分析所用,需要将其转化为网格模型。因此,如果希望以几何模型中的设计参数作为形状优化的设计变量,并进行后续数值分析操作,就必须将设计参数的作用范围延拓至网格模型,使网格模型能够根据设计变量的变化,实现网格模型的参数化。
发明内容
为了克服现有数值分析模型修改过程中存在的问题,简化设计人员的工作流程,提高设计效率,本发明的目的在于提供一种网格文件中数据的快速自动化修改方法,实现mesh文件中节点数据的批量修改,以解决现有的数值分析模型修改复杂问题,从而达到参数化建模的目的。
为实现上述目的,本发明采用的技术方案是:
一种网格文件中数据的快速自动化修改方法,包括如下步骤:
步骤1、建立一个存放初始mesh网格文件的文件夹作为数据库,通过C++编程语言读取集成在数据库中的mesh网格文件;
步骤2、对各网格节点(Node)、单元(Cell)、单元面(Face)、区域(Zone)进行编号并解析其相邻结构的连接关系;
步骤3、定义待修改区域的某一边界面为初始面,获得初始面所包含单元面及节点的信息;
步骤4、以初始面为基准,获得第二层待修改面,继而将待修改网格区域按层划分;
步骤5、从第一层待修改面开始,依次修改各层面包含的节点坐标数据,mesh文件中其他数据不变;
步骤6、将数据输出为新的mesh文件,保存在一个自命名文件夹中。
与现有操作过程相比,本发明可通过解析mesh文件中存储的数据,实现对特定节点的批量修改,并基于数据库中初始mesh文件生成新的mesh文件,有效提升设计人员的工作效率,在短时间内完成数值分析模型的修改。
附图说明
图1为本发明实例所提供的网格文件自动化修改的流程示意图。
图2为自动创建文件夹的执行窗口。
图3为mesh文件注释语句。
图4为mesh文件解析后各节点的连接关系。
图5为网格修改原理示意图。
图6为修改前后规则长方体区域网格,其中(a)为修改前规则长方体区域网格,(b)为修改后规则长方体区域网格。
图7为修改前后圆柱体区域网格,其中(a)为修改前圆柱体区域网格,(b)为修改后圆柱体区域网格。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本发明为网格自动化修改技术,主要应用于网格模型的参数化建模。
如图1流程所示,以圆柱形网格分别在径向和轴向上某一区域尺寸为例,本发明的仿真方法具体包括如下步骤:
步骤1、通过C++编程语言读取集成在数据库中的mesh网格文件。
本发明基于C++编程语言,如图2所示,通过Visual Studio平台在命令窗口通过输入文件名自动创建储存新生成mesh文件的文件夹,再以txt的方式打开数据库中初始mesh文件,从第一行起依次读取mesh网格文件中存储的数据。
步骤2、对各网格节点(Node)、单元(Cell)、单元面(Face)、区域(Zone)进行编号并解析其相邻结构的连接关系。
为减少存储空间需求,mesh网格文件采用了高效的文件保存格式,文件中仅仅包含数模关键组件的部分内容,存储量需求较大的内容被忽略,可通过其他已保存部分得出。
mesh网格文件主要包括网格的几何信息,分为网格维度、节点、单元、面、区域等。在mesh文件中,数据按lisp语句的结构进行组织,语句用括号包围,第一个数字是表示类型的整数,如图3a为文件的开头,表示mesh文件中注释类型编号为0的部分。其中,如图3b所示为维度数据格式,“2”表示维度的类型编号,“3”表示网格的维数;图3c为节点数据格式,按先后顺序“10”表示为节点类型编号,“0”表示结构体中节点所属的区域编号,“1”表示起始节点的编号,“26a728”表示16进制总节点数,“0”表示为type编号,“3”为网格维度;图3d为单元数据格式,按先后顺序“12”表示为单元类型编号,“0”表示结构体中单元所属的区域编号,“1”表示起始单元的编号,“25bd96”用16进制表示为该区域内总单元数,“0”均表示为type编号。
在该步骤中,自mesh文件里数据排列的先后顺序,为各节点、单元面、单元、区域赋予编号,并解析出不同结构间毗邻关系,储存在数组中便于后续调用,以节点为例,解析后的结构毗邻关系如图4所示。
步骤3、定义待修改区域的某一边界面为初始面,获得初始面所包含单元面及节点的信息;
其中,以图5所示几何模型为例,中间为流体域,即待修改区域;两侧为固体区域。为改动流体区域宽度,将其左侧面定义为初始面及第一层待修改面,并将第一层待修改面所包含的单元面储存在一个二维数组中。
步骤4、以初始面为基准,获得第二层待修改面,继而将待修改网格区域按层划分;
遍历步骤3中存储的第一层待修改单元面,判断待修改区域一侧的第一层单元,存储在另一个二维数组中,由于单元为六面体结构,第一层待修改面中每一个单元面的对面为相对应的第二层待修改单元面,将之存储在二维数组中,由此得到第二层待修改面,进而将待修改其区域按层划分。
步骤5、从第一层待修改面开始,依次修改各层面包含的节点数据,mesh文件中其他数据不变;
本发明实现对待修改区域的按层修改。从第一层待修改面开始,若待修改区域为规则长方体区域,可采用旋转坐标系的方法,将第一层待修改面旋转至XOY面,其中:
x′=xcosβ-ysinβ (1)
y′=ycosβ+xsinβ (2)
式中,x′为旋转后的横坐标值,y′为旋转后的纵坐标值。x为初始坐标值,y为初始纵坐标值,β为坐标系逆时针旋转角度。
当待修改区域为圆柱区域时,将各层待修改面节点坐标由笛卡尔坐标系转化为柱坐标系,其中:
z=z (5)
而后依次修改各层待修改面节点坐标值。为使修改后网格均匀分布,各层网格移动距离呈等差数列:
d=(n0-n)·d0/n0 (6)
式中,d为当前层待修改面要移动的距离;n0为待修改区域总层数;n为当前层待修改面层数;d0为要移动的总距离。
步骤6、将数据输出为新的mesh文件,保存在自命名文件夹中。
在待修改区域节点坐标修改结束后,将新的数据输出为新的mesh文件,并将新mesh文件保存在自命名文件夹中。图6、图7示出了新生成mesh的结果。
图6所示为规则长方体区域网格修改情况,从图中可以看出,修改后的网格相较于初始网格由2mm增大至4mm,且增大后待修改区域网格仍均匀分布。
图7所示为圆柱区域网格修改情况,从图中可以看出,网格在径向上被拉长,由48mm增大为98mm。
值得注意的是,本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
综上所述,本实施例所述的一种网格文件中数据的快速自动化修改方法,可以在短时间内迅速完成对模型的修改,基于C++编程语言解析集成在数据库中的初始网格文件,获得不同结构间位置关系,具体包括各节点编号及坐标,各单元编号、单元所包含节点编号及相邻单元编号,各面编号、各单元面所包含节点编号、各单元面所相邻单元编号,各区域编号及所包含单元编号等;根据待修改区域的几何形状定义第一层待修改面,由此实现对待修改区域的按层划分;遍历各层待修改面所包括的节点,根据输入修改的参数,改变各节点坐标,进而修改网格模型中待修改区域的尺寸;将修改后的数据输出为新的mesh文件,并存储在自命名文件夹中。整个过程输入指定结构参数便可自动读取数据库中mesh文件并完成修改,在本实施例中,模型修改耗时由手动修改所需的二十余天缩短为十几个小时,减少至几十分之一,在保证网格质量的基础上大大提高了修改效率和对不同工况结构的适应性。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其他设备固有相关。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (10)
1.一种网格文件中数据的快速自动化修改方法,其特征在于,本方法针对的网格文件不受其规模限制,适用于计算机硬件资源能够支持的任何网格文件,包括以下步骤:
步骤1、建立一个存放初始mesh网格文件的文件夹作为数据库,通过C++编程语言读取集成在数据库中的mesh网格文件;
步骤2、对各网格节点(Node)、单元(Cell)、单元面(Face)、区域(Zone)进行编号并解析其相邻结构的连接关系;
步骤3、定义待修改区域的某一边界面为初始面,获得初始面所包含单元面及节点的信息;
步骤4、以初始面为基准,获得第二层待修改面,继而将待修改网格区域按层划分;
步骤5、从第一层待修改面开始,依次修改各层面包含的节点数据,mesh文件中其他数据保持不变;
步骤6、将数据输出为新的mesh文件,保存在一个自命名文件夹中。
2.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,为减少存储空间需求,mesh网格文件中仅仅包含数模关键组件的部分内容,对于需要较大存储量的内容则被忽略,所述步骤二,通过C++编程语言解析mesh文件中存储的网格数据,具体包括各节点编号及坐标;各单元编号、单元所包含节点编号及相邻单元编号;各单元面编号、各单元面所包含节点编号、各单元面所相邻单元编号;各区域编号及所包含单元编号。
3.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤3,选取待修改区域的某一侧面为第一层待修改面,并将第一层待修改面所包含的单元面编号存储在一个二维数组中。
4.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤4,基于步骤2解析所得网格信息及步骤3所得第一层待修改面中单元面编号,得出第一层待修改面相邻单元编号及第二层待修改面所包含单元面编号,依次得出各层待修改面所包含的单元面编号,保存在同一个二维数组中。
5.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤5,根据新输入几何参数或模型结构变化情况,遍历各层待修改面中所包含节点,按层数依次修改各层待修改面节点信息。
6.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤5,当模型中几何参数发生变化时,针对新输入几何参数,当待修改区域为规则长方体区域时,通过旋转坐标系的方法,将第一层待修改面旋转至XOY面,依次修改各待修改面所包含节点的Z坐标;当待修改区域为圆柱区域时,将各层待修改面节点坐标由笛卡尔坐标系转化为柱坐标系,通过修改待修改面中各节点坐标径向的数值实现对网格的修改。
7.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤5,当模型中某部分结构发生变化时,以模型中原有的固体区域、流体区域发生变化为例,当某一原有固体区域需转变为流体区域时,以遍历待修改节点的方式,选择mesh文件中待修改固体区域节点数据,将其移动到流体区域位置,实现固体区域向流体区域的转换。
8.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤5,当模型中某边界面名称需重新设置时,可以通过遍历网格文件中数据的方式,选择并修改需改动边界面的名称。
9.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤6,防止mesh文件存放混乱,在输出新mesh文件前,通过输入文件名的方式,自动创建一个自命名文件夹,作为后续生成新mesh网格文件的存储地址。
10.根据权利要求1所述一种网格文件中数据的快速自动化修改方法,其特征在于,所述步骤6,按原mesh文件中数据存储顺序,将修改后的数据依次输出到新mesh网格文件中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211074064.7A CN115455683A (zh) | 2022-09-02 | 2022-09-02 | 一种网格文件中数据的快速自动化修改方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211074064.7A CN115455683A (zh) | 2022-09-02 | 2022-09-02 | 一种网格文件中数据的快速自动化修改方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115455683A true CN115455683A (zh) | 2022-12-09 |
Family
ID=84299905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211074064.7A Pending CN115455683A (zh) | 2022-09-02 | 2022-09-02 | 一种网格文件中数据的快速自动化修改方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115455683A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117195827A (zh) * | 2023-11-07 | 2023-12-08 | 巨霖科技(上海)有限公司 | 一种网格边界面识别方法、有限元计算方法及装置 |
-
2022
- 2022-09-02 CN CN202211074064.7A patent/CN115455683A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117195827A (zh) * | 2023-11-07 | 2023-12-08 | 巨霖科技(上海)有限公司 | 一种网格边界面识别方法、有限元计算方法及装置 |
CN117195827B (zh) * | 2023-11-07 | 2024-02-20 | 巨霖科技(上海)有限公司 | 一种网格边界面识别方法、有限元计算方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Coupez et al. | Parallel meshing and remeshing | |
CN100468418C (zh) | 由边界表示数据生成体数据的方法及其程序 | |
CN110188423B (zh) | 一种基于有限元网格划分的线性工程结构快速bim建模方法 | |
EP4180209A1 (en) | Method and device for formulating printing process in additive manufacturing | |
CN110211234B (zh) | 一种网格模型缝合系统和方法 | |
CN115455683A (zh) | 一种网格文件中数据的快速自动化修改方法 | |
CN112380650A (zh) | 工作装置结构件设计方法 | |
CN110795835A (zh) | 一种基于自动同步建模的三维工序模型逆向生成方法 | |
CN1758256A (zh) | 基于文件的复杂产品数字化模型集成设计方法 | |
CN100367284C (zh) | 边界数据的内外判定方法 | |
JPWO2003048980A1 (ja) | 3次元形状データのセル内部データへの変換方法及び変換プログラム | |
CN108491654A (zh) | 一种三维实体结构拓扑优化方法及系统 | |
CN103218493B (zh) | 一种基于多重网格的快速等几何分析数值模拟方法 | |
CN115587480A (zh) | 数字化仿真方法以及数字化仿真装置 | |
CN114676522A (zh) | 融合gan和迁移学习的气动形状优化设计方法及系统及设备 | |
CN115222221A (zh) | 智能化集成平台的构建方法、装置、设备及存储介质 | |
CN110532670B (zh) | 一种适分析样条实体模型构建方法及系统 | |
Sakikhales et al. | Using BIM to facilitate iterative design | |
CN113297764A (zh) | 有限元参数化模型建模方法、系统及存储介质 | |
CN113158377B (zh) | 一种弧面分度凸轮模型创建和传动性能优化设计方法及cad优化设计系统 | |
CN104678898A (zh) | 一种基于cad球片切割机器人运动轨迹的自动编程系统 | |
Lee | Multi-resolution modelling for feature-based solid models using the effective volumes of features | |
CN116186860B (zh) | 一种基于bim的大跨度结构出图方法 | |
Hossain et al. | A Graphics Processor Unit-Accelerated Freeform Surface Offsetting Method for High-Resolution Subtractive Three-Dimensional Printing (Machining) | |
Zhu et al. | NURBS Modeling and Curve Interpolation Optimization of 3D Graphics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |