- Research Article
- 10.1016/j.tcs.2019.05.004
Approximability of covering cells with line segments
- May 20, 2019
- Theoretical Computer Science
- Paz Carmi + 3 more +3
Approximability of covering cells with line segments
A segment tree is a versatile tree-based data structure over intervals or line segments efficiently supporting several computational operations such as stabbing query, segment arrangement, and planar point location, both theoretically and practically. Polygon clipping is a basic operation in domains such as Computer Graphics, Computer-aided Design, and Geographic Information Science (GIS). Given two polygons with n vertices, polygon clipping algorithms find the geometric intersection or union in <Formula format="inline"><TexMath><?TeX $\mathcal {O}(n^2)$?></TexMath><AltText>Math 1</AltText><File name="icpp24-103-inline1" type="svg"/></Formula> time using Foster’s all-to-all edge intersection testing and <Formula format="inline"><TexMath><?TeX $\mathcal {O}((n+k)\log n)$?></TexMath><AltText>Math 2</AltText><File name="icpp24-103-inline2" type="svg"/></Formula> time using Vatti’s sweep line-based method, where k is the number of intersections. No known segment tree implementation, including the CGAL library, supports intersection finding or polygon clipping. We extended the segment tree leveraging Chaselle’s PRAM-model augmentation, parallelized the construction of our augmented segment tree, and employed it to find line segment intersections for polygon clipping while handling degenerate cases. Augmented segment tree eliminates 99% of non-intersecting edge pairs compared to 63% by the state-of-the-art filtering based on common minimum bounding rectangle method employed in Foster’s GPU-based implementation. This, coupled with Ω(nlog n) work on a single CPU core, beats Foster’s GPU performance with <Formula format="inline"><TexMath><?TeX $\mathcal {O}(n^2)$?></TexMath><AltText>Math 3</AltText><File name="icpp24-103-inline3" type="svg"/></Formula> work. Our OpenMP directive based multi-core implementation achieves up to 4X relative speedup for clipping two polygons with 182K vertices and 5X speedup for five polygons with 398K vertices. We also offloaded the parallel kernels to a GPU using OpenACC achieving performance competitive with Foster’s GPU implementation. Our profiling indicates limitations of the compiler directives and potential for superior performance by employing pthread/cuda libraries.
Loading PDF
Approximability of covering cells with line segments
Approximability of covering cells with line segments
GPU Accelerated Dissipative Particle Dynamics with Parallel Cell-list Updating
A general purpose DPD simulation entirely implemented on GPU is presented in this paper, including cell-list updating, force calculation and integrating forward. The algorithm and optimization needed to obtain best performance of GPU is discussed. The performance benchmarks show that our implementation running on single GPU can be more than 20x faster than conventional implementation running on single CPU core and 10x faster than that running on 5 CPU cores.
Read morePlanar Point Location Using Persistent Search Treesa
A classical problem in computational geometry is the planar point location problem. This problem calls for preprocessing a polygonal subdivision of the plane defined by n line segments so that, given a sequence of points, the polygon containing each point can be determined quickly on-line. Several ways of solving this problem in O(log n) query time and O(n) space are known, but they are all rather complicated. We propose a simple O(log n)-query-time, O(n)-space solution, using persistent search trees. A persistent search tree differs from an ordinary search tree in that after an insertion or deletion, the old version of the tree can still be accessed. We develop a persistent form of binary search tree that supports insertions and deletions in the present and queries in the past. The time per query or update is O(log m), where m is the total number of updates, and the space needed is O(1) per update. Our planar point location algorithm is an immediate application of this data structure. The structure also provides an alternative to Chazelle's hive graph structure, which has a variety of applications in geometric retrieval.
Read moreProfile-Based Feature Representation Based on Guide Curve Approximation Using Line and Arc Segments
The profile-based features of a mechanical computer aided design (CAD) system commonly have complicated shapes because of the guide curve, which is free-form type. However, while considering interoperability between different CAD systems, due to this kind of free-form guide curve, it is difficult to represent the corresponding feature shape in another CAD system, for example, ship CAD systems usually use relatively simple shape primitive to represent shape. Thus, in this paper, we propose a straightforward algorithm to represent profile-based features that is based on guide curve approximation using line and arcs segments. In addition, the solid alignment and filling operation are also given to complete the process of solid model reconstruction, and we use several test cases to demonstrate the effectiveness of the proposed method.
Read moreOn Intersections of B-Spline Curves
Bézier and B-spline curves are foundational tools for curve representation in computer graphics and computer-aided geometric design, with their intersection computation presenting a fundamental challenge in geometric modeling. This study introduces an innovative algorithm that quickly and effectively resolves intersections between Bézier and B-spline curves. The number of intersections between the two input curves within a specified region is initially determined by applying the resultant of a polynomial system and Sturm’s theorem. Subsequently, the potential region of the intersection is established through the utilization of the pseudo-curvature-based subdivision scheme and the bounding box detection technique. The projected Gauss-Newton method is ultimately employed to efficiently converge to the intersection. The robustness and efficiency of the proposed algorithm are demonstrated through numerical experiments, demonstrating a speedup of 3 to 150 times over traditional methods.
Read moreGeneration of architectural CAD models using a mobile robot
This paper describes new algorithms for automatically constructing a computer aided design (CAD) model of a structured scene as imaged by a single camera on a mobile robot. The scene to be modeled is assumed to be composed mostly of linear edges with particular orientations in 3-D. This is the case for most indoor scenes as well as some outdoor urban scenes. The orientation data is used by a motion stereo algorithm to estimate the 3-D structure using a sequence of images. The algorithm assumes that the linear edges are the boundaries of opaque planar patches, such as the floor, the ceiling and the walls. The resulting 3-D description is a CAD model of the scene. Applications of this technique include CAD modeling for architecture and computer graphics, and robot navigation. This paper completes earlier publications and therefore concentrates on the latter parts of processing, including automatically tracking segments, and using the resulting models in different applications. >
Read moreTurkey
In a formal or an informal manner, computer graphics has been a field of research and education since the early 1970s in Turkey. The earlier examples of academic research work came from Istanbul Technical University and Middle East Technical University in Ankara. Istanbul Technical University research efforts were basically on computer-aided design, whereas at the Middle East Technical University, more theoretical computer graphics work has been carried on.Two examples can be given of early theoretical graphics work: A hidden line elimination algorithm by Ibrahim Canbulat, and an automated drafting algorithm by the author [2, 3]. To the best of my knowledge, the earliest official computer graphics course was offered at the Middle East Technical University in 1979. With the establishment of Bilkent University in Ankara, the first private university in Turkey, computer graphics became an official track of study, not only in computer engineering, but in fine arts as well.In this paper, we examine the current state of computer graphics education in Turkey under two main headings. First, the educational activities within the departments of computer science will be examined. Then, the educational activities within the schools of art and design will be looked at. In order to find out the educational activities at various universities, we have written to 52 departments at 40 universities. The information given in this report is based on the responses from these departments. Many departments at various schools offer technical drawing courses by the use of drafting software. These have not been classified as computer graphics courses.
Read moreChapter 13 Qualitative Spatial Representation and Reasoning
Chapter 13 Qualitative Spatial Representation and Reasoning
A new algorithm for two-dimensional line clipping via geometric transformation
Line segment clipping is a basic operation of the visualization process in computer graphics. So far there exist four computational models for clipping a line segment against a window, (1) the encoding, (2) the parametric, (3) the geometric transformation, and (4) the parallel cutting. This paper presents an algorithm that is based on the third method. By making use of symmetric properties of a window and transformation operations, both endpoints of a line segment are transformed, so that the basic cases are reduced into two that can be easily handled, thus the problems in NLN and AS where there are too many sub-procedure calls and basic cases that are difficult to deal with are tackled. Both analytical and experimental results from random input data show that the algorithm is better than other developed ones, in view of the speed and the number of operations.
Read morePlane-sweep algorithms for intersecting geometric figures
Algorithms in computational geometry are of increasing importance in computer-aided design, for example, in the layout of integrated circuits. The efficient computation of the intersection of several superimposed figures is a basic problem. Plane figures defined by points connected by straight line segments are considered, for example, polygons (not necessarily simple) and maps (embedded planar graphs). The regions into which the plane is partitioned by these intersecting figures are to be processed in various ways such as listing the boundary of each region in cyclic order or sweeping the interior of each region. Let m be the total number of points of all the figures involved and s be the total number of intersections of all line segments. A two plane-sweep algorithm that solves the problems above is presented; in the general case (non convexity) in time O((n+s)log-n) and space O(n+s); when the regions of each given figure are convex, the same can be achieved in time O(n log n +s) and space O(n)
Read more3-coloring arrangements of line segments with 4 slopes is hard
3-coloring arrangements of line segments with 4 slopes is hard
Parallel Strategy of FMBEM for 3D Elastostatics and its GPU Implementation Using CUDA
Finite Element Method (FEM1) is pervasively used in most of 3D product design analysis, in which Computer Aided Design (CAD) models need to be converted in to mesh models first and then enriched with some material features and boundary conditions data, etc. The interaction between CAD models and FEM models is intensive. Boundary Element Method (BEM) has been expected to be advantageous in large-scale problems in recent years owing to its reduction of the dimensionality and its reduced complexity in mesh generation. However, the BEM application has so far been limited to relatively small problems due to the memory and computational complexity for matrix buildup are O(N2). The fast multipole BEM (FMBEM) combined with BEM and fast multipole method (FMM) can overcome the defect of the traditional BEM, and provides an effective method to solve the large-scale problem. Combining GPU parallel computing with FMBEM can further improve its efficiency significantly. Based on the three-dimensional elastic mechanics problems, the parallelisms of the multipole moment (ME), multipole moment to multipole moment (M2M) translation, multipole moment to local expansion (M2L) translation, local expansion to local expansion (L2L) translation and near-field direct calculation were analyzed respectively according to the characteristics of the FMM, and the parallel strategies under CUDA were presented in this paper. Three main major parts are included herein: (1) FMBEM theory in 3D elastostatics, (2) the parallel FMBEM algorithm using CUDA, and (3) comparison the GPU parallel FMBEM with BEM, FEM and FMBEM respectively by engineering examples. Numerical example results show the 3D elastostatics GPU FMBEM not only can speed up the boundary element calculation process, but also save memory which can be effective to solve the large-scale engineering problems.
Read moreComputer-Aided Geometric Design: A bibliography with Keywords and Classified Index
Computer-aided geometric design is a subject which involves the representation, specification, design, manipulation, display, and analysis of free-form curves and surfaces. This eclectic field draws on techniques and principles from numerical analysis, approximation theory, computer graphics, interactive computer systems, mechanical and geometric design, and many other areas. Nevertheless, computer-aided geometric design is an endeavor with a character, emphasis, and purpose of its own, combining techniques and principles from other fields with unique approaches that are often somewhat enigmatic and confusing to the novice. Many things sound and seem familiar, yet the directions and motivations are distinct to this discipline. This decade is proving to be an era of intense interest in computer-aided geometric design, an activity attracting people from many sectors including computing and manufacturing. As the discipline more firmly establishes valid principles and standard techniques, it will undoubtedly be of increasing importance in computer-aided manufacturing and a wide range of other applications.
Read moreOptical Algorithms in Geometry
We consider the application of optical computational operations to problems that arise in various geometric applications, such as computer graphics, image processing, pattern matching. etc. We show how to implement, using only a constant number of basic optical operations, a variety of algorithms that solve fairly complex tasks of this sort. We discuss the methodology that we propose, list the geometric algorithms that we have developed to date, and illustrate the approach in two more detailed applications, motivated by computer graphics and pattern matching: drawing all possible lines connecting pairs in a given set of points, and computing the closest pair (orkclosest pairs) of points in a given set.
Read moreThe Accuracy of the Digital Representation of a Straight Line
Both in Image Processing and in Computer Graphics digital straight line segments play a role as the simplest way to connect pixels. But while in Computer Graphics the emphasis is on the generation of these lines, given the parameters intercept and slope, the focus in Image Processing is on measuring the parameters, given the lines. Aspects of this analysis are the so-called linearity conditions (specifying the necessary and sufficient conditions for a set of points to be a digitized straight line segment) and the accuracy of the representation (specifying how accurately a given digitized straight line segment describes the underlying continuous reality). Both aspects have been investigated in depth [1]–[9]. The question of accuracy has recently been solved completely, when mathematical expressions were given for the set of all continuous line segments that could have generated a given digital straight line segment [8]. These expressions are in fact the formulas for the inversion of the digitization process. As such, they are also interesting for Computer Graphics.
Read more