Solid modelers and other CAD/CAM subsystems are moving to distributed heterogeneous computing environments, so as to support design and manufacturing processes that are temporally and spatially distributed. Communication and collaboration among the software components of such distributed systems require protocols for accessing remote objects. This paper discusses an approach that provides transparent access to diverse solid modelers in a distributed environment. A solid modeler is augmented with a software wrapper, called an adaptor, so as to provide a uniform application programming interface (API). Applications interact with the uniform API and need not concern themselves with the specifics of the modeling systems used. API calls are implemented in a client-server architecture, in which a modeler and its adaptor function as a geometry server, and various applications communicate with the server through remote procedure calls (RPCs). A few adaptors have been implemented at the University of Southern California's Programmable Automation Laboratory, and have been used routinely for several years. This paper discusses adaptor design problems and our approach to their solutions. It illustrates the application of our methods through an example that involves the incremental recognition of machinable features in a distributed environment. This environment includes a geometry server, a simple feature-based design system, a state-of-the-art feature recognizer, and a graphics renderer, all running as separate processes in different machines. To our knowledge, this is the first documented effort in which a complex application such as feature recognition is capable of running, unmodified, on top of modelers based on constructive solid geometry or on boundary representations, wihich are fundamentally different.
|Number of pages||11|
|Journal||CAD Computer Aided Design|
|Publication status||Published - 1998 Dec 1|
ASJC Scopus subject areas
- Computer Graphics and Computer-Aided Design
- Industrial and Manufacturing Engineering
- Geometry and Topology