没有合适的资源?快使用搜索试试~ 我知道了~
首页精确高效的线性布尔运算:超越CGAL的新突破
本文档探讨了"Fast, Exact, Linear Booleans",这是一项针对线性3D多面体的布尔运算系统的创新。作者们在Eurographics Symposium on Geometry Processing 2009年发表的研究中提出了一种精确且高效的布尔运算方法。这个新系统的核心特点是精确性,即所有的内部数值判断都是基于精确的几何计算得出,确保了运算结果的准确性。 相比于当前标准的鲁棒布尔运算实践,如CGAL的Nef Polyhedra系统,该BSP树基础架构显著提高了性能。在执行迭代计算时,新系统的速度比Nef Polyhedra快16到28倍。尽管如此,它的运行速度仍然接近于非鲁棒建模工具Maya,这意味着在保证精度的同时,它在实际应用中的效率得到了提升。 在技术实现上,这个系统采用了精简的几何子程序,仅包含四个关键的布尔谓词、一个凸多边形构造函数以及一个凸多边形分割例程。这样设计的优势在于,通过BSP树算法的应用,系统能够直接处理所有可能的几何退化情况,如曲面变平或线段变成点,避免了繁琐的特殊情况处理,从而简化了整体算法的复杂度。 该研究的类别和主题根据ACM Computing Classification System分类属于计算机图形学领域,具体在I.3.5子类目下,可能涉及三维几何处理、布尔运算在图形渲染中的应用以及实时建模等方面。这一成果对于提高3D建模软件的精确性和性能具有重要意义,特别是在那些对布尔运算性能有严格要求的场景,如CAD、游戏开发和计算机辅助设计中。
资源详情
资源推荐
Eurographics Symposium on Geometry Processing 2009
Marc Alexa and Michael Kazhdan
(Guest Editors)
Volume 28 (2009), Number 5
Fast, Exact, Linear Booleans
Gilbert Bernstein
1
and Don Fussell
1
1
University of Texas at Austin, United States
Abstract
We present a new system for robustly performing Boolean operations on linear, 3D polyhedra. Our system is exact,
meaning that all internal numeric predicates are exactly decided in the sense of exact geometric computation. Our
BSP-tree based system is 16-28× faster at performing iterative computations than CGAL’s Nef Polyhedra based
system, the current best practice in robust Boolean operations, while being only twice as slow as the non-robust
modeler Maya. Meanwhile, we achieve a much smaller substrate of geometric subroutines than previous work,
comprised of only 4 predicates, a convex polygon constructor, and a convex polygon splitting routine. The use of
a BSP-tree based Boolean algorithm atop this substrate allows us to explicitly handle all geometric degeneracies
without treating a large number of cases.
Categories and Subject Descriptors (according to ACM CCS): I.3.5 [Computer Graphics]: Computing
Methodologies—Computational Geometry and Object Modeling;
1. Introduction
Despite a long history of robustness issues, Boolean set op-
erations (aka. constructive solid geometry or CSG for short)
remain a popular choice in most 3d modeling systems avail-
able. The operation conforms nicely to architectural concep-
tions of positive and negative space in building massing, the
machining of mechanical parts in CAD/CAM, and general
purpose “sculpting” operations of adding and removing vir-
tual stuff from a shape, to mention a few applications. We
built the system described here to address such sculpting ap-
plications, for which we found existing Boolean operations
lacking in speed and robustness, particularly when perform-
ing iterated operations, such as repeated gouging of an ob-
ject with a tool. Sculpting is a particularly challenging appli-
cation, since even moderate success requires fast(real-time)
and completely robust(zero failure) solutions in order to be
usable. We demonstrate that Boolean operations on polyhe-
dra can be made fast and robust enough to be a viable com-
ponent of such applications, contrary to the expectations of
many in the computer graphics community.
One of the first and biggest motivations for research into
robust geometry was the not uncommon experience of see-
ing a system crash in response to attempting to perform
Boolean operations. However, despite 20 years of research
on the problem, state of the art robust Boolean operations
[HK05] may run up to 20 times slower than non-robust op-
erations. In our experiments(§4), these performance char-
acterizations are actually optimistic. We see cases where
the state of the art (CGAL) takes more than 50 times as
long as non-robust Booleans. When we spoke to practition-
ers who implement Boolean operations in entertainment and
architectural design modelers, none were aware of any re-
search into geometric robustness. They believed that there
are no solutions to their robustness problems short of using
Matlab/Mathematica-style big number computation, which
they deem prohibitively expensive. Given that the aforemen-
tioned Hachenberger et al. paper [HK05] constitutes the only
experiment with more than a single test in the last 20 years,
it is easy to see how this impression persists.
Contribution We demonstrate a system capable of comput-
ing completely robust (i.e. exact §2.1) linear Boolean opera-
tions only twice as slowly as the non-robust (i.e. fragile §2.1)
modeler Maya, providing the first empirical evidence that
geometric robustness techniques are actually practical for
computing Boolean operations. This constitutes the second
and largest comparative test between non-robust commer-
cial Booleans and robust Boolean systems ever conducted
and published as far as we are aware. We accomplish this
using a novel synthesis(§3) of techniques mostly 15 − 20
years old(§2). In addition to a number of small but important
changes to these techniques, we present a new plane-based
convex polygon splitting algorithm(§3.2).
c
2009 The Author(s)
Journal compilation
c
2009 The Eurographics Association and Blackwell Publishing Ltd.
Published by Blackwell Publishing, 9600 Garsington Road, Oxford OX4 2DQ, UK and
350 Main Street, Malden, MA 02148, USA.
下载后可阅读完整内容,剩余9页未读,立即下载
你好,Albert
- 粉丝: 5978
- 资源: 26
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++多态实现机制详解:虚函数与早期绑定
- Java多线程与异常处理详解
- 校园导游系统:无向图实现最短路径探索
- SQL2005彻底删除指南:避免重装失败
- GTD时间管理法:提升效率与组织生活的关键
- Python进制转换全攻略:从10进制到16进制
- 商丘物流业区位优势探究:发展战略与机遇
- C语言实训:简单计算器程序设计
- Oracle SQL命令大全:用户管理、权限操作与查询
- Struts2配置详解与示例
- C#编程规范与最佳实践
- C语言面试常见问题解析
- 超声波测距技术详解:电路与程序设计
- 反激开关电源设计:UC3844与TL431优化稳压
- Cisco路由器配置全攻略
- SQLServer 2005 CTE递归教程:创建员工层级结构
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功