Table of contents |

2 Combinatorial Computational Geometry 3 Numerical Computational Geometry / Geometric Modeling 4 Related Links |

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.

Main driving force for the computational geometry as a discipline was progress in computer graphics and in computer-aided design and manufacturing CAD /CAM, although in the hindsight some problems dealt by this discipline may be traced ages back.

Other important "customers" of computational geometry inlude 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).

There are two main flavors of computational geometry:

*Combinatorial Computational Geometry*, also called*Algorithmic Geometry*, which deals with geometric objects as discrete entities.-
*Numerical Computational Geometry*, also called*Machine Geometry*,*Computer-aided geometric design*(CAGD), or*Geometric Modeling*which deals primarily with representation of real-world objects in form suitable for computer computations in CAD /CAM systems.

The primary reseacrh is to develop efficient algorithms and data structures for solving problems in stated in terms of most basic geometrical objects: points, line segments, polygons, polyhedra, etc.

Some of these problems look so simple that some 40 years ago they were not perceived as problems at all. Consider, for example, the following

*Closest pair problem*: Given**N**points in the plane, find two with the smallest distance from each other.

For modern GIS, computer graphics, and integrated circuit design systems routinely handling tens and hundreds of million points the difference between **N ^{2}** and

Some core algorithms:

- Convex hull.
- Delaunay triangulation and Polygon triangulation.
- Voronoi diagram.
- Smallest bounding sphere.
- Closest pair of points.
- Line segment intersection.
- Minimal convex decomposition
- Boolean operations of polytopes.
- Ray casting (also known as Ray tracing).

- The museum problem. If a museum (represented by a polygon in the plane) wants to post guards (which see in all directions) to avoid getting robbed by a crook that could in principle drop from the ceiling, it is sufficient to post a guard at each vertex. This follows from the fact that all polygons can be triangulated. However, knowing that all triangulations can be colored using only three colors (see graph coloring), we get a proof and algorithm that we never need to put more than one guard for each three vertices.
- The museum problem in three dimensions. If a museum is represented in three dimensions as a polyhedron, then putting a guard at each vertex will not ensure that all of the museum is under observation. Although all of the surface of the polyhedron would be surveilled, but there are points in the interior of the polyhedron which might not be under surveillance. (A picture of this would be good.)
- Given a list of pairs of integers (for instance, representing the edges of a graph, we can ask whether it is possible to embed this graph in the plane (that is, draw it on a flat surface) without any edges crossing. This mildly overlaps with graph theory and graph drawing, but there is a complicated algorithm to answer this question efficiently.
- Given a list of points, line segments, triangles, spheres or other convex objects, determine whether there is a separating plane, and if so, compute it.
- Given two sets of points
*A*and*B*, find the orthogonal matrix*U*which will minimize the distance between*UA*and*B*. In english, we're interested in seeing if*A*and*B*are simple rotations of one another.

Core problems are curve and surface modelling and representation.

The most important instruments here are parametric curves and parametric surfaces, in particular, spline curves and spline surfaces.

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.

- Computer graphics
- CAD/CAM/CAE
- Robotics
- GIS
- Solid Modeling
- Computational Topology
- Algorithms
- Computational complexity