Design Goals

This program is to be used by children on an elementary level, as well as by adults on a rather high level. The use of the program ranges from elementary education to advanced research in geometry. It is obvious that these goals can hardly be simultaneously and completely met by one program. However, one of my main goals was to design a program as simple as possible, but also as useful as necessary.

The main function of this program is dynamic geometry. I.e., a geometric construction can be changed by moving one of the basic points. It is even possible to draw a track of another point in that process, which may give deep inside into geometric facts. Another main point are constructions by description, which are possible as an alternative to the visual construction. With Java, it is possible to publish constructions in the Internet. One can also assign problems this way. Last but not least, the program uses macros, which make more complicated constructions possible.

The primary mean to achieve a good usability is to reduce the interface to the tools, which are absolutely necessary for a smooth handling of the program, and to hide many of the necessary details in advanced dialogs. Moreover, the user is confronted with a standard graphical environment, in which he should feel at home immediately. So, while the left mouse button along with the icons are enough to construct everything, a right mouse button click on any object will open a dialog with further settings. A drag with the right mouse button will do what it is supposed to do, namely move objects around.

A further design goal is to provide useful automatic response. So a user can generate a segment by generating its two endpoints with the segment tool. The endpoints are generated automatically, unless the user clicks on a previously constructed point. The user can also generate intersections automatically, whenever he needs them by simply clicking close to the intersection point. There is a preview feature to assist the user to see what he is doing.

While the interface is intuitive, it may not be so for those users, who are used to other programs of this kind. The interface philosophy of C.a.R. follows more closely the principles of Windows than other programs, who invent their own schemes. So please take some time to adjust.