• Login
    View Item 
    •   DSpace@RPI Home
    • Rensselaer Libraries
    • RPI Theses Open Access
    • View Item
    •   DSpace@RPI Home
    • Rensselaer Libraries
    • RPI Theses Open Access
    • View Item
    JavaScript is disabled for your browser. Some features of this site may not work without it.

    Exact and parallel intersection of 3D triangular meshes

    Author
    Viana Gomes de Magalhães, Salles
    Thumbnail
    View/Open
    178778_VianaGomesdeMagalhxE3es_rpi_0185E_11208.pdf (18.27Mb)
    Other Contributors
    Franklin, W. Randolph; Carothers, Christopher D.; Cutler, Barbara M.; Radke, Richard J., 1974-;
    Date Issued
    2017-12
    Subject
    Computer science
    Degree
    PhD;
    Terms of Use
    This electronic version is a licensed copy owned by Rensselaer Polytechnic Institute, Troy, NY. Copyright of original work retained by author.;
    Metadata
    Show full item record
    URI
    https://hdl.handle.net/20.500.13015/2121
    Abstract
    Finally, we developed 3D-EPUG-Overlay, an algorithm for exactly computing the intersection of pairs of 3D meshes. 3D-EPUG-Overlay employs all the techniques mentioned above to ensure its correctness and efficiency. Experiments showed that it was up to 101 times faster than the algorithm available in LibiGL (the state of art algorithm for exact mesh intersection) and, also, it had a performance that was comparable to a parallel inexact algorithm that was specifically developed to be very fast. Besides being fast, 3D-EPUG-Overlay was more memory efficient than the other evaluated methods. Furthermore, in all test cases the result obtained by 3D-EPUG-Overlay matched the reference solution.; The key to obtain robustness and performance is a combination of 5 separate techniques:; - Multiple precision rational numbers, to exactly represent the coordinates of the objects and completely eliminate roundoff errors during the computations.; This thesis presents an exact parallel algorithm for computing the intersection between two 3D triangular meshes, as used in CAD/CAM (Computer Aided Design/Computer Aided Manufacturing), CFD (Computational Fluid Dynamics), GIS (Geographical Information Science) and additive manufacturing (also known as 3D Printing). Geometric software packages occasionally fail to compute the correct result because of the algorithm implementation complexity (that usually needs to handle several special cases) and of precision problems caused by floating point arithmetic. A failure in an intersection computation algorithm may propagate to any software using the algorithm as a subroutine. As datasets get bigger (and the chances of failure in an inexact algorithm increase), exact algorithms become even more important.; - Simulation of Simplicity, a symbolic perturbation technique, to ensure that all geometric degeneracies (special cases) are properly handled.; - Simple data representations and local information, to simplify the correct processing of the data and make the algorithm more parallelizable.; - A uniform grid, to efficiently index the data, and accelerate some of the steps of the algorithm such as testing pairs of triangles for intersection or locating points in the mesh.; - Parallel programming, to accelerate the intersection process and explore better the ubiquitous parallel computing capability of current hardware.; To evaluate our ideas, we have developed and implemented EPUG-Overlay (Exact Parallel Uniform Grid Overlay), an exact and efficient algorithm for overlaying 2D maps. EPUG-Overlay applies all the techniques mentioned above and, as a result, it was not only exact but also very efficient. Indeed, it was able to compute the intersection of a map containing 32 million edges with another map having 21 million edges in 264 elapsed seconds using 16 threads with dual 8-core processors. By comparison, GRASS (a Geographic Information System) took 5,300 seconds to perform the same computation, partly because it is only single-threaded.; We have also developed PinMesh (Point In Mesh), an exact and efficient method for locating points in 3D meshes. The point location problem is an important step we intend to use for computing the intersection of 3D meshes. PinMesh was carefully implemented to always handle point location queries correctly. The use of efficient data structures associated with parallel programming made PinMesh very fast. According to our experiments, PinMesh was up to 27 times faster than the RCT (Relative Closest Triangle) 3D point location algorithm (that was, to the best of our knowledge, the fastest point location algorithm available).; All the software developed for this thesis is freely available for other researchers to use and extend.; While other methods for exactly intersecting meshes exist, their performance makes them non-suitable for applications where the fast processing of big geometric models is important (such as interactive CAD systems).;
    Description
    December 2017; School of Science
    Department
    Dept. of Computer Science;
    Publisher
    Rensselaer Polytechnic Institute, Troy, NY
    Relationships
    Rensselaer Theses and Dissertations Online Collection;
    Access
    Users may download and share copies with attribution in accordance with a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License. No commercial use or derivatives are permitted without the explicit approval of the author.;
    Collections
    • RPI Theses Online (Complete)
    • RPI Theses Open Access

    Browse

    All of DSpace@RPICommunities & CollectionsBy Issue DateAuthorsTitlesSubjectsThis CollectionBy Issue DateAuthorsTitlesSubjects

    My Account

    Login

    DSpace software copyright © 2002-2022  DuraSpace
    Contact Us | Send Feedback
    DSpace Express is a service operated by 
    Atmire NV