《渲染将在计算机显示器上显示的计算机模型的有效方法.pdf》由会员分享,可在线阅读,更多相关《渲染将在计算机显示器上显示的计算机模型的有效方法.pdf(14页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103593492 A (43)申请公布日 2014.02.19 CN 103593492 A (21)申请号 201310242757.7 (22)申请日 2013.06.18 13/585,080 2012.08.14 US G06F 17/50(2006.01) G06T 15/00(2011.01) (71)申请人 利弗莫尔软件技术公司 地址 美国加利福尼亚州利弗莫尔市 (72)发明人 菲利普何 (74)专利代理机构 深圳新创友知识产权代理有 限公司 44223 代理人 江耀纯 (54) 发明名称 渲染将在计算机显示器上显示的计算机模型 的有效方法 (57) 。
2、摘要 本申请公开了一种用于渲染将在计算机显示 器上显示的计算机模型的有效方法。该计算机模 型包括多个有限元, 这多个有限元组织成多个群, 每个群包含相同类型的有限元。为了实现有效渲 染计算机模型, 使用基于计算机系统的可利用资 源和计算机模型的特征的一套标准, 来确定用于 进一步分割这些群的第一和第二数量。包含的元 素数量大于第一数量的群都被分割为多个子群。 每个子群的元素的数量被配置成不大于第二数 量。第一和第二数量都是在特定情况下 “可调整 的” , 这取决于许多因素, 包括但不限于 : 计算机处 理器的能力、 可利用的随机存取存储器、 图形协处 理器和 / 或关联存储器的能力、 以及通信。
3、带宽。 (30)优先权数据 (51)Int.Cl. 权利要求书 2 页 说明书 5 页 附图 6 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书5页 附图6页 (10)申请公布号 CN 103593492 A CN 103593492 A 1/2 页 2 1. 一种有效渲染将在显示器上显示的计算机模型的方法, 其特征在于, 包括 : 在计算机系统中接收计算机模型, 所述计算机系统上安装有用于图形显示所述该计算 机模型的应用模块, 所述计算机模型包含组织成一个或多个群的多个元素 ; 使用基于计算机系统的可利用资源和计算机模型的特征的一套标准, 确定用于进一。
4、步 分割所述计算机模型的第一和第二数量 ; 根据一组分割规则, 将包含的元素数量大于所述第一数量的每个群分割为多个子群, 每个子群的元素的数量小于第二数量 ; 动态地检测由期望查看所述计算机模型的用户定义的视窗 ; 指定与所述视窗重叠的一个或多个群或 / 和子群作为一组渲染单元 ; 以及 在计算机系统中渲染所述一组渲染单元, 使得与所述视窗相关的部分可以有效地显示 在可操作地连接于计算机系统的显示器上。 2. 根据权利要求 1 所述的方法, 其特征在于, 所述计算机模型包括有限元分析网格模 型。 3. 根据权利要求 1 所述的方法, 其特征在于, 所述计算机模型表示产品。 4. 根据权利要求 。
5、1 所述的方法, 其特征在于, 所述计算机模型表示产品制造工艺中的 一个或多个结构。 5. 根据权利要求 1 所述的方法, 其特征在于, 所述计算机系统的资源包括计算机存储 器、 计算机处理器、 图形协处理器、 通信带宽中的一种或多种。 6. 根据权利要求 1 所述的方法, 其特征在于, 所述计算机模型的特征包括所述计算机 模型表示的元素的类型、 元素的数量、 物理尺寸中的一种或多种。 7. 根据权利要求 1 所述的方法, 其特征在于, 所述一组分割规则包括在所述每个群的 最大几何尺寸上划分每个群。 8.根据权利要求1所述的方法, 其特征在于, 所述指定与视窗重叠的一个或多个群或/ 和子群作为。
6、一组渲染单元进一步包括 : 将所述视窗的几何边界与所述一个或多个群和 / 或 子群的各几何边界进行比较。 9. 根据权利要求 1 所述的方法, 其特征在于, 所述每个群包含表示产品的零件或组件 的相同类型的元素。 10. 根据权利要求 1 所述的方法, 其特征在于, 所述第一数量大于所述第二数量, 且所 述第一和第二数量都是大于 1 的整数。 11. 一种有效渲染将在显示器上显示的计算机模型的系统, 其特征在于, 包括 : 输入 / 输出接口 ; 存储器, 存储用于图形显示计算机模型的应用模块的计算机可读代码 ; 与所述存储器相连的至少一个处理器, 所述至少一个处理器执行所述存储器中的计算 机。
7、可读代码, 促使所述应用模块执行以下操作 : 接收计算机模型, 所述计算机模型包括组织成一个或多个群的多个元素 ; 使用基于所述系统的可利用资源和所述计算机模型的特征的一套标准, 确定用于进一 步分割所述计算机模型的第一和第二数量 ; 根据一组分割规则, 将包含的元素数量大于所述第一数量的每个群分割为多个子群, 每个子群的元素的数量小于第二数量 ; 权 利 要 求 书 CN 103593492 A 2 2/2 页 3 动态地检测由期望查看所述计算机模型的用户定义的视窗 ; 指定与所述视窗重叠的一个或多个群或 / 和子群作为一组渲染单元 ; 以及 在所述系统中渲染所述一组渲染单元, 使得计算机模。
8、型中与所述视窗相关的部分可以 有效地显示在可操作地连接于所述系统的显示器上。 12. 根据权利要求 11 所述的系统, 其特征在于, 所述一组分割规则包括在所述每个群 的最大几何尺寸上划分每个群。 13. 根据权利要求 11 所述的系统, 其特征在于, 所述指定与视窗重叠的一个或多个群 或 / 和子群作为一组渲染单元进一步包括 : 将所述视窗的几何边界与所述一个或多个群和 / 或子群的各几何边界进行比较。 权 利 要 求 书 CN 103593492 A 3 1/5 页 4 渲染将在计算机显示器上显示的计算机模型的有效方法 技术领域 0001 本发明总的涉及计算机辅助工程, 更具体地说, 涉及。
9、一种用于有效渲染将在计算 机显示器上显示的、 非常大的计算机模型的方法和系统。 背景技术 0002 已经采用计算机辅助工程 (CAE) 来设计工程产品, 例如汽车及其部件。CAE 不仅用 于设计成品, 还用于产品的制造程序 (例如, 零件的金属板材成形) 。 0003 CAE 通过采用计算机模型 (例如, 有限元分析网格模型) 来执行, 该计算机模型包括 许多个有限元。生成如此大的模型需要自动化程序, 包括被称为预处理程序的交互式可视 工具。此外, 检查计算机仿真结果也需要有被称为后处理程序的交互式可视软件。随着计 算机技术的进步, 计算机模型已经变得非常大 (例如, 几百万个元素) 。因此,。
10、 在计算机显示 器上渲染和显示这样的大计算机模型可能会在实时方面具有相当长的延迟。 这些缺点会阻 碍工程师和设计师的生产力, 从而延迟产品研发。 此外, 显示这样的计算机模型可能需要额 外的计算机资源, 例如额外的随机存取存储器或者更强大的图形处理器, 这将会间接增加 产品成本。 0004 因此, 期望有一种用于渲染将在计算机显示器上显示的非常大的计算机模型的有 效方法。 发明内容 0005 本发明涉及一种用于渲染将在计算机显示器上显示的非常大的计算机模型 (例 如, 有限元分析网格模型) 的有效方法。 0006 根据本发明的一方面, 在计算机系统中定义和接收表示即将被显示的目标物体的 计算机。
11、模型 (例如, 有限元分析模型) 。该计算机模型包括多个有限元, 这多个有限元组织成 一个或多个群, 每个群包含相同类型的有限元 (例如, 实体、 壳单元) 。目标物体包括但不限 于产品、 产品的零件或组件、 用于制造零件或产品的组件 (例如, 零件的金属板材成形) 。接 下来, 为了实现有效渲染计算机模型, 使用基于计算机系统的可利用资源和计算机模型的 特征的一套标准, 来确定一对临界值数量 (也就是, 第一和第二数量) , 用于进一步分割这些 群。 0007 接下来, 包含的元素数量大于第一数量的任何群都被分割为两个或多个子群。每 个子群的元素的数量被配置成不大于第二数量。第一和第二数量都。
12、是在特定情况下 “可 调整的” , 这取决于许多因素, 包括但不限于 : 计算机处理器的能力、 可利用的随机存取存储 器、 图形协处理器和 / 或关联存储器的能力、 以及通信带宽。第一数量大于第二数量。 0008 接下来, 根据用户动态定义 (例如, 交互地操作计算机模型) 的视窗, 只有与视窗相 关的 (例如, 每个单元的几何边界与视窗的各边界重叠) 那些群和/或子群 (全体被称为渲染 单元) 被选择用于渲染。由于每个被选择的渲染单元具有如此特定的大小, 便于计算机系统 的特定资源进行有效处理, 因此保证了显示计算机模型的效率。 说 明 书 CN 103593492 A 4 2/5 页 5 。
13、0009 根据另一方面, 基于一程序将群划分为多个子群, 所述程序取决于群所表示的结 构或者零件的几何尺寸。每次划分或者分割从最长的尺寸开始。 0010 通过以下结合附图对具体实施方式的详细描述, 本发明的其他目的、 特征和优点 将会变得显而易见。 附图说明 0011 参照以下的描述、 后附的权利要求和附图, 将会更好地理解本发明的这些和其它 特征、 方面和优点, 其中 : 0012 图 1 是根据本发明的实施例的有效渲染计算机模型的示范性方法的流程图 ; 0013 图 2A 是第一示范性计算机模型的示意图 ; 0014 图 2B 是第二示范性计算机模型的示意图 ; 0015 图 3 是根据本。
14、发明的实施例的计算机模型的示范群和示范视窗的示意图 ; 0016 图 4 是根据本发明的一个实施例的第一示范分割方案的示意图 ; 0017 图 5 是根据本发明的一个实施例的、 要避免的第二示范分割方案的示意图 ; 0018 图 6 是根据本发明的另一实施例的示范群的几何尺寸的示意图 ; 0019 图 7 是示范性的计算机的主要组件的功能框图, 本发明的实施例可在其中实施。 具体实施方式 0020 本发明涉及一种用于渲染将在计算机显示器上显示的非常大的计算机模型 (例 如, 有限元分析网格模型) 的有效方法。在一个实施例中, 图 1 是有效渲染将在显示器上显 示的非常大的计算机模型的示范性方法。
15、 100 的流程图。该方法 100 在软件中执行, 优选地 参照其它附图理解, 例如, 图 2-7。 0021 方法 100 开始于步骤 102, 接收将在计算机系统 (例如, 图 7 的计算机 700) 的计算 机显示器上显示的计算机模型, 该计算机系统上安装有用于图形显示计算机模型的应用模 块。 计算机模型表示目标物体, 该目标物体可以是产品或者结构, 或者是用于制造产品的一 群结构, 例如, 图 2A 所示的有限元分析网格模型 200, 或者是图 2B 的金属板材冲压制造工 艺。在第二个例子中, 计算机模型表示冲头 204、 金属板材毛胚 206 和模具 208。通过将冲 头 204 挤。
16、压到模具 208 内, 使金属板材毛胚 206 形成零件。计算机模型包含组织成为多个 群的多个元素 (例如, 有限元、 多边形等) 。每个群包含表示产品或者结构的零件或组件的多 个相同类型的元素 (例如, 实体或者壳体元素) 。在一个实施例中, 采用独一无二的零件 ID 为每个群分类。在图 2B 所示的第二例子中, 金属板材毛胚 206 可以表示为二维壳单元的一 个巨大群 (例如, 几百万个元素) 。 0022 期望查看计算机模型的用户定义了视窗 (例如, 图 3 的视窗 320) , 该视窗在用于显 示的计算机模型中设置了边界 (也就是, 几何边界) 。这通常动态执行, 例如, 通过计算机系。
17、 统中的图形显示应用模块交互操作计算机模型。在一个实施例中, 几何边界包括三维边界 框。图 6 示出了示范群 610(椭圆体) 的边界框 600(虚线框) 。为了显示计算机模型, 计算 机系统必须渲染重叠在视窗上的所有群。 对于具有重叠在视窗上的巨大元素群的计算机模 型, 整个群必须被渲染, 即使视窗只覆盖了该群的一小部分。在金属板材成形模拟中, 通常 使用非常大的元素群 (大于一百万个元素) 来表示金属板材毛胚 206。因此, 当计算机资源 说 明 书 CN 103593492 A 5 3/5 页 6 不够充足时, 例如计算机具有较小能力的处理器或者少量的存储器时, 可能发生延迟。 即使 在。
18、较强大的计算机系统中, 可能同时执行另一个任务, 从而导致某些计算机资源不可用。 0023 根据本发明的一个实施例, 具有大量元素的群被进一步划分或者分割为子群。在 步骤 104, 使用基于计算机系统的可利用资源和计算机模型的特征的一套标准, 来确定一对 临界值数量 (也就是, 第一和第二数量) , 用于进一步分割计算机模型。可用资源包括但不限 于存储器、 处理器、 图形协处理器、 通信带宽等。 计算机模型的特征包括群内的元素的数量、 元素的类型等。第一和第二数量可以静态地预设、 或者根据计算机系统的工作负载动态地 改变。 视窗定义了用于查看的计算机模型的子集的边界。 图3是视窗320和计算机。
19、模型310 之间的示范关系的示意图。在这个例子中, 视窗 320 位于群 315 中。图 3 中为了简洁起见, 没有示出元素, 示出的计算机模型具有二维的矩形形状, 群 315 具有二维的椭圆形状。实际 上, 模型、 群、 或者多个群可以是任何形状的, 也可以是三维的。 本发明不限于模型、 群、 或者 多个群的形状。注意, 视窗 320 可以被用户动态改变, 例如, 通过交互地操作计算机模型来 改变。 0024 接下来, 在步骤 106, 元素的数量大于第一数量的群都被划分为两个或者多个子 群。每个子群被配置成具有数量少于第二数量的元素。根据群的几何边界执行群的子分割 或者子划分。图 6 示出。
20、了示范性的群 610 的几何尺寸 602-606。分割从切割群或者子群的 最长几何尺寸 602 开始。每个子群和不再分割的群被称为用于渲染目的的渲染单元。 0025 接下来, 在步骤 108, 动态检测视窗 (例如, 图 4 的视窗 450 或者图 5 的视窗 550) 。 这可以通过安装在计算机系统上的应用模块 (图形显示软件) 采用多种已知的方法来完成。 接下来, 在步骤110, 重叠在视窗上的群和/或子群被指定为一组渲染单元。 为了确定重叠, 将视窗的几何边界 (例如, 图 6 的边界框 600) 与每个群 / 子群的各几何边界进行比较。 0026 在步骤 112, 计算机系统仅需要渲染。
21、渲染单元, 因此减少了用于通过视窗显示计算 机模型所需要的元素的数量。理想的情况下, 只需要一个渲染单元用于特定的视窗 550, 如 图 5 所示。 0027 图 4 和图 5 中示出了这样的子划分方案的第一和第二示例。为了简洁说明, 两个 例子都以二维形式示出。本发明可以被应用到三维计算机模型中的三维群。 0028 在第一例子中, 群410被子划分或者子分割为八个子群431-438。 划分方案首先开 始划分最长的尺寸。通过视窗 450 显示计算机模型要求计算机系统渲染子群 432、 433、 436 和 437(也就是, 与视窗相关的子群或者显示单元) 。 0029 在图 5 所示的第二例子。
22、中, 群 510 被划分为八个子群 521-529。在这个方案中, 当 通过视窗 550 显示该计算机模型时, 只有一个子群 525 需要被渲染。 0030 这两个子划分和分割方案减小了大群的尺寸, 从而实现了本发明的目的。 0031 根据一方面, 本发明涉及一个或多个能够执行在此描述的功能的计算机系统。计 算机系统 700 的例子在图 7 中示出。计算机系统 700 包括一个或多个处理器, 例如处理器 704。处理器 704 连接到计算机系统内部通信总线 702。关于该示范性的计算机系统, 有各 种软件实现的描述。在读完这一描述后, 相关技术领域的人员将会明白如何使用其它计算 机系统和 / 。
23、或计算机架构来实施本发明。 0032 计算机系统 700 还包括主存储器 708, 优选随机存取存储器 (RAM) , 还可包括辅助 存储器 710。辅助存储器 710 包括例如一个或多个硬盘驱动器 712 和 / 或一个或多个可移 说 明 书 CN 103593492 A 6 4/5 页 7 除存储驱动器714, 它们代表软盘驱动器、 磁带驱动器、 光盘驱动器等。 可移除的存储驱动器 714 用已知的方式从可移除存储单元 718 中读取和 / 或向可移除存储单元 718 中写入。可 移除存储单元 718 代表可以由可移除存储驱动器 714 读取和写入的软盘、 磁带、 光盘等。可 以理解, 可。
24、移除存储单元 718 包括其上存储有计算机软件和 / 或数据的计算机可读媒介。 0033 在可选实施例中, 辅助存储器 710 可包括其它类似的机制, 允许计算机程序或者 其它指令被装载到计算机系统 700。这样的机制包括例如可移动存储单元 722 和接口 720。 这样的例子可包括程序盒式存储器和盒式存储器接口 (例如, 视频游戏设备中的那些) 、 可 移动存储芯片 (例如可擦除的可编程只读存储器 (EPROM) ) 、 通用串行总线 (USB) 闪存、 或者 PROM) 以及相关的插槽、 以及其它可移动存储单元 722 和允许软件和数据从可移动存储单 元 722 传递到计算机系统 700 。
25、的接口 720。通常, 计算机系统 700 由操作系统 (OS) 软件控 制和管理, 操作系统执行例如进程调度、 存储器管理、 网络连接和 I/O 服务。 0034 可能还设有连接到总线 702 的通信接口 724。通信接口 724 允许软件和数据在计 算机系统 700 和外部设备之间传递。通信接口 724 的例子包括调制解调器、 网络接口 (例如 以太网卡) 、 通信端口、 个人计算机存储卡国际协会 (PCMCIA) 插槽和卡等等。计算机 700 基 于一组特定的规则 (也就是, 协议) 通过数据网络与其它计算设备通信。通用协议的其中一 种是在互联网中通用的 TCP/IP (传输控制协议 /。
26、 互联网协议) 。通常, 通信接口 724 将数据 文件组合处理成较小的数据包以通过数据网络传输, 或将接收到的数据包重新组合成原始 的数据文件。此外, 通信接口 724 处理每个数据包的地址部分以使其到达正确的目的地, 或 者中途截取发往计算机 700 的数据包。在这份文件中, 术语 “计算机程序媒介” 和 “计算机 可用媒介” 都用来指代媒介, 例如可移动存储驱动器 714 和 / 或设置在硬盘驱动器 712 中的 硬盘。这些计算机程序产品是用于将软件提供给计算机系统 700 的手段。本发明涉及这样 的计算机程序产品。 0035 计算机系统 700 还包括输入 / 输出 (I/O) 接口 。
27、730, 它使得计算机系统 700 能够接 入显示器、 键盘、 鼠标、 打印机、 扫描器、 绘图机、 以及类似设备。 0036 计算机程序 (也被称为计算机控制逻辑) 作为应用模块 706 存储在主存储器 708 和 / 或辅助存储器 710 中。也可通过通信接口 724 接收计算机程序。这样的计算机程序被执 行时, 使得计算机系统 700 执行如在此所讨论的本发明的特征。特别地, 当执行该计算机程 序时, 使得处理器 704 执行本发明的特征。因此, 这样的计算机程序代表计算机系统 700 的 控制器。 0037 在本发明采用软件实现的实施例中, 该软件可存储在计算机程序产品中, 并可使 用。
28、可移动存储驱动器714、 硬盘驱动器712、 或者通信接口724加载到计算机系统700中。 应 用模块 706 被处理器 704 执行时, 使得处理器 704 执行如在此所述的本发明的功能。 0038 主存储器708可被加载有一个或多个应用模块706, 所述应用模块706可被一个或 多个处理器 704 执行以实现期望的任务, 所述处理器可具有或不具有通过 I/O 接口 730 输 入的用户输入。在运行中, 当至少一个处理器 704 执行一个应用模块 706 时, 结果被计算并 存储在辅助存储器 710(也就是, 硬盘驱动器 712) 中。有限元分析的结果和 / 或状态 (例如 流体 - 结构交。
29、互结果) 以与计算机连接的显示器上的文字或者图形表示的方式通过 I/O 接 口报告给用户。 0039 虽然参照特定的实施例对本发明进行了描述, 但是这些实施例仅仅是解释性的, 说 明 书 CN 103593492 A 7 5/5 页 8 并不用于限制本发明。本技术领域的人员可得到暗示, 对具体公开的示范性实施例做出各 种修改和改变。 例如, 虽然已经将二维椭圆形作为计算机模型中的普通群描述, 但是元素群 可以具有许多不同的几何形状和尺寸。此外, 虽然在图 6 中已经将椭圆形作为示范群的形 状进行图示和描述, 但是群可以有任何几何形状, 来实现本发明的相同目的, 例如, 包含多 个元素的不规则形。
30、状。 总之, 本发明的范围不限于在此公开的特定示范性实施例, 对本技术 领域人员来说暗含的所有修改都将被包括在本申请的精神和范围以及后附权利要求的范 围内。 说 明 书 CN 103593492 A 8 1/6 页 9 图 1 说 明 书 附 图 CN 103593492 A 9 2/6 页 10 图 2A 说 明 书 附 图 CN 103593492 A 10 3/6 页 11 图 2B 说 明 书 附 图 CN 103593492 A 11 4/6 页 12 图 3 图 4 说 明 书 附 图 CN 103593492 A 12 5/6 页 13 图 5 图 6 说 明 书 附 图 CN 103593492 A 13 6/6 页 14 图 7 说 明 书 附 图 CN 103593492 A 14 。