|
In computer science, computational geometry is the study of algorithms to solve problems stated in terms of geometry. Some purely geometrical problems arise out of the study of computational geometric algorithms, and the study of such problems is also considered to be part of computational geometry. Computer science, or computing science, is the study of the theoretical foundations of information and computation and their implementation and application in computer systems. ...
For other uses, see Geometry (disambiguation). ...
The main impetus for the development of computational geometry as a discipline was progress in computer graphics, computer-aided design and manufacturing (CAD/CAM), but many problems in computational geometry are classical in nature. This article is about the scientific discipline of computer graphics. ...
CAD is a TLA that may stand for: Cadiz Railroad (AAR reporting mark CAD) Canadian dollar â ISO 4217-code Capital Adequacy Directive Card Acceptance Device Children of the Anachronistic Dynasty Computer-aided design Computer-aided detection (medical) Computer-aided diagnosis (medical) Computer-assisted dispatch Computer-assisted drafting Coronary artery disease...
For other uses, see CAM. Animation showing rotating cams and cam followers producing reciprocating motion. ...
Other important applications of computational geometry include robotics (motion planning and visibility problems), geographic information systems (GIS) (geometrical location and search, route planning), integrated circuit design (IC geometry design and verification), computer-aided engineering (CAE) (programming of numerically controlled (NC) machines). The Shadow robot hand system holding a lightbulb. ...
GIS redirects here. ...
Integrated circuit of Atmel Diopsis 740 System on Chip showing memory blocks, logic and input/output pads around the periphery Microchips with a transparent window, showing the integrated circuit inside. ...
The main branches of computational geometry are: - Combinatorial computational geometry, also called algorithmic geometry, which deals with geometric objects as discrete entities. A groundlaying book in the subject by Preparata and Shamos dates the first use of the term "computational geometry" in this sense by 1975[1]
- Numerical computational geometry, also called machine geometry, computer-aided geometric design (CAGD), or geometric modeling, which deals primarily with representing real-world objects in forms suitable for computer computations in CAD /CAM systems. This branch may be seen as a further development of descriptive geometry and is often considered a branch of computer graphics and/or CAD. The term "computational geometry" in this meaning has been in use since 1971[2]
Discrete mathematics, also called finite mathematics, is the study of mathematical structures that are fundamentally discrete, in the sense of not supporting or requiring the notion of continuity. ...
CAD is a TLA that may stand for: Cadiz Railroad (AAR reporting mark CAD) Canadian dollar â ISO 4217-code Capital Adequacy Directive Card Acceptance Device Children of the Anachronistic Dynasty Computer-aided design Computer-aided detection (medical) Computer-aided diagnosis (medical) Computer-assisted dispatch Computer-assisted drafting Coronary artery disease...
For other uses, see CAM. Animation showing rotating cams and cam followers producing reciprocating motion. ...
Descriptive geometry builds on a practice, evolved over centuries, of displaying two images of an object, one as seen in one direction and a second image as seen from a direction 90° rotated (e. ...
This article is about the scientific discipline of computer graphics. ...
CAD is a TLA that may stand for: Cadiz Railroad (AAR reporting mark CAD) Canadian dollar â ISO 4217-code Capital Adequacy Directive Card Acceptance Device Children of the Anachronistic Dynasty Computer-aided design Computer-aided detection (medical) Computer-aided diagnosis (medical) Computer-assisted dispatch Computer-assisted drafting Coronary artery disease...
Combinatorial computational geometry The primary goal of research in combinatorial computational geometry is to develop efficient algorithms and data structures for solving problems stated in terms of basic geometrical objects: points, line segments, polygons, polyhedra, etc. In mathematics, computing, linguistics, and related disciplines, an algorithm is a finite list of well-defined instructions for accomplishing some task that, given an initial state, will terminate in a defined end-state. ...
A binary tree, a simple type of branching linked data structure. ...
Look up polygon in Wiktionary, the free dictionary. ...
For the game magazine, see Polyhedron (magazine). ...
Some of these problems seem so simple that they were not regarded as problems at all until the advent of computers. Consider, for example, the Closest pair problem: This article is about the machine. ...
Closest pair of points shown in red. ...
- Given n points in the plane, find the two with the smallest distance from each other.
One could compute the distances between all the pairs of points, of which there are n(n-1)/2, then pick the pair with the smallest distance. This brute-force algorithm takes O(n2) time; i.e. its execution time is proportional to the square of the number of points. A classic result in computational geometry was the formulation of an algorithm that takes O(n log n). Randomized algorithms that take O(n) expected time, as well as a deterministic algorithm that takes O(n log log n) time, have also been discovered. In computer science, a brute-force search consists of systematically enumerating every possible solution of a problem until a solution is found, or all possible solutions have been exhausted. ...
For other uses, see Big O. In computational complexity theory, big O notation is often used to describe how the size of the input data affects an algorithms usage of computational resources (usually running time or memory). ...
A randomized algorithm or probabilistic algorithm is an algorithm which employs a degree of randomness as part of its logic. ...
For modern GIS, computer graphics, and integrated-circuit design systems routinely handling tens and hundreds of million points, the difference between O(n2) and O(n log n) can be the difference between days and seconds of computation. Hence the emphasis on computational complexity in computational geometry. Complexity theory is part of the theory of computation dealing with the resources required during computation to solve a given problem. ...
Problem classes The core problems in computational geometry may be classified in different ways, according to various criteria. The following general classes may be distinguished.
Static problems In the problems of this category, some input is given and the corresponding output needs to be constructed or found. Some fundamental problems of this type are: The computational complexity for this class of problems is estimated by the time and space (computer memory) required to solve a given problem instance. Convex hull: elastic band analogy In mathematics, the convex hull or convex envelope for a set of points X in a real vector space V is the minimal convex set containing X. // For planar objects, i. ...
In computational geometry, the line segment intersection problem supplies a list of line segments in the plane and asks us to determine whether any two of them intersect, or cross. ...
A Delaunay triangulation in the plane with circumcircles shown In mathematics, and computational geometry, a Delaunay triangulation or Delone triangularization for a set P of points in the plane is a triangulation DT(P) such that no point in P is inside the circumcircle of any triangle in DT(P). ...
This is the Voronoi diagram of a random set of points in the plane (all points lie within the image). ...
In mathematics, linear programming (LP) problems involve the optimization of a linear objective function, subject to linear equality and inequality constraints. ...
This page meets Wikipedias criteria for speedy deletion. ...
This problem is studied in computational geometry: given a set of polyhedral obstacles in a Euclidean space, having a total of n vertices; design algorithms for efficient (exact or approximate) calculation of a shortest, obstacle-avoiding path connecting any two query points. ...
Polygon triangulation is a topic in computational geometry. ...
Geometric query problems In geometric query problems, commonly known as geometric search problems, the input consists of two parts: the search space part and the query part, which varies over the problem instances. The search space typically needs to be preprocessed, in a way that multiple queries can be answered efficiently. In search algorithms, search space is the collection of possible solutions to a problem, and incorporates some notion of distance between candidate solutions; the correct solution will be near the optimal point in this hypothetical space, which may be envisioned as having a dimension for each variable. ...
In general, a query is a form of questioning, in a line of inquiry. ...
Preprocessing is the act of processing data before it is parsed. ...
Some fundamental geometric query problems are: - Range searching: Preprocess a set of points, in order to efficiently count the number of points inside a query region.
- Point location: Given a partitioning of the space into cells, produce a data structure that efficiently tells in which cell a query point is located.
- Nearest neighbor: Preprocess a set of points, in order to efficiently find which point is closest to a query point.
- Ray tracing: Given a set of objects in space, produce a data structure that efficiently tells which object a query ray intersects first.
If the search space is fixed, the computational complexity for this class of problems is usually estimated by: Simplex range searching. ...
The point location problems and algorithms are a fundamental topic of computational geometry. ...
Nearest neighbor search (NNS), also known as proximity search or closest point search, is a numerical optimization problem for finding closest points in multidimensional metric spaces. ...
A ray traced scene. ...
- the time and space required to construct the data structure to be searched in
- the time (and sometimes an extra space) to answer queries.
For the case when the search space is allowed to vary, see "Dynamic problems".
Dynamic problems A yet another major class are the dynamic problems, in which the goal is to find an efficient algorithm for finding a solution repeatedly after each incremental modification of the input data (addition or deletion input geometric elements). Algorithms for problems of this type typically involve dynamic data structures. Any of the computational geometric problems may be converted into a dynamic one. For example, the range searching problem may be converted into the dynamic range searching problem by providing for addition and/or deletion of the points. The dynamic convex hull problem is to keep track of the convex hull, e.g., for the dynamically changing set of points, i.e., while the input points are inserted or deleted. Dynamic problems in computational complexity theory are problems stated in terms of the changing input data. ...
Dynamization is a term used in computer science for the process of transforming a static data structure into a dynamic one. ...
Simplex range searching. ...
The dynamic convex hull problem is a class of dynamic problems in computational geometry. ...
The computational complexity for this class of problems is estimated by: - the time and space required to construct the data structure to be searched in
- the time and space to modify the searched data structure after an incremental change in the search space
- the time (and sometimes an extra space) to answer a query.
Variations Some problems may be treated as belonging to either of the categories, depending on the context. For example, consider the following problem. In many applications this problem is treated as a single-shot one, i.e., belonging to the first class. For example, in many applications of computer graphics a common problem is to find which area on the screen is clicked by a mouse cursor. However in some applications the polygon in question is invariant, while the point represents a query. For example, the input polygon may represent a border of a country and a point is a position of an aircraft, and the problem is to determine whether the aircraft violated the border. Finally, in the previously mentioned example of computer graphics, in CAD applications the changing input data are often stored in dynamic data structures, which may be exploited to speed-up the point-in-polygon queries. In computational geometry, the point in polygon (also point-in-polygon or PIP) problem asks whether a given point in the plane lies inside, outside, or on the boundary of a simple polygon. ...
This article is about the scientific discipline of computer graphics. ...
A blinking text cursor. ...
CAD is a TLA that may stand for: Cadiz Railroad (AAR reporting mark CAD) Canadian dollar â ISO 4217-code Capital Adequacy Directive Card Acceptance Device Children of the Anachronistic Dynasty Computer-aided design Computer-aided detection (medical) Computer-aided diagnosis (medical) Computer-assisted dispatch Computer-assisted drafting Coronary artery disease...
In some contexts of query problems there are reasonable expectations on the sequence of the queries, which may be exploited either for efficient data structures or for tighter computational complexity estimates. For example, in some cases it is important to know the worst case for the total time for the whole sequence of N queries, rather than for a single query. See also "amortized analysis". In computational complexity theory, amortized analysis is the time per operation averaged over a worst_case sequence of operations. ...
Numerical computational geometry This branch is also known as geometric modelling, computer-aided geometric design (CAGD), and may be often found under the keyword curves and surfaces. A geometric model describes the shape of a physical or mathematical object by means of geometric concepts. ...
Core problems are curve and surface modelling and representation. The most important instruments here are parametric curves and parametric surfaces, such as Bezier curves, spline curves and surfaces. An important non-parametric approach is the level set method. In mathematics, the differential geometry of curves provides definitions and methods to analyze smooth curves in Riemannian manifolds and Pseudo-Riemannian manifolds (and in particular in Euclidean space) using differential and integral calculus. ...
A parametric surface is a surface defined by a parametric equation, involving two parameters, most commonly (s, t) or (u,v). ...
In the mathematical subfield of numerical analysis a Bézier curve is a parametric curve important in computer graphics. ...
One type of spline, a bézier curve In the mathematical subfield of numerical analysis, a spline is a special function defined piecewise by polynomials. ...
The level set method is a numerical technique for tracking interfaces and shapes. ...
First (and still most important) application areas are shipbuilding, aircraft, and automotive industries. However because of modern ubiquity and power of computers even perfume bottles and shampoo dispensers are designed using techniques unheard of by shipbuilders of 1960s.
Further reading This is a list of books in computational geometry. ...
Journals Combinatorial/algorithmic computational geometry Below is the list of the major journals that have been publishing research in geometric algorithms. Please notice with the appearance of journals specifically dedicated to computational geoometry, the share of geometric publications in general-purpose computer science and computer graphics journals decreased. ACM Transactions on Graphics (TOG) is a quarterly scientific journal that aims to disseminate the latest findings of note in the field of computer graphics. ...
Ars Combinatoria may refer to one of the following. ...
Communications of the ACM (CACM) is the flagship monthly magazine of the Association for Computing Machinery. ...
Geombinatorics is a mathematical research journal (ISSN 1065-7371) published by the University of Colorado, USA, since 1991 under an international board of editors. ...
The IEEE Transactions on Computers (TC) is a monthly journal published by the IEEE Computer Society. ...
The IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI) is a monthly journal published by the IEEE Computer Society. ...
The Association for Computing Machinery, or ACM, was founded in 1947 as the worlds first scientific and educational computing society. ...
The SIAM Journal on Computing is a research journal focussing on the mathematical and formal aspects of computer science. ...
ACM SIGACT or SIGACT is the Association for Computing Machinery Special Interest Group on Algorithms and Computation Theory, whose purpose is support of research in theoretical computer science. ...
Computer science (informally, CS or compsci) is, in its most general sense, the study of computation and information processing, both in hardware and in software. ...
Geometric modeling/CAGD This list is incomplete; you can help by expanding it. CADD and CAD redirect here. ...
See also List of combinatorial computational geometry topics enumerates the topics of computational geometry that states problems in terms of geometric objects as discrete entities and hence the methods of their solution are mostly theories and algorithms of combinatorial character. ...
List of numerical computational geometry topics enumerates the topics of computational geometry that deals with geometric objects as continous entities and applies methods and algorithms of nature characteristic to numerical analysis. ...
CAD is a TLA that may stand for: Cadiz Railroad (AAR reporting mark CAD) Canadian dollar â ISO 4217-code Capital Adequacy Directive Card Acceptance Device Children of the Anachronistic Dynasty Computer-aided design Computer-aided detection (medical) Computer-aided diagnosis (medical) Computer-assisted dispatch Computer-assisted drafting Coronary artery disease...
Computer-aided manufacturing (CAM) is the use of computer-based software tools that assist engineers and machinists in manufacturing or prototyping product components. ...
Computer-aided Engineering analysis (often referred to as CAE) is the application of computer software in engineering to analyze the robustness and performance of components and assemblies. ...
The Shadow robot hand system holding a lightbulb. ...
Solid modelling (or modeling) is the unambiguous representation of the solid parts of an object, that is, models of solid objects suitable for computer processing. ...
Algorithmic topology, or computational topology, is a subfield of topology with an overlap with areas of computer science, in particular computational complexity theory. ...
Digital geometry deals with discrete sets (usually discrete point sets) considered to be digitized models or images of objects of the 2D or 3D Euclidean space. ...
The Computational Geometry Algorithms Library (CGAL) is a software library that aims to provide easy access to efficient and reliable algorithms in computational geometry. ...
In mathematics, space partitioning is the process of dividing a space (usually a Euclidean space) into two or more disjoint subsets (see also partition of a set). ...
References - ^ Franco P. Preparata and Michael Ian Shamos (1985). Computational Geometry - An Introduction. Springer-Verlag. 1st edition: ISBN 0-387-96131-3; 2nd printing, corrected and expanded, 1988: ISBN 3-540-96131-3.
- ^ A.R. Forrest, "Computational geometry", Proc. Royal Society London, 321, series 4, 187-195 (1971)
Franco P. Preparata (born December 1935) is a computer scientist, the An Wang Professor of Computer Science at Brown University. ...
The Springer-Verlag (pronounced SHPRING er FAIR lahk) was a worldwide publishing company base in Germany. ...
External links |