Design versus drafting
General operating tools
Design versus drafting

DIAMOND's viewports are user defined viewing areas on the graphics screen.

Permanent viewports can be activated by their given name while temporary ones can be specified on the fly by using cursor positions.

Up to 32 interactive, resizable viewports can be used to simultaneously display graphical or textual information in an interactive manner. Viewports can be associated with windows for display of graphical information, allowing the user to begin an operation in one viewport and end it in another without activating them first or any interruption to the command processes. DIAMOND's dynamic rubber banding displays will be constantly adjusted according to the cursor position within each window.

The drawing's graphical details will be automatically updated during each command sequence in all active viewports with no loss in speed.

Viewports can be used for specification of redraws and plots. They can also be used for the display of current menus and textual information such as cursor positions, menu help, current environment details or operational parameters.
Windows of opportunity

DIAMOND's windows are user-defined areas located on or outside the drawing. They can be activated at any required time in the same manner as viewports: by specific names or cursor positions.

Windows are not restricted to the current drawing size, and can cover any required area. Like viewports, they allow item definition to start in one window and finish in another, without the need to select the windows first.

Zooming in or out of current windows can be performed by either default (100%) or else user specified values. Panning in any direction of any current window can be performed by either default (50%) or else user specified values. Pan and zoom operations can also be applied to current viewports.

Current windows can be relocated by moving their centre point to any required drawing position. When set in combination with viewports, windows can be automatically expanded in order to fill the full viewport area.


Redrawing (the presentation of geometrical data on the graphics monitor), as well as undrawing (the removal of such data from the display) can be effected at any time.

The contents of the current drawing, alternative named drawings from the current or other projects, the current grid system, existing (pre-generated) plot files etc. can be drawn, added to the display or undrawn.

The display of drawing contents (current or external) can be controlled in terms of entity types, viewports, windows, layers etc. By default, the contents of the current viewport will be plotted. The current viewport may be associated with the entire drawing or a selected area (window). Setting the required window fully defines the resulting plot. Redraws may be discontinued at any time without the need to regenerate the display for subsequent redraws. Redraw levels control the way information is presented, from bounding boxes for texts and symbols to revealing exact plotter pen widths. Redraw levels set the redraw times, ranging from fast to almost instantaneous.

Where's the plot?

DIAMOND's plotting supports a comprehensive range of plotter formats. Required plots can be generated ready for immediate transmission to the system’s plotter. Alternatively, they can be stored in plot files, ready for sending to a plotter later. This means that users can store plots for cheaper overnight plotting.

By default, the contents of the current viewport will be plotted. The current viewport may be associated with the entire drawing or a selected area (window). Setting the required window fully defines the resulting plot.

Alternatively, a single plot of several different areas or windows can be generated. A required arrangement can be set by associating the required windows with screen or paper viewports. The required arrangement can be set on the screen using standard viewports and windows, then asking for a plot of all active viewports. The same arrangement can be set on the ‘plotter paper’, with required windows positioned in ‘viewport’ like paper areas. In this case, the viewports can be specified to be of a required size, or the windows can be displayed using required scaling factors. If none are specified, a scale of 1:1 will be used.

A set of active layers can be associated with every plotted window. Plots can be fitted to any required paper size, offset by any amount, scaled by any amount and rotated by multiples of 90 degrees. Required plots can be specified to be coloured or black and white. They can be optimised in terms of plotted areas and plotter pens for speed.


Within every DIAMOND drawing, geometric items are situated on one out of 250 accessible layers (over-lapping sheets of paper).

Layers can be set/reset individually (by name, number, or the selection of items residing on them), or in groups using boolean type commands. Only layers that are active can be worked on. Users can view the contents of dormant layers without activating them and contents of layers in an external drawing without having to load it first, regardless of whether or not it is in the current project. Default and current layers exist for every entity type and users can name layers as they wish.
Operating grids

Three separate grid types are available within DIAMOND: the normal or linear grid, the polar or circular grid and the isometric grid. Regardless of the grid type being used, the grid system’s origin is always mapped to the current datum point or, if one is not set, to the drawing’s origin.

