ABSTRACT

In order that designers can fully exploit CAD systems, they need firstly to be able to customise them to suit their own needs and working practices, and secondly, to become more involved in developing their own computer programs. Computer programming for CAD applications is no longer an esoteric technical specialisation now that programming environments with visual interfaces are commonplace. This means that users can minimise the amount of programming language syntax they have to learn, making it easier to create programs. However, certain basic programming constructs, such as conditionals, loops, and parameter passing mechanisms, do need to be understood by end users. Although there are still many possible programming languages to choose from, there is an increasingly important trend in the use of object-oriented techniques in CAD applications. There are big advantages in using object-oriented programming environments for CAD systems:

the graphical objects within CAD systems can be naturally represented as objects receiving and responding to messages.

the powerful inheritance mechanism of object-oriented languages supports program development since object descriptions can be reused, and makes it easier for users to customise applications for particular design tasks.

the interactive instantiation of objects and subsequent refinement of object instances allow diverse design proposals to co-exist within the same CAD model. Apart from obviating the need for storage-intensive file copying of alternate CAD solutions, the instancing mechanism also has a strong pedagogical role in allowing design students and practitioners to record their design explorations.