Graphics Reference
In-Depth Information
The ability to classify spaces is especially important for computer vision and robot-
ics. A lot of work has been done over the years to determine the parts of a digitized
scene, the goal being to understand what is really in the scene in the same sense that
humans would. For example, one would like to be able to recognize whether we are
looking at a sphere or a doughnut (torus). Much still needs to done to achieve such
a higher level of recognition.
As a concrete example of what the author has in mind when it comes to geomet-
rically intelligent programs, the next section describes the author's attempt at such a
program. It is hardly a definitive answer to the discussion above but should be taken
simply as an indication of how manifolds can be treated intrinsically.
16.4
Exploring Manifolds
This section describes some features and capabilities of the SPACE program that the
author is currently implementing. It is a work in progress and not everything has yet
been implemented. The reader will have to consult the documentation on the accom-
panying CD to find out the latest state of the program. Nevertheless, we want to indi-
cate the author's approach to the development of geometrically intelligent modeling
programs. The idea of the program is to enable users to define and edit arbitrary
three-dimensional manifolds (with or without boundary), to “fly” through them, and
to query them about topological and geometric properties. The user interface is
described in more detail in the document SpaceGUI on the CD. The code for the
program and additional documentation can also be found on the CD. There is a
“2 1 / 2 ”-dimensional mode in the program for studying surfaces. If S is a surface, we
use the three-dimensional space S ¥ [0,1] to study S . The surface S is thought of as
the “floor” S ¥ 0 of the “room” S ¥ [0,1] along which we can walk. In this way the
study of surfaces can be made into a special case of the study of three-dimensional
manifolds, which does not involve much extra work.
Internally, the SPACE program represents a manifold by means of a cell decom-
position. It could easily be generalized to represent arbitrary spaces that admit cell
decompositions because the only essential property of the cell decomposition is that
a space is built by a sequence of steps, each of which involves attaching a cell to the
previous part via some attaching map. We also deal only with polygonal manifolds
(manifolds obtained by gluing rectilinear cells together via linear maps), so that ques-
tions of differential geometry are moot, but one could handle discrete curvature or
other discrete geometry questions. Manifolds M are represented as the union of a
sequence of 3-dimensional faceted disks D 1 , D 2 ,..., and D k , so that if
i
U
MD
=
,
i
j
j
=1
then M = M k and each D i is attached to the boundary of M i-1 by identifying a collec-
tion of facets in the boundary of D i with facets in the boundary of M i-1 via a map f i .
Manifold Creation. Users can create new manifolds in a variety of ways ranging
from low-level to high-level operations such as
Search WWH ::




Custom Search