Each available grid category provides for both visual and background grid systems. The normal grid can be set to differential values and rotated to any angle. All grid types can be viewed in a number of modes in any viewport, including full lines or lines and circles, dots at intersections points, or as a 'ruler' effect with every fifth and tenth mark displayed for better clarity.

Real (world co-ordinate) cursor positions, and the same cursor positions adjusted in relation to the grid system, the current datum point and the current scaling factor, can be displayed in the help viewport on the screen or the main task bar.

Co-ordinates specified by cross hairs are always rounded to the background grid, which may be turned off to provide an exact (not rounded) specification. The visual grid systems facilitate a controllable and versatile grid display.

Where is it?

The whereabouts of symbol parts, text fonts, line styles and line types or existing drawings can be located.

DIAMOND will report projects that have a drawing with a specified name, or master or project libraries that hold a specified part, font, line style or line type.

The result of an ambiguous name specification is that all drawings and symbol parts, which partially match the ambiguous name, are reported. DIAMOND will also inform the user if a specified disk data file actually belongs to any of its drawings.

Bit maps

The contents of picked viewports or the entire graphics screen can be recorded in a file in the .BMP format.

The contents of existing bit-map (.BMP) files, scaled if necessary, can be displayed at a specified position within active viewports.

List, status & report

The user can obtain lists of all the items of a designated entity type, including quantity information and full property data. For example, lists of all projects, libraries, drawings, layers, groups, geometric items, line styles, text fonts, parts and much more are available.

The user can obtain geometric and/or attribute information about designated items. The information is available for geometric items, general elements and administrative items. For example, data about the current project, libraries, drawing, group, layers, geometric entity, line style, part etc. are available.

DIAMOND users can obtain connectivity reports dealing with the contents of the current drawing or individually chosen symbols in terms of existing connections between symbol pins and the textual information associated with all the available connections.

The required information can be displayed at the terminal, written to text disk files or captured into DIAMOND variables, ready to be used for further format processing or the creation of new text entities. The amount of generated information (brief, normal or full), is always under full user control.

Drawing updates

The drawing contents can be updated (saved to the hard disk) at any time. DIAMOND can be set to either automatically update the drawing or else remind the user about a due update. It will perform one of these tasks after every user-specified number of operations.

When a drawing is updated, the contents of the current viewport will automatically be dumped into a bit-map file. These files will be later used for drawing previews prior to setting a new drawing as current. If desired, the user can return the contents of a drawing to their state at the previous update or the beginning of a working session.

Users are reminded about the need to update a drawing whenever leaving it to enter another, but may exit without doing so.

Read & write

Input into DIAMOND can be obtained from disk files. This is already used for specification of parameters for parameterised parts, definition of assemblies for merge operations, selection of required design parameters for staircases, portal frames or gridlines and so on.

Similarly, information produced by DIAMOND can be directed into specified disk files. The "read" and "write" commands within DIAMOND's macro language extend this useful facility even further, as they allow for handling file data at any necessary level, from a complete file to a precisely defined set of characters within it.

The user may, at any time, view the contents of specified disk text files. They will be unveiled a screen page at a time.

Historical facts

Automatic trace files keep a full record of all the commands and functions carried out during each working session. By using the automatically recorded trace files, users can easily rebuild any work that may already have been carried out, or prepare new macros for repetition of similar applications.

DIAMOND also maintains a record of the last fifty commands or command sequences entered. Each of the recorded entries can be recalled for execution by specifying its number or its first part. Any part of an entry recalled can be modified prior to its execution.


Users can execute operating system commands from within DIAMOND, at command line or macro level.

When an "execute" command is issued, full control is passed to the host computer's operating system. The requested operation is executed, after which control is returned to DIAMOND without termination of working sessions. DIAMOND will not check the validity of the commands passed to the operating system.

Analysing data

DIAMOND assumes that the production of a drawing is usually only the initial step in an engineering process, and that the data supplied during the drawing creation must, whenever necessary, be used during later stages of such processes. Consequently, DIAMOND can analyse the geometric contents of each drawing and the captured dependency information. This is done in order to produce part lists, bills of material, connectivity reports and so on.

