Graphics Reference
In-Depth Information
Figure 5.8.
An ambiguous wireframe representation.
being to represent them using only their edges. After all, edges are some of the most
important features of an object that one “sees.” Unfortunately, this representation
scheme is ambiguous. For example, Figure 5.8 shows a block with a beveled hole
through its center. It is not possible to tell along which axis the hole lies from the edge
information alone. Two problems caused by the ambiguity are that one cannot remove
hidden lines reliably and one cannot produce sections automatically.
Many early commercially available modeling systems used wireframe representa-
tions. Even now many systems support a wireframe display mode because it is fast
and adequate for some jobs. A wireframe display is one where only edges and no faces
are shown. Note that how objects are displayed is quite independent of how they are
represented internally.
Faceted Representations. A simple solution that eliminates the major wireframe
representation problems for three-dimensional objects is to add faces. This represen-
tation is unambiguous. We shall look at this approach in more detail later in the
section on the boundary representation. Again, there is a difference between a mod-
eling system using a faceted representation and one using a faceted display . The latter
means that objects (of all dimensions) are displayed as if they were linear polyhedra
even though the system may maintain an exact analytic representation of objects inter-
nally. For example, a sphere centered at the origin is completely described by one
number, its radius, but it might be displayed in a faceted manner.
Attempts have been made to develop algorithms that generate faces from a wire-
frame representation automatically, but it is known that only using topological infor-
mation leads to an NP-complete problem, so that the algorithms will not be very
efficient in general. See, for example, [BagW95].
Primitive Instancing Schemes. In this scheme we simply have a finite number of
generic parameterized primitives that can be represented via tuples of the form
(type code, parameter 1 , ..., parameter k)
where the parameters are either reals or integers. See Figure 5.9. We do not need all
dimensions as parameters, only those that are variable. The representation is unam-
biguous and may be unique. It is certainly very compact. With regard to algorithms
for computing properties of objects represented by such scheme, one basically needs
a special case for each primitive.
Search WWH ::




Custom Search