24 research outputs found

    Degree-Driven Design of Geometric Algorithms for Point Location, Proximity, and Volume Calculation

    Get PDF
    Correct implementation of published geometric algorithms is surprisingly difficult. Geometric algorithms are often designed for Real-RAM, a computational model that provides arbitrary precision arithmetic operations at unit cost. Actual commodity hardware provides only finite precision and may result in arithmetic errors. While the errors may seem small, if ignored, they may cause incorrect branching, which may cause an implementation to reach an undefined state, produce erroneous output, or crash. In 1999 Liotta, Preparata and Tamassia proposed that in addition to considering the resources of time and space, an algorithm designer should also consider the arithmetic precision necessary to guarantee a correct implementation. They called this design technique degree-driven algorithm design. Designers who consider the time, space, and precision for a problem up-front arrive at new solutions, gain further insight, and find simpler representations. In this thesis, I show that degree-driven design supports the development of new and robust geometric algorithms. I demonstrate this claim via several new algorithms. For n point sites on a UxU grid I consider three problems. First, I show how to compute the nearest neighbor transform in O(U^2) expected time, O(U^2) space, and double precision. Second, I show how to create a data structure in O(n log Un) expected time, O(n) expected space, and triple precision that supports O(log n) time and double precision post-office queries. Third, I show how to compute the Gabriel graph in O(n^2) time, O(n^2) space and double precision. For computing volumes of CSG models, I describe a framework that uses a minimal set of predicates that use at most five-fold precision. The framework is over 500x faster and two orders of magnitude more accurate than a Monte Carlo volume calculation algorithm.Doctor of Philosoph

    Minkowski Sum Construction and other Applications of Arrangements of Geodesic Arcs on the Sphere

    Full text link
    We present two exact implementations of efficient output-sensitive algorithms that compute Minkowski sums of two convex polyhedra in 3D. We do not assume general position. Namely, we handle degenerate input, and produce exact results. We provide a tight bound on the exact maximum complexity of Minkowski sums of polytopes in 3D in terms of the number of facets of the summand polytopes. The algorithms employ variants of a data structure that represents arrangements embedded on two-dimensional parametric surfaces in 3D, and they make use of many operations applied to arrangements in these representations. We have developed software components that support the arrangement data-structure variants and the operations applied to them. These software components are generic, as they can be instantiated with any number type. However, our algorithms require only (exact) rational arithmetic. These software components together with exact rational-arithmetic enable a robust, efficient, and elegant implementation of the Minkowski-sum constructions and the related applications. These software components are provided through a package of the Computational Geometry Algorithm Library (CGAL) called Arrangement_on_surface_2. We also present exact implementations of other applications that exploit arrangements of arcs of great circles embedded on the sphere. We use them as basic blocks in an exact implementation of an efficient algorithm that partitions an assembly of polyhedra in 3D with two hands using infinite translations. This application distinctly shows the importance of exact computation, as imprecise computation might result with dismissal of valid partitioning-motions.Comment: A Ph.D. thesis carried out at the Tel-Aviv university. 134 pages long. The advisor was Prof. Dan Halperi

    The investigation of a method to generate conformal lattice structures for additive manufacturing

    Get PDF
    Additive manufacturing (AM) allows a geometric complexity in products not seen in conventional manufacturing. This geometric freedom facilitates the design and fabrication of conformal hierarchical structures. Entire parts or regions of a part can be populated with lattice structure, designed to exhibit properties that differ from the solid material used in fabrication. Current computer aided design (CAD) software used to design products is not suitable for the generation of lattice structure models. Although conceptually simple, the memory requirements to store a virtual CAD model of a lattice structure are prohibitively high. Conventional CAD software defines geometry through boundary representation (B-rep); shapes are described by the connectivity of faces, edges and vertices. While useful for representing accurate models of complex shape, the sheer quantity of individual surfaces required to represent each of the relatively simple individual struts that comprise a lattice structure ensure that memory limitations are soon reached. Additionally, the conventional data flow from CAD to manufactured part is arduous, involving several conversions between file formats. As well as a lengthy process, each conversion risks the generation of geometric errors that must be fixed before manufacture. A method was developed to specifically generate large arrays of lattice structures, based on a general voxel modelling method identified in the literature review. The method is much less sensitive to geometric complexity than conventional methods and thus facilitates the design of considerably more complex structures. The ability to grade structure designs across regions of a part (termed functional grading ) was also investigated, as well as a method to retain connectivity between boundary struts of a conformal structure. In addition, the method streamlines the data flow from design to manufacture: earlier steps of the data conversion process are bypassed entirely. The effect of the modelling method on surface roughness of parts produced was investigated, as voxel models define boundaries with discrete, stepped blocks. It was concluded that the effect of this stepping on surface roughness was minimal. This thesis concludes with suggestions for further work to improve the efficiency, capability and usability of the conformal structure method developed in this work

    Virtual sculpting : an investigation of directly manipulated free-form deformation in a virtual environment

    Get PDF
    This thesis presents a Virtual Sculpting system, which addresses the problem of Free-Form Solid Modelling. The disparate elements of a Polygon-Mesh representation, a Directly Manipulated Free-Form Deformation sculpting tool, and a Virtual Environment are drawn into a cohesive whole under the mantle of a clay-sculpting metaphor. This enables a user to mould and manipulate a synthetic solid interactively as if it were composed of malleable clay. The focus of this study is on the interactivity, intuitivity and versatility of such a system. To this end, a range of improvements is investigated which significantly enhances the efficiency and correctness of Directly Manipulated Free-Form Deformation, both separately and as a seamless component of the Virtual Sculpting system

    Generative Mesh Modeling

    Get PDF
    Generative Modeling is an alternative approach for the description of three-dimensional shape. The basic idea is to represent a model not as usual by an agglomeration of geometric primitives (triangles, point clouds, NURBS patches), but by functions. The paradigm change from objects to operations allows for a procedural representation of procedural shapes, such as most man-made objects. Instead of storing only the result of a 3D construction, the construction process itself is stored in a model file. The generative approach opens truly new perspectives in many ways, among others also for 3D knowledge management. It permits for instance to resort to a repository of already solved modeling problems, in order to re-use this knowledge also in different, slightly varied situations. The construction knowledge can be collected in digital libraries containing domain-specific parametric modeling tools. A concrete realization of this approach is a new general description language for 3D models, the "Generative Modeling Language" GML. As a Turing-complete "shape programming language" it is a basis of existing, primitv based 3D model formats. Together with its Runtime engine the GML permits - to store highly complex 3D models in a compact form, - to evaluate the description within fractions of a second, - to adaptively tesselate and to interactively display the model, - and even to change the models high-level parameters at runtime.Die generative Modellierung ist ein alternativer Ansatz zur Beschreibung von dreidimensionaler Form. Zugrunde liegt die Idee, ein Modell nicht wie üblich durch eine Ansammlung geometrischer Primitive (Dreiecke, Punkte, NURBS-Patches) zu beschreiben, sondern durch Funktionen. Der Paradigmenwechsel von Objekten zu Geometrie-erzeugenden Operationen ermöglicht es, prozedurale Modelle auch prozedural zu repräsentieren. Statt das Resultat eines 3D-Konstruktionsprozesses zu speichern, kann so der Konstruktionsprozess selber repräsentiert werden. Der generative Ansatz eröffnet unter anderem gänzlich neue Perspektiven für das Wissensmanagement im 3D-Bereich. Er ermöglicht etwa, auf einen Fundus bereits gelöster Konstruktions-Aufgaben zurückzugreifen, um sie in ähnlichen, aber leicht variierten Situationen wiederverwenden zu können. Das Konstruktions-Wissen kann dazu in Form von Bibliotheken parametrisierter, Domänen-spezifischer Modellier-Werkzeuge gesammelt werden. Konkret wird dazu eine neue allgemeine Modell-Beschreibungs-Sprache vorgeschlagen, die "Generative Modeling Language" GML. Als Turing-mächtige "Programmiersprache für Form" stellt sie eine echte Verallgemeinerung existierender Primitiv-basierter 3D-Modellformate dar. Zusammen mit ihrer Runtime-Engine erlaubt die GML, - hochkomplexe 3D-Objekte extrem kompakt zu beschreiben, - die Beschreibung innerhalb von Sekundenbruchteilen auszuwerten, - das Modell adaptiv darzustellen und interaktiv zu betrachten, - und die Modell-Parameter interaktiv zu verändern

    Functional representation and manipulation of shapes with applications in surface and solid modeling

    Get PDF
    Real-valued functions have wide applications in various areas within computer graphics. In this work, we examine three representation of shapes using functions. In particular, we study the classical B-spline representation of piece-wise polynomials in the univariate domain. We provide a generalization of B-spline to the bivariate domain using intuition gained from the univariate construction. We also study the popular scheme of representing 3D density distribution using a uniform, rectilinear grid, where we provide a novel contouring scheme that culls occluded inner geometries. Lastly, we examine a ray-based representation for 3D indicator functions called ray-rep, for which we present a novel meshing scheme with multi-material extensions

    Annales Mathematicae et Informaticae (48.)

    Get PDF

    Homotopy Based Reconstruction from Acoustic Images

    Get PDF

    Planar Nef polyhedra and generic higher-dimensional geometry

    Get PDF
    We present two generic software projects that are part of the software library CGAL. The first part described the design of a geometry kernel for higher-dimensional Euclidian geometry and the interaction with application programs. We describe software structures, interface concepts, and their models that are based on cooordinate representation, number types, and memory layout. In the higher-dimensional software kernel the interaction between linear algebra and geometric objects and primitves is one important facet. In the actual design our users can replace number types, representation types, and the traits classes that inflate kernel functionality into our current application programs: higher-dimensional convex hulls and Delaunay tedrahedralisations. In the second part we present the realization of planar Nef polyhedra. The concept of Nef polyhedra subsumes all kinds of rectilinear polyhedral subdivisions and is therefore of general applicability within a geometric software library. The software is based on the theory of extended points and segments that allows us to reuse classical algorithmic solutions like plane sweep to realize binary operations of Nef polyhedra.Wir präsentieren zwei Softwareprojekte, die Teil der Softwarebibliothek CGAL sind. Der erste Teil beschreibt den Entwurf eines Geometriekerns für höherdimensionale euklidische Geometrie und dessen Interaktion mit Anwendungsprogrammen. Wir beschreiben die Softwarestruktur, die auf der Herausarbeitung von Schnittstellenkonzepten und ihren Modellen hinsichtlich Koordinatenrepräsentation, Zahlentypen und Speicherablage beruht. Dabei spielt im Höherdimensionalen die Interaktion zwischen linearer Algebra und den entsprechenden geometrischen Objekten und primitiven Operationen eine wesentliche Rolle. Unser Entwurf erlaubt das Auswechseln von Zahlentypen, Repräsentations- und Traitsklassen bei der Berechnung von d-dimensionalen konvexen Hüllen und Delaunay-Simplexzerlegungen. Im zweiten Teil stellen wir die Realisierung von planaren Nef-Polyedern vor. Das Konzept der Nef-Polyeder umfasst alle linear-polyedrisch begrenzten Unterteilungen. Wir beschreiben ein Softwaremodul das umfassende Funktionalität zur Verfügung stellt. Als theoretische Grundlage des Entwurfs dient die Theorie erweiterter Punkte und Segmente, die es uns erlaubt, vorhandene Algorithmen wie z.B. Plane-Sweep zur Realisierung binärer Operationen von Nef-Polyedern zu nutzen
    corecore