|
The User Interface
|
|
|
The single commandment The most expensive component of a CAD system is the employment costs of its operator. This suggests that the fastest way to recoup the investment made in a CAD system is to increase operators’ productivity.
DIAMOND's whole user interface is based on a single principle: that a system is merely a design or draughting tool. DIAMOND offers a fast, powerful and flexible tool, but regards itself as only a tool. A tool designed to assist users in discharging essential tasks, adapt itself to their habits and working practices, recognise short-hand and implicit requests in addition to long-winded and explicit ones, perceive what it's being used for, help whenever help is essential and put the computer's power at the user's disposal. DIAMOND is a tool that can be used swiftly and efficiently without spending too much time thinking about how it should be manipulated.
DIAMNOD tries, whenever possible, to determine what is asked for from the data each user chooses to specify, performing these tasks once sufficient information has been provided or informing the user why the specified instructions could not be executed. This freedom of expression, provided throughout the system, allows users to concentrate on the work they do, not on how to drive the system or the best way to produce a presentable plot, and therefore contributes to enhanced productivity.
In addition, DIAMOND's textual displays can be used for command and parameter specification, as if they were standard menus. The selection of a displayed line of information indicates a wish to modify the displayed attribute. In some cases, DIAMOND offers the selected attribute alternative values, for example ON..OFF..ON for orthogonality, OPEN..CLOSED..OPEN for curve or polyline creation, or LEFT..CENTRE..RIGHT..LEFT for text justification. In others, it will activate a menu with a wider range of choices.
Commands issued from the keyboard or within macros can be truncated at will. In the case of ambiguities caused by a truncated command, all relevant options are instantly relayed to the user in the form of friendly help messages. If such errors are corrected, there is no need to re-specify the valid parts of a command string. The same principle applies to specification of names. Every command can be altered to suit individual habits. Similarly, every string of commands can be assigned to concise user specified synonyms.
All of DIAMOND's commands, prompts, messages and screen displays, as well as all of its tutorial and help information can be easily altered. They can be modified from one language to another, or alternatively within the same language, to facilitate the use of more familiar terms.
If required, diverse menu schemes can be operated by different users, or by a single user for different applications. Users can change the menu size or position or the colours used for its display.
In addition to fixed menus, dynamic menus offer options depending on the circumstances surrounding their use. For example, menus for the selection of a new drawing according to the current project, specification of a new style or symbol part according to currently set libraries, referencing to a layer according to currently specified layer names, or the activation of a user utility according to the currently available macros. DIAMOND offers use of dynamic menus automatically generated on-the-fly just before being displayed, giving instant choices and ensuring that all available options are covered, valid and up-to-date. They will therefore include all relevant changes made by all the users who are working on the same network.
In general, DIAMOND does not expect operators to be familiar with the structure of their computer’s disk or the exact location of the files they may require. Instead, any change to the current working environment, made by any user on a networked system, is brought to the attention of all users with the use of these dynamic menus. This makes certain that all available options are covered, valid and up to date.
For example, when it expects the input of a scalar magnitude, just pointing to a line instructs DIAMOND to use its length as the required input. When it expects the input of an angular magnitude, pointing to the same line instructs DIAMOND to use its slope, from the selection end towards the other one, as the required input. There is no need to spend any time obtaining information about properties of existing entities prior to submitting relevant parts as required input.
Default Data
A similar explanation for all the accessible menu options is dynamically displayed while the cursor is located over a menu box.
Whenever the cursor is placed over the drawing area, its exact drawing location, taking into account the current datum point, grid system and scaling factors, is displayed.
With the full range of cross-referencing and tutorials supplied, DIAMOND users have a wealth of very useful, friendly information available at the touch of a button.
|
The intuitive system
DIAMOND allows users a much greater degree of freedom of expression. A typical example is the differing methods adopted by CAD systems for the creation of new arcs.
Most systems initially ask the user to specify an exact type for the created arc, for example an arc between three positions, two positions and a radius etc. After the type specification, they expect relevant data to be given in a predefined order. In contrast, DIAMOND does not need a type specification and allows the user to specify data in any required order. It then determines which arc is required from the data specified, which may include any combination of drawing positions as end points, centre point, radius, diameter, bulge factor, tangent, bounding angles, layer number, line style, arc segments etc. It will even detect commands that are not part of the arc specification but imply a wish perform minor tasks without an interruption to the arc creation, or permanently switch to another operation mode.
In addition, Diamond’s rubber banding facility adapts itself to the specified data, showing an image of newly created entities once enough information is available. The definition of a new elliptical segment requires the specification of a centre point, major and minor axes, orientation angle, and two out of the three start, span and end angles. These parameters can be specified in any order, which means 2160 different combinations. Regardless of the chosen combination, DIAMOND will display a full or partial elliptical image once the data supplied, plus the assumption that the current cursor position will be used to specify the next input, allows it.
The command syntax also allows free transfers from one mode of operation to another, without any need for a series of quit, exit and finish commands.
When the most likely input is a position, the dynamic displays are continuously refreshed according to the cursor location, on the assumption that it will be used to indicate a drawing position. They combine detailed graphical display of geometry with textual display of its parameters.
If the display is part of numerical input (specification of length or angular values), then DIAMOND will show the magnitude currently indicated by the cursor location. This magnitude can then be entered by use of a mouse button, instead of being typed in full on the keyboard.
During the specification of new drawing positions such as snaps, moving the cursor above the drawing area will detect entities suitable for selection as part of the snap specification. Once an
This very powerful tool helps to boost performance and removes the "trial and error" sequences traditionally associated with CAD systems.
However, not all three functions are required in every available mode of operation. DIAMOND allows each user to map frequently used commands to the "free" mouse buttons, applying different sets of commands for different modes. In order to prevent confusion, the three preferences currently in use are constantly displayed on the screen at a user-specified position. This reduces the number of times the cursor needs shifting to a menu for the activation of a required operation.
DIAMOND pays attention to the exact cursor position when a mouse button is pressed. For example, if an offset to an existing entity is required, and the entity is selected with the cursor located to its right, then the offset will be generated on the right hand side of this entity. If an entity is selected for a move operation, and the new position immediately specified, the selected co-ordinate will be shifted accordingly.
Additional macro control statements, such as "case", "while", "for", "goto" and "if/else", and the ability to respond to the various macro prompts by selecting geometric entities, specifying features of existing geometry, supplying relevant measurements derived from a drawing, or using DIAMOND's full range of co-ordinate definitions mean that more and more powerful macros can be written just as easily.
Macros can be nested to any required depth and may be called with variable parameters, ensuring a powerful programming language.
Macros can be, and indeed have been, written by many users, ranging from simple command repetitions to the automatic construction of whole drawing elements from variable user input.
|
|
|
|