/Geometric modelling is an integral part of most CAD/CAM applications.
However, there is not a widespread and integrated use of geometric mo
delling throughout the product lifecycle. The primary reason for this
is the differences in the modelling requirements of applications that
are used at the various stages of the product development cycle. The p
aper describes a geometric engine, GNOMES, which provides a geometric
modelling framework that can be shared by many applications. This is a
chieved using a unified representation which can model a large class o
f point sets that includes nonmanifold point sets, nonclosed point set
s, and sets with cracks or missing points. Powerful high-level modelli
ng operations (Boolean, topological, and structural operations) which
are useful for constructing more complex models or interrogating the g
eometric models have been implemented. GNOMES also provides various da
tabase facilities through the use of a distributed object-oriented dat
abase management system. These facilities include support for persiste
nt GNOMES objects, long and short duration transaction management for
concurrent access by multiple applications, a general query facility,
and a version and configuration management facility which can be used
to record the evolution of GNOMES models. The GNOMES architecture is b
ased on object-oriented principles, and it provides clear abstractions
in a small set of encapsulated classes. The goal in developing GNOMES
is to provide a geometric engine that is reasonably easy to understan
d and easily extensible, and that can be used as a basic building bloc
k of a collaborative engineering environment. The paper describes the
GNOMES representation scheme, its object-oriented design, and sample a
pplications which illustrate various GNOMES functionalities.