CN113343546A - 一种基于vbo的切削加工过程高效几何仿真方法 - Google Patents

一种基于vbo的切削加工过程高效几何仿真方法 Download PDF

Info

Publication number
CN113343546A
CN113343546A CN202110899400.0A CN202110899400A CN113343546A CN 113343546 A CN113343546 A CN 113343546A CN 202110899400 A CN202110899400 A CN 202110899400A CN 113343546 A CN113343546 A CN 113343546A
Authority
CN
China
Prior art keywords
voxel
data
vbo
model
workpiece
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.)
Granted
Application number
CN202110899400.0A
Other languages
English (en)
Other versions
CN113343546B (zh
Inventor
肖文磊
邱天泽
曹宪
张凱尧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN202110899400.0A priority Critical patent/CN113343546B/zh
Publication of CN113343546A publication Critical patent/CN113343546A/zh
Application granted granted Critical
Publication of CN113343546B publication Critical patent/CN113343546B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种基于VBO的切削加工过程高效几何仿真方法,包括以下步骤:刀具/工件局部布尔运算,建立模型包围盒,确定局部相交位置,进行快速布尔运算;虚拟体素映射,将工件Tri‑dexel模型的端点映射到空间中对应的虚拟体素;虚拟体素信息编码,将工件模型的面片数据以虚拟体素为单位进行编码;体素数据管理,将体素数据在显存VBO中的存储方式映射到系统内存;VBO数据更新,对保存于显存VBO中的模型面片数据进行局部高效更新;可视化渲染,手动定义渲染管线,将显存VBO中的模型面片数据进行解码并绘制到屏幕上。该方法能够减少仿真过程中的冗余计算,实现工件模型的局部动态更新,极大提高了切削加工过程几何仿真的效率。

Description

一种基于VBO的切削加工过程高效几何仿真方法
技术领域
本发明涉及智能制造数控加工技术,具体涉及一种基于VBO的切削加工过程高效几何仿真方法。
背景技术
智能制造是我国从制造业大国向制造业强国转变的重要保障,也是制造业转型升级的必经之路。精确高效的切削仿真方法一直是数控加工的核心关键技术之一,也是国内相关工业软件的重要瓶颈。智能数控加工对实时在线的切削仿真能力提出了更高的要求,例如近几年关注度越来越高的数字孪生技术对近实时、高精度的切削仿真算法的期望越来越大。
切削加工仿真分为几何仿真和物理仿真,几何仿真方法可以分为实体建模法和离散建模法。其中,实体建模法(如CSG、B-Rep等)能够保证几何仿真较高的精度,但计算成本也较高,无法应用于在线几何仿真;离散建模法(如Z-map、Tri-dexel等)是近似仿真方法,一定程度上可以提高运算效率。专利CN201611030732.0公开了一种基于STL模型的材料去除算法,能够对模型三角网格进行重构,实现虚拟加工仿真,但只是一种离线仿真,重点关注仿真精度;专利CN201710158757.7公开了一种五轴增材几何仿真方法,能够基于Tri-dexel模型实现五轴复杂轨迹的增材仿真过程,但没有针对Tri-dexel模型仿真效率问题展开进一步探讨;专利CN201811146285.4公开了一种面向加工实时监控的切削仿真实现方法,通过二叉树数据结构对DEXEL改进模型的存储、搜索功能进行改进,缺点是模型数据存储于系统内存中、可视化渲染时没有实现局部更新。
综上,现有的几何仿真方法大部分以离线仿真为目标而设计,是为了预览工件在加工过程中的形貌变化以及验证刀具轨迹的正确性,对仿真效率并没有提出很高的要求;同时现有的基于Tri-dexel模型的几何仿真方法通常将模型数据存储于系统内存中,在渲染前将数据传输至显卡内存,其中包含了大量在仿真中无需发生变化的数据。对于几何仿真这种工件形状动态变化、数据量较大的应用,数据的拷贝传输过程时间成本高,成为了仿真算法的性能瓶颈。而在线几何仿真的目的在于对加工过程的实时监测,需要几何仿真算法达到足够高的效率才能实现仿真过程与机床运动同步运行。为了满足在线几何仿真对实时性的极端要求,重点需要解决仿真过程中的冗余计算问题,实现工件模型的局部高效更新。
发明内容
为了解决上述技术问题,本发明提供一种基于VBO(Vertex Buffer Object,顶点缓冲对象)的切削加工过程高效几何仿真方法,通过将模型数据保存于显存VBO中,针对VBO中数据的高效增删改查进行方法设计,实现加工过程中工件模型的局部更新,使几何仿真效率得到了大幅提升。具体技术方案如下:
一种基于VBO的切削加工过程高效几何仿真方法,包括以下步骤:
步骤1:刀具/工件局部布尔运算,建立刀具与工件的包围盒,确定局部相交位置,进行快速布尔运算;
步骤2:虚拟体素映射,将工件Tri-dexel模型的端点映射到空间中对应的虚拟体素;
步骤3:虚拟体素信息编码,将体素单元内部的面片数据进行编码,编码后的数据以体素为单位存储于显存VBO;
步骤4:体素数据管理,将体素数据在显存VBO中的存储方式映射到系统内存中,快速定位到每一个体素单元在VBO中的存储位置;
步骤5:VBO数据更新,对保存于显存VBO中的模型面片数据进行局部高效更新;
步骤6:可视化渲染,手动定义渲染管线,将显存VBO中的模型面片数据进行解码并绘制到屏幕上。
进一步的,所述步骤1,包括以下步骤:
步骤1.1:建立刀具与工件的模型包围盒;
步骤1.2:将模型包围盒分别投影到三个相互正交的平面上,分别计算在三个平面上刀具/工件包围盒的相交范围。
进一步的,所述步骤2,包括以下步骤:
步骤2.1:建立虚拟体素模型;
步骤2.2:Tri-dexel模型数据映射,虚拟体素的边长与Tri-dexel模型建立时的线束间距相等;通过比较体素顶点的坐标值、体素12条边上对应dexel线束端点的坐标值,确定是否有dexel线束端点落在虚拟体素的边上,如果有,则创建所述虚拟体素,并记录体素单元内的dexel端点信息;
步骤2.3:利用MC算法进行三角面片重构,将顶点数据转换为面片数据。
进一步的,所述步骤3,编码方式具体包括以下步骤:
步骤3.1:globalID编码,将体素在三个方向上的网格个数xnum、ynum、znum以21位二进制数据表示,分别填入64位长整型值中,得到一个globalID:
Figure 889305DEST_PATH_IMAGE001
步骤3.2:subID编码,每个体素单元均对应一种MC面片类型,以二进制数据从低到高12位代表体素的12条边,某一位的值为1则代表三角面片包含该位对应边上的点,得到代表所述三角面片的subID;
步骤3.3:weight编码,体素内部每一条边上最多存在一个顶点,令体素各边的正方向与工件坐标轴的正方向相同,对于边AB上的点P,定义权值weight,利用权值weight即可确定每一个顶点的具体位置,计算公式为:
Figure 446188DEST_PATH_IMAGE002
进一步的,所述步骤3,对于内部面片数量相等的体素单元,编码后的数据量大小相同,将所述体素单元数据存入同一段显存VBO中。
进一步的,所述步骤4,包括以下步骤:
步骤4.1:查询体素数据存储位置,利用数据映射链表,以体素globalID为索引,查找到体素在VBO中的存储位置信息;
步骤4.2:记录删除体素存储位置,将VBO中需删除体素单元的存储位置信息记录至该段VBO对应的删除位置记录队列中。
进一步的,所述步骤5,包括以下步骤:
步骤5.1:体素数据删除,将VBO中需删除的数据修改为预设的常值,在所述步骤6的可视化渲染时自动跳过该位置;
步骤5.2:体素数据增加,在所述步骤4中访问数据管理结构中的同类型体素删除队列时,如果队列不为空则将该体素的数据存储至队头所记录的位置,并执行出队操作;如果队列为空,则将体素数据添加到VBO的末尾;
步骤5.3:体素数据修改,若体素内的面片数量不变,仅是面片形状发生变化,则直接将VBO中对应位置的数据进行修改;若体素内的面片数量发生变化,将体素数据从原VBO中删除,并将更新后的数据添加到对应的新VBO中。
本发明提出的基于VBO的切削加工过程高效几何仿真方法,利用显存VBO存储模型数据,在仿真时只需要更新刀具/工件接触域中发生变化的模型局部数据,由此实现了仿真算法的高效性提升。与现有技术相比,本发明至少具有以下有益效果:
(1)本发明利用显存VBO存储工件模型面片数据,在几何仿真的每一次循环过程中,大量未改变的数据无需从系统内存发送至显卡内存,大幅减少了CPU-GPU通信消耗,有助于提高仿真效率;
(2)本发明通过对VBO中数据增删改查方法的设计,能够实现对显存中工件模型数据的精准操作,保证不对未改变的数据进行冗余操作,实现工件模型数据的高效局部更新;
(3)本发明利用模型包围盒确定刀具与工件模型的局部相交范围,只需要遍历该范围内的每一条dexel线束,即可完成刀具/工件布尔运算,减少了Tri-dexel模型布尔运算的时间消耗;
(4)本发明通过对工件模型数据进行编码,一方面能够减少数据量,降低数据拷贝传输至显卡内存的时间成本,同时节约显卡内存占用;另一方面能够将体素位置信息编码结果作为体素数据的唯一索引,有助于对体素数据进行高效管理。
附图说明
为了更清楚地说明本发明具体实施方式中的技术方案,下面将具体实施方式描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为基于VBO的切削加工过程高效几何仿真方法的流程图;
图2为刀具/工件模型包围盒示意图;
图3为刀具/工件局部相交区域示意图;图中,图3(a)为x-y平面上的相交范围;图3(b)为x-z平面上的相交范围;图3(c)为y-z平面上的相交范围;
图4为虚拟体素映射示意图;
图5为模型内一个虚拟体素单元示意图;
图6为数据编码方式示意图;图中:图6(a)为globalID编码方式;图6(b)为subID编码方式;图6(c)为weight计算方式;
图7为体素数据查询结构示意图;
图8为VBO中数据排列方式示意图;
图9为VBO中数据删除示意图;图中:图9(a)为传统方法;图9(b)为本发明采用方法;
图10为VBO中数据添加流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的具体实施例仅用于解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种基于VBO的切削加工过程高效几何仿真方法,参照附图1所示,主要包括以下步骤:
步骤1:刀具/工件局部布尔运算,布尔运算效率的高低直接决定了整个仿真算法的效率,本步骤中首先采用常规的射线求交方法建立刀具与工件的Tri-dexel模型,进一步构建工件和刀具的Tri-dexel模型包围盒,并将两个包围盒变换到同一个坐标系下,利用包围盒坐标值确定刀具/工件局部相交区域,减少参与计算的dexel线束数量,实现刀具与工件Tri-dexel模型的快速布尔运算。具体包括如下步骤:
步骤1.1:参照图2所示,建立刀具与工件的模型包围盒;
步骤1.2:将模型包围盒分别投影到三个相互正交的平面上,分别计算在三个平面上刀具/工件包围盒的相交范围,对于本实施例而言,如图3(a)所示,刀具/工件包围盒在x-y平面上的相交范围为x∈[it,min, it,max],y∈[jt,min, jt,max]构成的矩形区域;如图3(b)所示,刀具/工件包围盒在x-z平面上的相交范围为x∈[it,min, it,max],y∈[kt,min, kt,max]构成的矩形区域;如图3(c)所示,刀具/工件包围盒在y-z平面上的相交范围为x∈[jt,min,jt,max],y∈[kt,min, kt,max]构成的矩形区域。通过该步骤可以将布尔运算区域从整个工件区域缩小到局部的相交区域。
步骤2:虚拟体素映射,将工件Tri-dexel模型的端点映射到空间中对应的虚拟体素中。具体包括如下步骤:
步骤2.1:建立虚拟体素模型,Tri-dexel模型实际上是一种点云模型,参照图4所示的虚拟体素概念,将Tri-dexel模型转化为类似于八叉树体素模型的表达方式,但在内存中并没有建立八叉树数据结构;
步骤2.2:Tri-dexel模型数据映射,参照图5所示,虚拟体素的边长与Tri-dexel模型建立时的线束间距相等。通过比较体素顶点的坐标值、体素12条边上对应dexel线束端点的坐标值,可以确定是否有dexel线束端点落在虚拟体素的边上,如果有,则该虚拟体素会被创建,并记录体素单元内的dexel端点信息,实现对Tri-dexel模型的规整化处理;
步骤2.3:利用MC(Marching Cube,移动立方体)算法进行三角面片重构,经过步骤2.2后,每一个虚拟体素单元均可以对应一种MC面片类型,将顶点数据转换为面片数据。
步骤3:虚拟体素信息编码,将体素单元内部的面片数据进行编码,编码结果中包含了体素在模型中的位置、体素内三角面片的连接方式、体素内的顶点信息等。不同的MC类型体素对应不同的编码规则,编码后的数据存储于VBO中,作为图形渲染管线的数据来源。通过数据编码既节省了显存占用,降低了CPU-GPU通信消耗,又能够将编码结果作为输入,实现步骤4中对体素数据的高效管理。具体包括如下步骤:
步骤3.1:globalID编码,参照图6(a)中所示的编码方式,将体素在三个方向上的网格个数xnum、ynum、znum以21位二进制数据表示,分别填入64位长整型值中,得到一个globalID,由此能够通过这个globalID定位到工件模型的每一个体素单元,每个方向上最多可以划分221个网格,能够满足几何仿真的精度要求;
Figure 306696DEST_PATH_IMAGE001
步骤3.2:subID编码,每个体素单元均对应一种MC面片类型,因此参照图6(b)中所示的编码方式,以二进制数据从低到高12位代表体素的12条边,某一位的值为1则代表三角面片包含该位对应边上的点,能够得到代表该三角面片的subID。通过globalID及subID能够定位到工件模型上的任意三角面片;
步骤3.3:weight编码,体素内部每一条边上最多存在一个顶点,令体素各边的正方向与工件坐标轴的正方向相同,参照图6(c)所示对于边AB上的点P,定义权值weight,利用权值weight即可确定每一个顶点的具体位置。计算公式为:
Figure 240017DEST_PATH_IMAGE002
特别的,由于对显存VBO中数据进行操作必须首先知道数据的存储位置,即数据在VBO中的字节偏移量大小,而对于内部面片数量相等的体素单元,编码后的数据量大小相同,为了便于计算处理,将这些体素单元数据存入同一段显存VBO中。
步骤4:体素数据管理,为了实现对VBO中数据的局部更新(删除、增加、修改),需要对体素数据管理方式进行设计,定位到数据在VBO中的存储位置,即实现数据的查找功能。由于在显存空间中难以构建复杂的数据结构,通过建立体素数据管理结构,将体素数据在显存VBO中的存储方式映射到系统内存中,能够快速定位到每一个体素单元内的面片数据在VBO中的存储位置。本步骤是进行VBO数据更新的基础步骤,具体包括:
步骤4.1:查询体素数据存储位置,通过访问位于系统内存中的数据映射链表实现对数据的查找,链表结构与显卡内存中的各段VBO一一对应。参照图7所示,将编码后的体素数据输入哈希函数,依据数据量的大小定位到对应的链表首地址;在链表中依据globalID定位到体素子节点,从中获取存储位置信息(对应VBO中所保存的第几个体素)。并对链表进行同步维护(如:删除某些子节点、添加新的子节点等),保证链表结构在仿真过程中始终是显存内VBO数据存储方式的等效映射;
步骤4.2:记录删除体素存储位置,每一段VBO均在系统内存中有一个对应的队列结构,用于存储该段VBO中被删除的体素单元位置信息。随着几何仿真的进程发展,某些体素单元内的面片会被全部删除,对于这些体素单元,在查询到其在显存VBO中的存储位置后,将位置信息存入对应的删除位置记录队列中。通过本步骤能够为后续的VBO数据增加提供帮助,在仿真时将新增的同类型体素数据保存于这些位置,最大限度避免显存空间的浪费。
特别的,步骤4.1中查询体素数据存储位置仅针对已经在显存VBO中占据存储空间的体素单元,即需要删除和修改的体素单元;对链表结构进行同步维护针对所有需更新的体素单元展开。
步骤5:VBO数据更新,利用本发明提供的对VBO中数据进行高效更新的方法,实现加工过程动态几何仿真。在几何仿真过程中,体素单元内部面片的数据更新存在删除、增加、修改三种形式:仿真过程中位于刀具模型内部的体素单元属于被切除的部分,原有的面片数据需要被彻底删除;随着刀具运动而出现在工件模型表面的体素单元,其内部面片从无到有,成为工件模型的组成部分,属于新增的面片数据;位于刀具模型进给方向上的体素单元,其内部依然存在构成工件模型的面片,但是面片位置、数量等可能发生变化,属于需要被修改的面片数据。
参照图8所示,VBO是显存中的一段连续存储空间,数据在其中依次排列。在OpenGL中,只提供了对VBO中数据进行初始化和修改的命令,在此基础上,本发明采用的数据更新命令具体包括如下步骤:
步骤5.1:体素数据删除:
参照图9(a)所示,彻底进行数据删除则需要将后续的所有数据逐一进行移位操作,而VBO在操作未完成的情况下无法用于渲染绘制,会造成几何仿真效率的极大损失。
本发明采用一种逻辑上的删除,参照图9(b)所示,利用步骤4.1中查询到的该体素在VBO中的存储位置作为参数,通过OpenGL提供的数据修改命令glBufferSubData(),将VBO中这一位置的数据以某个预设的常值进行覆盖。被删除体素所占用的存储空间仍被保留,但数据被替换为了预设的常值,在后续步骤进行渲染时会自动跳过这一位置,模型的可视化结果中不再存在被删除体素单元内的面片。
对比两种数据删除方式,本发明采用的数据删除方式只涉及到对单个体素数据的操作,其余体素数据的存储位置不发生改变,避免了大量的冗余操作,有利于几何仿真效率的提高。
步骤5.2:体素数据增加,参照图10所示,在步骤4中访问数据管理结构中的同类型体素删除队列时,存在以下两种情况:
一、如果队列不为空则执行出队操作,将队列中记录的存储位置和体素数据作为参数,通过OpenGL提供的数据修改命令将该体素的数据存储至VBO中的对应位置,这一步将删除操作中保留的存储空间进行了重复利用。
二、如果删除队列为空,证明存储该类型体素的VBO内部没有保留的空间,则将体素数据添加到VBO的末尾。
通过采用上述数据增加方式,既实现了体素单元内的面片增加,又最大限度的避免了显存空间浪费。
步骤5.3:体素数据修改,体素单元更新类型中的修改有以下两种形式:
一、体素内的面片数量不变,仅仅是面片的位置发生变化。本发明将面片数量相同的体素数据存储于同一段VBO中,对于这种形式的体素更新,只需要利用OpenGL提供的数据修改命令,以步骤3中编码后的体素数据及步骤4.1中获取到的体素存储位置为参数,将对应VBO中存储的原始数据进行局部修改即可。
二、体素内的面片数量发生了变化。对于这种形式的体素更新,体素数据的存储VBO需要改变。综合采用体素删除方法和体素添加方法,将体素数据从原VBO中删除,并将更新后的数据添加到对应的新VBO中。通过发起两次数据修改命令,快速完成了跨VBO的体素修改操作。
步骤6:可视化渲染,通过手动定义渲染管线,将VBO中数据进行解码并绘制到屏幕上:
本步骤是几何仿真单次循环中的最后一步,用于将VBO中存储的数据渲染绘制到屏幕上。通过对顶点着色器、几何着色器等文件手动编写,坐标变换、图元装配等绘制流程,完成几何仿真结果的可视化。循环进行步骤1至步骤6,即可实现切削加工过程的几何仿真。
最后应说明的是:前述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。

Claims (7)

1.一种基于VBO的切削加工过程高效几何仿真方法,其特征在于,包括以下步骤:
步骤1:刀具/工件局部布尔运算,建立刀具与工件的包围盒,确定局部相交位置,进行快速布尔运算;
步骤2:虚拟体素映射,将工件Tri-dexel模型的端点映射到空间中对应的虚拟体素;
步骤3:虚拟体素信息编码,将体素单元内部的面片数据进行编码,编码后的数据以体素为单位存储于显存VBO;
步骤4:体素数据管理,将体素数据在显存VBO中的存储方式映射到系统内存中,快速定位到每一个体素单元在VBO中的存储位置;
步骤5:VBO数据更新,对保存于显存VBO中的模型面片数据进行局部高效更新;
步骤6:可视化渲染,手动定义渲染管线,将显存VBO中的模型面片数据进行解码并绘制到屏幕上。
2.根据权利要求1所述的方法,其特征在于,所述步骤1,包括以下步骤:
步骤1.1:建立刀具与工件的模型包围盒;
步骤1.2:将模型包围盒分别投影到三个相互正交的平面上,分别计算在三个平面上刀具/工件包围盒的相交范围。
3.根据权利要求1所述的方法,其特征在于,所述步骤2,包括以下步骤:
步骤2.1:建立虚拟体素模型;
步骤2.2:Tri-dexel模型数据映射,虚拟体素的边长与Tri-dexel模型建立时的线束间距相等;通过比较体素顶点的坐标值、体素12条边上对应dexel线束端点的坐标值,确定是否有dexel线束端点落在虚拟体素的边上,如果有,则创建所述虚拟体素,并记录体素单元内的dexel端点信息;
步骤2.3:利用MC算法进行三角面片重构,将顶点数据转换为面片数据。
4.根据权利要求1所述的方法,其特征在于,所述步骤3,编码方式具体包括以下步骤:
步骤3.1:globalID编码,将体素在三个方向上的网格个数xnum、ynum、znum以21位二进制数据表示,分别填入64位长整型值中,得到一个globalID:
Figure 616094DEST_PATH_IMAGE001
步骤3.2:subID编码,每个体素单元均对应一种MC面片类型,以二进制数据从低到高12位代表体素的12条边,某一位的值为1则代表三角面片包含该位对应边上的点,得到代表所述三角面片的subID;
步骤3.3:weight编码,体素内部每一条边上最多存在一个顶点,令体素各边的正方向与工件坐标轴的正方向相同,对于边AB上的点P,定义权值weight,利用权值weight即可确定每一个顶点的具体位置,计算公式为:
Figure 214566DEST_PATH_IMAGE002
5.根据权利要求1所述的方法,其特征在于,所述步骤3,对于内部面片数量相等的体素单元,编码后的数据量大小相同,将所述体素单元数据存入同一段显存VBO中。
6.根据权利要求1所述的方法,其特征在于,所述步骤4,包括以下步骤:
步骤4.1:查询体素数据存储位置,利用数据映射链表,以体素globalID为索引,查找到体素在VBO中的存储位置信息;
步骤4.2:记录删除体素存储位置,将VBO中需删除体素单元的存储位置信息记录至该段VBO对应的删除位置记录队列中。
7.根据权利要求1所述的方法,其特征在于,所述步骤5,包括以下步骤:
步骤5.1:体素数据删除,将VBO中需删除的数据修改为预设的常值,在所述步骤6的可视化渲染时自动跳过该位置;
步骤5.2:体素数据增加,在所述步骤4中访问数据管理结构中的同类型体素删除队列时,如果队列不为空则将该体素的数据存储至队头所记录的位置,并执行出队操作;如果队列为空,则将体素数据添加到VBO的末尾;
步骤5.3:体素数据修改,若体素内的面片数量不变,仅是面片形状发生变化,则直接将VBO中对应位置的数据进行修改;若体素内的面片数量发生变化,将体素数据从原VBO中删除,并将更新后的数据添加到对应的新VBO中。
CN202110899400.0A 2021-08-06 2021-08-06 一种基于vbo的切削加工过程高效几何仿真方法 Active CN113343546B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110899400.0A CN113343546B (zh) 2021-08-06 2021-08-06 一种基于vbo的切削加工过程高效几何仿真方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110899400.0A CN113343546B (zh) 2021-08-06 2021-08-06 一种基于vbo的切削加工过程高效几何仿真方法

Publications (2)

Publication Number Publication Date
CN113343546A true CN113343546A (zh) 2021-09-03
CN113343546B CN113343546B (zh) 2021-11-16

Family

ID=77480895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110899400.0A Active CN113343546B (zh) 2021-08-06 2021-08-06 一种基于vbo的切削加工过程高效几何仿真方法

Country Status (1)

Country Link
CN (1) CN113343546B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114169108A (zh) * 2021-12-29 2022-03-11 广东工业大学 一种基于数字孪生的减材加工实时仿真方法
CN115047825A (zh) * 2022-03-21 2022-09-13 中国海洋大学 一种数控加工铣削实时显示的方法
CN115618529A (zh) * 2022-11-18 2023-01-17 北京航空航天大学 一种基于刀轨前瞻的动态体素划分方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102528555A (zh) * 2010-12-15 2012-07-04 上海工程技术大学 复杂曲面无干涉刀路的几何与力学集成优化信息处理方法
US20120221300A1 (en) * 2009-10-06 2012-08-30 Pécsi Tudományegyetem Method, computer system and computer program product for machining simulation and for visually presenting such simulation
CN103135446A (zh) * 2011-12-05 2013-06-05 中国科学院沈阳计算技术研究所有限公司 一种多轴数控机床刀具运动轨迹验证装置
CN107037738A (zh) * 2016-11-16 2017-08-11 清华大学 数控加工几何仿真中基于stl模型的材料去除算法
CN110955934A (zh) * 2018-09-26 2020-04-03 上海交通大学 面向加工实时监控的切削仿真实现方法
CN112613150A (zh) * 2020-12-31 2021-04-06 华中科技大学 一种切削几何体的图像表达方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120221300A1 (en) * 2009-10-06 2012-08-30 Pécsi Tudományegyetem Method, computer system and computer program product for machining simulation and for visually presenting such simulation
CN102528555A (zh) * 2010-12-15 2012-07-04 上海工程技术大学 复杂曲面无干涉刀路的几何与力学集成优化信息处理方法
CN103135446A (zh) * 2011-12-05 2013-06-05 中国科学院沈阳计算技术研究所有限公司 一种多轴数控机床刀具运动轨迹验证装置
CN107037738A (zh) * 2016-11-16 2017-08-11 清华大学 数控加工几何仿真中基于stl模型的材料去除算法
CN110955934A (zh) * 2018-09-26 2020-04-03 上海交通大学 面向加工实时监控的切削仿真实现方法
CN112613150A (zh) * 2020-12-31 2021-04-06 华中科技大学 一种切削几何体的图像表达方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114169108A (zh) * 2021-12-29 2022-03-11 广东工业大学 一种基于数字孪生的减材加工实时仿真方法
CN114169108B (zh) * 2021-12-29 2022-07-08 广东工业大学 一种基于数字孪生的减材加工实时仿真方法
CN115047825A (zh) * 2022-03-21 2022-09-13 中国海洋大学 一种数控加工铣削实时显示的方法
CN115618529A (zh) * 2022-11-18 2023-01-17 北京航空航天大学 一种基于刀轨前瞻的动态体素划分方法

Also Published As

Publication number Publication date
CN113343546B (zh) 2021-11-16

Similar Documents

Publication Publication Date Title
CN113343546B (zh) 一种基于vbo的切削加工过程高效几何仿真方法
US8725466B2 (en) System and method for hybrid solid and surface modeling for computer-aided design environments
CN103136790B (zh) 从多个3d曲线创建表面
CN104217460B (zh) 3d建模对象的压缩与解压缩
US7561156B2 (en) Adaptive quadtree-based scalable surface rendering
KR100503789B1 (ko) 렌더링시스템, 렌더링방법 및 그 기록매체
JP4381743B2 (ja) 境界表現データからボリュームデータを生成する方法及びそのプログラム
CN110033519B (zh) 基于隐式函数的三维建模方法、装置、系统及存储介质
CN102682103A (zh) 一种面向海量激光雷达点云模型的三维空间索引方法
CN110956699B (zh) 一种三角形网格模型gpu并行切片方法
US20010043209A1 (en) Three-dimensional model generation system, three-dimensional model generation method, and recording medium storing a three-dimensional model generation program
CN115047825A (zh) 一种数控加工铣削实时显示的方法
CN113962001A (zh) 一种工程bim模型轻量化方法
CN114201793A (zh) 基于Sketchup的BIM模型轻量化方法及系统
KR102237040B1 (ko) 3d 형상 가시화를 위한 경량파일을 구성하는 방법 및 컴퓨터 프로그램
CN116912457A (zh) 一种基于外存八叉树stl模型的拓扑重建方法及系统
CN115587451A (zh) 一种基于体素划分的网页端三角面片模型动态更新方法
Li et al. Semiautomatic simplification
CN113888701A (zh) 将曲面3D模型转化为Obj格式的网格3D模型的方法及系统
Kholodilov et al. Analysis of the Technology of Transfering a Three-Dimensional Model from Cad Format to the Control Code For 3D Printing
CN117541457B (zh) 一种曲面细分顶点的缓存方法、电子设备及存储介质
CN116502303B (zh) 一种基于场景层级实例信息增强的bim模型可视化方法
KR101287513B1 (ko) 3차원 렌더링을 위한 격자 기반의 텍스처 매핑장치 및 방법
Zongjun et al. Simplification and Compression Construction of 3D Model for Substation
JP4133727B2 (ja) 図形データ変換方法及びプログラム、並びにデータ構造

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
GR01 Patent grant
GR01 Patent grant