;;; -*- Mode:text; Fonts:(medfnt hl12b) -*- - Dials and Gauges ---------------------- Dials and Gauges is a set of object oriented graphics that allows you to develop applications which contain animated dials and gauges. It is an alternate to the package called D/DEDALUS which is available through the TI Defense Systems and Electronics Group. That package is built on TV functions, while this set is built on GWIN. With Dials and Gauges, there is enough functionality so that you can quickly and easily develop applications like flight simulators and expert systems that are tied to control panel simulations and make use of these features. A knowledge of the flavor system is assumed when using this package. Also, Dials and Gauges requires that the GWIN system be loaded in advance. Following are the steps required for loading: Loading Instructions -------------------------- 1) Do a make-system on GWIN (make-system 'gwin :noconfirm) (If not previously loaded) 2) Load a defsystem for DIALS (load "sys:public.dials;defsystem") 3) Do a make-system for DIALS (make-system 'dials :noconfirm) Dials and Gauges contains an assortment of flavors, methods, and instance variables that can used to develop your application. This software was designed to allow the user to be able to design dials and gauges interactively and be menu driven. However if you are careful, you can talk to the various flavors, methods, and instance variables and call them from your application. Here is a listing of some of the more helpful code. Dial and Gauge Flavors ---------------------------- Editable-Circular-Dial-Entity - Creates a circular dial that can change size, value, tick marks, and direction of rotation. Editable-Lineal-Dial-Entity - Creates a linear (thermometer-type) dial that can be oriented in either the horizontal or vertical position. Editable-Sector-Dial-Entity - Creates a wedge shaped semi-circle type dial. Editable-LED-Dial-Entity - Creates an led display of any size and number of segments. Editable-Character-Switch-Dial-Entity - A set of switches that were created using the font system that can be displayed and change position. *** Not tested. May not work. Needed font may be missing. *** Editable-Face-Dial-Entity - A set of routines for making dials with funny faces. *** Not tested. May not work. Needed code may be missing. *** Dial and Gauge Methods ---------------------------- :draw - Draws the particular dial or gauge you send the message to :edit-parameters - Pops up the menu that prompts you for values to edit the particular dial or gauge. :scale - Allows to you to change size of dial by sending a ratio of 1 to x. (Does not work with lineal dials, must use instance variables). :move - Moves dial to designated x and y coordinates. :set-current-value - Dynamically sets value of any gauge on screen given window and value. :set-up-editable-dial-entity - If changing instance variables is necessary, this method will make those changes stick. Dial and Gauge Instance Variables ------------------------------------- x-center - x coordinate of gauge location (center of gauge) y-center - y coordinate of gauge location (center of gauge) max-towards - orientation of lineal dial inverse-video-p - toggles dial image max-bar-value - sets maximum value of lineal dial bar-height - sets scale on lineal dial Starter-Kit-Demo -------------------- This file contains a demo that uses the dials and gauges package and contains some examples of how it can be used. To run the demo, load the file starter-kit-demo and type (dials-demo) into the Lisp Listener. The function CHANGE-VALUE-VIA-MOUSE is defined there too as a guide to those who want to use the mouse to change the value of a dial. Run that function to see what it does. Aren't you glad you use dials, don't you wish everybody did? Regards, Rene Aquilina 5/22/87