The data analysing facilities obviate the need for additional, often repeated, manual labour to achieve these goals and the traditional manual inspection of the obtained results.

Part lists

DIAMOND users can obtain part lists (bills of material), based upon the contents of the current drawing in terms of standard and parameterised symbols.

Required information can be displayed at the terminal, written to text files or captured into DIAMOND variables ready to be used for further processing or the creation of text entities.

Reported part lists are constructed from standard or parameterised parts that are placed on a drawing as symbol entities treated as assemblies. Sub-assemblies within an assembly are denoted by nested symbols.

Part list reports can be generated for the whole drawing, specified groups of symbols, individual symbols or sets of symbols associated with different derivatives of the same parameterised basic part.

The bill of material facility offers a certain amount of control over the format used for the display of the generated data. Further format control can be achieved by re-directing the data into DIAMOND variables to be manipulated by external obey files. They can also be used for the production of additional information based upon the generated reports and the data contained in them.

Four different bill of material formats are available:

  • Single level bill of material, to give details of sub-assemblies or parts at the next level of assembly only.
  • Indented bill of material, to give details of all sub-assemblies or parts indented in format to show assembly structure.
  • Summarised bill of material, to give details of the total number of each part or sub-assembly, taking into account the full structure of each assembly.
  • Total bill of material, to give details of the total number of each basic part or sub-assembly included within reported assemblies.
DXF and DWG translators

ASA are committed to an open systems policy and are currently members of the Open DWG Alliance.

Being Open DWG Alliance members, ASA undertook to preserve full data compatibility between its own data structures and the widely used DWG format, covering all Autocad releases from R2.5 to R2000. Consequently, DIAMOND's superior functionality can be employed to create and manipulate a variety of data structures.

Geometric information held in DXF and DWG formats can be imported into both new and existing drawings. Imported geometric information can be scaled, shifted and relocated to specific layers during the importing process.

Similarly, DIAMOND drawings can be exported utilising the DXF format or stored in the DWG format.

In addition to the data transfer capabilities, DIAMOND has an extensive range of mapping and tidying facilities, which can be applied to drawings imported from DXF or DWG files. Large and cumbersome imports can be quickly reduced in size, without loss of any crucial data.

The drawing repair facility includes automatic mapping of obscure third party line styles and types into similar user preferred ones and vice versa. In addition, the process facilitates the removal of fully or partially overlapping entities, empty text strings or redundant polyline co-ordinates. Further repair operations allow for amalgamation of broken (divided) entities into full ones or automatic conversion of line sequences into new polyline entities.

Connectivity reports

DIAMOND users can obtain connectivity reports based upon the contents of the current drawing in terms of symbol entities and the connections made between their various pins.
Required information can be displayed at the terminal, written to text files or captured into DIAMOND variables ready to be used for further processing or the creation of text entities.

Connectivity reports are constructed parts placed on a drawing as symbols. They indicate how pins are connected, including information about pin types and textual information associated with pins or the line entities forming the pin connections. Required reports can be generated for the whole drawing or selected symbols.

Drawing revisions

The drawing history (revision) for the current drawing can be created or modified by the user.

The drawing history can be displayed at any time or placed on the drawing as a text entity which will automatically alter whenever the drawing history is expanded or modified.

The drawing history record contains the date for each entry, the type of performed revisions (drawn, checked, approved, modified or released), the name of the user responsible for the operation and optional textual data associated with each entry.

Drawing archives

The user may queue requests for drawings and libraries to be archived on backup media and removed from the hard disk, thus releasing disk space for new data files. Once the operation is performed, those drawings and libraries will be reported as archived in appropriate list reports.

Conversely, archived drawings and libraries may be retrieved from the backup media. Only those drawings and libraries that have been archived by means of the put option can later be retrieved. The "put" and "get" requests will be performed by appropriate scripts.

Design versus drafting Design versus drafting Design versus drafting