[0001] The present invention generally relates to Computer Assisted Design (CAD) systems,
and more particularly to an inexpensive and easy to use CAD application for personal
computers.
[0002] Computer Assisted Design (CAD) and Computer Assisted Manufacturing (CAM) systems
have been used for some time in the aircraft and automotive industries to design and
manufacture aerodynamic and mechanical components. Such systems typically comprise
a main frame computer, large bulk memory systems including tape units, rigid disk
units and removable disk pack units, high resolution All Points Addressable (APA)
Cathode Ray Tube (CRT) displays, a large Random Access Memory (RAM) of sufficient
capacity to store the graphics application and address each pixel of the high resolution
displays, and Input/Output (I/O) devices such as digitizer pads with cursors and plotters.
These systems are very expensive, but their cost could be justified because of the
large sums of money invested in the design and manufacture of an aircraft or a new
automobile model. The price of CAD systems has come down significantly over the past
decade due to economies of computer and memory system manufacture, and because of
that, CAD systems are being applied to many new uses among which are architectural
design and the layout of photoresist patterns for integrated circuits. Nevertheless,
CAD systems are still quite expensive, and their use is generally limited to correspondingly
expensive applications. An illustration of such systems is given by the article entitled
"Dialogbedienung über Bildschirm und virtuelle Tastaturen bei der Bildkonstruktion",
by M. Shahata, published in Regelungs technische Praxis, Vol. 19, No. 9, September
1977. This article discloses a CAD system in which preset graphic symbols can be repetitively
drawn on a display screen, from one or several tables of graphic symbols. Each table
of symbols can be displayed in the form of a virtual keyboard, and a desired symbol
can be selected by a light pen and positioned on the screen at any desired place.
[0003] At the other end of the spectrum are the so- called personal computers based on the
microprocessors which have been developed over the past decade. These typically comprise
a mother board containing the microprocessor, a Read Only Memory (ROM) encoded with
the Basic Input/output System (BIOS) for controlling the microprocessor, a limited
amount of RAM, and a number of adapters for interfacing with various I/ O devices.
These I/O devices may include a keyboard, a medium or high resolution CRT display,
one or more floppy disk drives, and a printer such as one of the more popular dot
matrix printers.
[0004] Although personal computers are small and compact, they are capable of some fairly
sophisticated applications. They are especially well suited to business applications
such as accounting, data base management and business analysis. Recently, a number
of business applications have been developed which include graphics support. These
applications take the input or calculated numerical data and produce line graphs,
bar charts and pie charts which are much easier to interpret than the raw numerical
data. Prints of these graphical displays are made by reading out the data in the APA
display RAM to a dot
flatrix printer provided with a graphical capability or to an inexpensive pen plotter.
The latter device is also capable of generating transparencies for use in overhead
projectors. The acceptance of business applications with graphics support has been
immediate and substantial with the result that there is a considerable demand for
graphics applications which are not necessarily limited to business graphs. The ability
to generate schematic diagrams, flow charts, floor plans and similar graphic displays
would be highly desirable in the production of technical manuals, advertising layouts
and the like.
[0005] It is therefore an object of the invention to provide an inexpensive Computer Assisted
Design (CAD) application for personal computers.
[0006] It is another object of the invention to provide a CAD system for personal computers
which is easy to use and facilitates the generation of schematic diagrams, flow charts
and other free form graphics displays.
[0007] It is a further object of the invention to provide a user friendly CAD application
for personal computers which is operated by an inexpensive joy stick or similar device
and supports a dot matrix printer or inexpensive plotter.
[0008] The present invention relates to a computer system providing an interactive graphics
display comprising:
a processor
a keyboard for inputting alphanumeric characters and control data,
a memory for storing a program for controlling said processor and data which is processed
by said processor under the control of said program,
input and output adapters to which various input and output devices may be connected,
and
interactive all points addressable display means connected to an output adapter for
displaying data processed by said processor, characterized in that
cursor positioning means are provided, which are connected to an input adapter for
providing an input to said processor indicating a desired direction of movement of
a cursor symbol displayed on said all point addressable display means,
at least one table of selectable cursor graphic and/or alphanumeric characters is
stored in said memory,
said processor is responsible to said cursor positioning means for controlling said
all point addressable display means for displaying graphic and/or alphanumeric data
at any addressable point on said display means, and said processor includes:
[0009] means for selecting a cursor character from said table, the selected character being
displayed on said all points addressable display means as the cursor symbol and movable
to any point on said display means by said cursor positioning device, and
[0010] means for fixing the selected cursor symbol at a desired point on said all point
addressable display means thereby facilitating the generation of a graphics display
including any arbitrary selection of cursor symbols from said table, said cursor positioning
means being capable of moving the currently displayed cursor symbol to another location
on said all points addressable display means immediately after an image of said selected
cursor symbol has been fixed at a desired point on the display.
[0011] In summary, the objects of the invention are accomplished by making the cursor symbol
a graphics character or an A/N string which may be moved about the display screen
by means of a joystick or similar input device. Once the graphics character or A/N
string is positioned at the desired location, the operator presses a command button,
and the graphics symbol or A/N string is fixed in position on the display screen by
reading the symbol data into the display buffer at that position. The cursor symbol
can be moved again to another location on the display and another characterfixed in
position on the display by pressing the command button. Different cursor symbols can
be selected from symbol tables so that a variety of symbols can be used to generate
the graphics display. The current cursor symbol is demarked from other graphics characters
fixed in the display by continuously exclusive ORing the cursor symbol with the background
graphics data. In addition, an erase function is provided to allow the correction
of mistakes and modification of standard symbols.
[0012] The foregoing and other objects, advantages and aspects of the invention will be
better understood from the following detailed description of the invention making
reference to the accompanying drawings, in which:
Figure 1 is a system block diagram of a typical personal computer on which the application
according to the invention is operated;
Figure 2 is a block diagram of a color/graphics monitor adapter of the type which
is required to support the application according to the invention;
Figure 3 is a block diagram of a game control adapter of the type which provides a
joystick input to the personal computer shown in Figure 1;
Figure 4 is a flow diagram illustrating the procedure for loading a cursor symbol
table;
Figure 5 is a flow diagram illustrating the procedure for displaying a loaded cursor
symbol table;
Figure 6 is a flow diagram illustrating the procedure for selecting a new cursor symbol
for a loaded symbol table;
Figure 7 is a flow diagram illustrating the procedure for demarking the current cursor
symbol from other graphics symbols which may be displayed on the screen;
Figure 8 is a flow diagram illustrating the procedure for generating a circle of any
radius at any desired position on the display screen;
Figure 9 is a flow diagram illustrating the procedure for entering and positioning
A/N strings in the display;
Figure 10 is a flow diagram illustrating the procedure for erasing previously entered
graphics data on the screen; and
Figure 11 illustrates a sample display generated using the application according to
the invention.
[0013] In order to better understand the invention, a typical personal computer will be
first described with reference to Figure 1 of the drawings. The system or mother board
10 includes the microprocessor 12, ROM 14, RAM 16, and an I/0 channel 18 which includes
a number of I/O expansion slots 20 for the attachment of various options. A power
supply 22 provides power to the mother board 10 and the attached options. The mother
board 10 in addition includes a crystal oscillator, clock and control circuits 24and
a keyboard attachment 26to which a keyboard 28 is attached. In addition, the mother
board may also include other attachments such as a cassette attachment 30 and a speaker
attachment 32 to which are connected a cassette recorder 34 and a speaker 36, respectively.
The expansion slots 20 are designed to receive any of the various adapter printed
circuit cards shown in the figure. More specifically, a diskette drive adapter 38
may be plugged into one of the slots 20. This adaptor 38 is required to support one
or more diskette drives 40 and 42. A color/graphics monitor adapter 44 may also be
plugged into one of the slots 20, and this adapter supports either a home color TV
or an RGB monitor and a light pen. A parallel printer adapter 46 may be plugged into
another one of slots 20 to support, for example, a dot matrix printer 48. Finally,
a game control adapter 50 can be plugged into a remaining one of the slots 20 to support
one or more joy sticks 52 and 54. Other adapters may be plugged into the slots 20,
but only those necessary to support the present invention are illustrated.
[0014] The color/graphics adapter 44 has two basic modes of operation; alphanumeric (A/N)
and APA. In both modes, A/N characters are defined in a character box and formed from
a ROM characters. Figure 2 is a block diagram of the adapter 44which contains a display
buffer 56 and a CRT controller device 58 such as a Motorola 6845 IC. The controller
device 58 provides the necessary interface to drive a raster scan CRT. The display
buffer 56 can be addressed by both the CPU and the controller device 58 through address
latches 60 and 62, respectively. Data is read out of the display buffer to data latches
64 and 66 which provide outputs to a graphics serializer 68 and a character generator
comprising ROM 70 and an alpha serializer 72. The outputs of the seriaiizers 68 and
72 are provided to the color encoder 74 which either drives an RGB monitor directly
or provides an output to the composite color generator 76 that drives a home color
TV. The color encoder 74 also receives the output of the palette/overscan circuits
78 which provides intensity information. The composite color generator 76 receives
horizontal and vertical synchro signals from the CRT controller device 58 and timing
control signals from the timing generator and control circuits 80. The timing generator
and control circuits also generate the timing signals used by the CRT controller device
58 and the display buffer 56 and resolves the CPU and controller contentions for accessing
the display buffer.
[0015] Figure 3 is a block diagram of the game control adapter 50. The adapter comprises
instruction decode circuits 80 which may be composed of 74LS138 IC's. The data bus
is buffered by a 74LS244 buffer/driver 82. The digital inputs to this buffer/driver
are provided by trigger buttons on the joy sticks. The joystick positions are indicated
by a potentionmeter for each coordinate which must be converted to digital pulses
by resistance to pulse converter 84. This is accomplished by providing a one-shot
for each potentiometer so that the potentiometer varies the time constant of its associated
one-shot. A select output from decoder 80 causes the one shots to be fired to provide
pulse outputs to the buffer/driver 82.
[0016] Although the invention is described as using a joy stick to position a cursor symbol
on the display screen, it will be understood by those skilled in the art that other
input devices can be used including cursor keys on a keyboard. The cursor keys are,
however, inherently slow to operate, and so it is prefereable to use a joy stick or
similar type input device. Besides a joy stick, a "mouse" might just as well be used.
These devices have a ball on the bottom of a palm size controller, and the ball is
rolled on a flat surface to control the cursor position.
[0017] Typically, the ball actuates potentiometers in a manner quite similar to a joy stick.
Thus, everywhere a joy stick is mentioned in the description of the invention, those
skilled in the are will recognize that a "mouse" or other similar input device could
be substituted.
[0018] According to the invention, the cursor on the CRT display is replaced by a graphics
symbol or an A/N character string and moved by means of a joy stick or similar device.
When the graphics symbol or A/M character string are positioned on the display at
the desired position, the operator presses a trigger button on the joy stick and the
graphics symbol or A/N character string remain fixed at that location by reading the
symbol data into the display buffer. A new graphics character or A/N character string
can then be selected for the cursor symbol and the process repeated so that a schematic
diagram, flow chart or similar graphics display can be built. Previously positioned
graphics characters or A/N character strings can be erased totally or partially by
means of a box cursor and the operation of the trigger button on the joy stick. This
allows not only for the correction of errors but also the generation of modified characters
giving more flexibility to the defined character tables. In addition, since the selected
cursor symbol will remain the cursor symbol until changed even after a graphics character
or A/N character string has been positioned on the display screen, the cursor symbol
is at all times exclusive ORed with display data of all coincident pixels as it is
moved about the display screen to provide a clear and visible demarkation of the cursor
symbol from other symbols previously placed at various locations on the display screen.
Thus, the invention allows a fully interactive positioning of graphics characters
and/or A/N character strings at any addressable point on the display screen. Since
the screen information is contained in the APA display buffer, the screen can be printed
in the usual way to provide a hard copy output thereby facilitating the production
of technical illustrations, manuals or the like.
[0019] The underlying feature of the invention is the use of a graphics character as the
cursor symbol. Therefore, one and preferably more symbol tables are provided. For
example, a table could be provided for electrical symbols, another for architectural
symbols, and another for industrial process symbols. Each symbol in each table is
identified by number so that the code for a symbol includes both the table to which
it belongs as well as its number within the table. In order to select a cursor symbol,
a symbol table must first be loaded into RAM. This process is illustrated by the flow
diagram shown in Figure 4. When the operator requests a new symbol table, s/he is
first prompted for the name of the symbol table as indicated by block 86. The name
input by the operator is checked to determine if it is a valid name, that is it identifies
a table that exists in the current library of tables. This is indicated by the decision
block 88. If the name is not a valid name, an error message is displayed to the operator
at block 90 and the operator is again prompted for the name of the symbol table desired.
When a valid name is input by the operator, the old cursor symbol is exclusive ORed
with itself to delete the symbol from the display screen as indicated by block 92.
Then in block 94 the new symbol table is loaded into RAM, and in block 96, the first
graphics character is exclusive ORed with the current cursor symbol to cause the first
graphics character to be displayed as the cursor symbol. In other words, the first
graphics character is the default cursor symbol.
[0020] The default cursor symbol may not be the symbol desired by the operator, so it may
be desirable to display the selected symbol table to permit selection of the desired
symbol. This process is illustrated by the flow diagram shown in Figure 5. When the
operator requests that the symbol table be displayed, the title of the currently selected
symbol table is first displayed as indicated by block 98. The title will always be
displayed during this process no matter how the field of the display may change. In
other words, any given symbol table may be too large to fit on a single screen and
it may be necessary to scroll the display in order for the operator to view all the
symbols in the table. While the field of the display may be scrolled, the title placed
on the screen by block 98 will remain. Once the title of the table has been put up,
the numbers for the various graphics characters are next put up as indicated by block
100, and then the actual graphics characters are put up adjacent their corresponding
number as indicated by block 102. Three function keys identified as F3, F2 and F1
are monitored to detect if they have been pressed by the operator as indicated by
the decision blocks 104, 106 and 108. If for example key F3 has been pressed, then
the graphics screen is redrawn as indicated by block 110. When this is done, the operator
is presented a display of the graphics screen as s/he had generated it to that point
in time. If F2 is pressed, then the symbol table is scrolled down a predetermined
amount as indicated by block 112, but if FI is pressed, the symbol table is scrolled
up a predetermined amount as indicated by block 114. In other words, the function
keys F3, F2 and F1 give the operator control of the display screen after the symbol
table is displayed. F3 allows the operator to exit the display, and F2 and F1 allow
the operator to scroll the display.
[0021] It is not necessary to display the symbol table each time it is desired to change
the cursor symbol. The operator may already know the numbers of the symbols s/he wants
to use in generating a graphics display, or more likely, the operator will have printed
copies of the symbol tables to refer to. In any event, once a symbol table has been
loaded according to the process illustrated in Figure 4 and the first symbol of the
table is displayed as the default cursor symbol, the operator may wish to change the
cursor symbol. This is accomplished with the selection of a new symbol according to
the procedure illustrated in the flow diagram of Figure 6. The operator selects a
cursor symbol by number within the currently loaded table. The first thing that is
done when a cursor symbol selection has been made is to retrieve the table entry as
indicated in block 116 and then in block 118 validate the entry. It will be understood
that the various cursor symbol tables will not necessarily be the same size and that
a symbol number that is valid for one table may be valid for another. Should the operator
enter an invalid symbol number, an error message is displayed as indicated by block
120 and the operator is returned to the selection menu. Assuming that a valid symbol
number is selected, the old cursor symbol is deleted from the screen by exclusive
ORing the symbol with itself as indicated in block 122. Then using the table entry,
the offset into the symbol table is determined in block 124.
[0022] This provides the access to the desired symbol code for the character generator in
block 126, and in block 128, the new cursor symbol is displayed by exclusive ORing
the symbol with the background data on the screen.
[0023] This latter process is the basis for demarking the current cursor symbol from other
graphics symbols already placed in the graphics display. It will be appreciated that
since the cursor of the subject invention is not a conventional cursor mark but rather
a graphics symbol that is moved like a cursor to a desired position on the display
screen and then fixed by command, there is the possibility that the operator might
lose track of where and which of several currently displayed symbols is the cursor.
This is accomplished in part by making the cursor symbol a flashing symbol as is conventional,
but in addition, the current cursor symbol is exclusive ORed with the backround display
data to clearly demark the symbol where ever it may be on the screen from other graphics
data already in place on the screen. This procedure is illustrated by the flow diagram
shown in Figure 7. In block 130, the current X, Y position as commanded by the joy
stick control and the cursor symbol data are input and exclusive ORed. Then in blocks
132 and 134, the X and Y positions are temporarily stored as X
Old and V
oid' The current X and Y coordinates are obtained from the joy stick or cursor key input
in block 136. Then in blocks 138 and 140 X
o1d' VOid and the cursor symbol data are exclusive ORed and current X, Y and the cursor
symbol data are exclusive ORed. This removes the cursor symbol from the display, screen
and then redisplays it at its new location. The process is then repeated.
[0024] Besides the several symbol tables from which the operator can select a variety of
cursor symbols, lines can be drawn between positioned symbols by indicating the coordinates
of the end points of the line in the conventional manner. In addition, many graphics
displays will make use of circles or arcs. Rather than provide a table of circles,
a process for displaying a circle of any desired radius is provided. This process
is illustrated in the flow diagram shown in Figure 8. First the operator presses a
function key F5 to indicate that s/he desires to draw a circle. This causes a conventional
cursor symbol to appear on the screen and represents the center of the circle. The
operator can then position this center on the screen using the joy stick. Then by
pressing the trigger button on the joy stick, the circle center is fixed as indicated
by block 142. Once this is done, the X, Y coordinates of the center are obtained in
block 144, and in block 146, a circle of five units is drawn. This is the smallest
diameter circle that is displayed. The trigger button is then monitored as indicated
by the decision block 146, and if it is pressed, the circle is expanded by one unit
in block 148. In this way the operator can increase the size of the circle, and when
the desired size has been reached, the operator releases the trigger button.
[0025] As previously mentionned, the cursor symbol may be an A/N string as well as a graphics
character. The operator enters the A/N mode by making the appropriate menu selection.
The process is illustrated by the flow diagram shown in Figure 9. The number of A/N
characters entered are counted and so in block 150, the counter is set to 1. The operator
is prompted in block 152 to input text from the keyboard, and as each character is
keyed, the character equivalent of the operator's entry is put on the screen in block
154. Assuming that the "ENTER" key has not been pressed in decision block 156, the
counter is incremented by one in block 158 and then checked in decision block 160
to determine if the maximum allowed number of characters has been entered. In the
case illustrated, the maximum number of characters is sixty, but any number of characters
can be arbitrarily set. The process continues until either the operator presses the
"ENTER" key or the maximum number of characters has been entered at which time a buffer
is loaded with all the A/N characters keyed by the operator as indicated by block
162. This buffer is treated as the cursor symbol data which can be positioned anywhere
on the display screen by use of the joy stick. Thus, the A/N string is continually
exclusive ORed on the screen as the current cursor until the trigger button is pressed
by the operator as indicated by block 164. In other words, when the operator enters
the text mode from the menu, s/he first keys in the desired text, presses "ENTER"
and then moves the A/N string around the screen as the current cursor symbol. When
the text string is in the desired position, the trigger button on the joystick is
pressed and the A/ N string is fixed in the display data field.
[0026] All good designers need an eraser to correct mistakes and modify standard symbols.
The erase mode is entered by making the appropriate selection from a menu, and upon
entry into this mode, the cursor symbol is changed to a rectangular box of predetermined
dimensions. The process is illustrated by the flow diagram shown in Figure 10. After
the menu selection, the current X, Y position of the "eraser" rectangle is obtained
as indicated in block 166. In decision block 168, the trigger button on the joy stick
is monitored to determine if it has been pressed. If it has not been pressed, the
position of the "eraser" rectangle is checked again and so on while the operator moves
the "eraser" rectangle around the display screen. When the "eraser" rectangle is positioned
over that area of the display screen which is desired to be erased, the operator presses
the trigger button which causes all the display data within the "eraser" rectangle
to be set to "zeros" to blank that area of the display screen as indicated by block
170. It is also possible to move the "eraser" rectangle with the joy stick while pressing
the trigger button which will result in all display data within the path of the "eraser"
rectangle to be reset to "zeros". The procedure allows graphics data to be removed
from the display screen easily and accurately.
[0027] Figure 11 is an illustration of a graphics display constructed using the invention.
Only a few graphics symbols were used plus circles, lines and A/N strings. Each symbol
was selected from a table of symbols and then positioned at a desired location on
the display screen using the joy stick and trigger button. At the bottom of the display
is a menu from which the operator may make selections of operating modes.
[0028] From the foregoing, it will be appreciated that the invention provides an inexpensive
CAD application for personal computers which is easy to use and facilitates the generation
of many graphics displays that heretofore could be generated using only much more
expensive equipement.
1. Computer system providing an interactive graphics display comprising
a processor (12).
a keyboard (28) for inputting alphanumeric characters and control data,
a memory (14, 16) for storing a program for controlling said processor and data which
is processed by said processor under the control of said program,
input and output adapters to which various input and output devices may be connected,
and
interactive all points addressable display means connected to an output adapter for
displaying data processed by said processor, characterized in that
cursor positioning means (52) are provided, which are connected to an input adapter
for providing an input to said processor indicating a desired direction of movement
of a cursor symbol displayed on said all point addressable display means,
at least one table of selectable cursor graphic and/or alphanumeric characters is
stored in said memory,
said processor (12) is responsible to said cursor positioning means (52) for controlling
said all point addressable display means for displaying graphic and/or alphanumeric
data at any addressable point on said display means, and said processor includes
means for selecting a cursor character from said table, the selected character being
displayed on said all points addressable display means as the cursor symbol and movable
to any point said display means by said cursor positioning device; and
means for fixing the selected cursor symbol at a desired point on said all points
addressable display means thereby facilitating the generation of a graphics display
including any arbitrary selection of cursor symbols from said table, said cursor positioning
means (52) being capable of moving the currently display cursor symbol to another
location on said all points addressable display means immediately after an image of
said selected cursor symbol has been fixed at a desired point on the display.
2. System according to claim 1, further including a display buffer (56) for addressing
said all point adressable display means, and wherein said means for fixing include
means for reading the current cursor position and data into said display buffer.
3. System according to claim 1 or 2 wherein said means include a joy stick (52) and
said means for fixing further include a trigger button associated with said joy stick.
4. System according to any one of the preceding claims, further comprising:
a text buffer for storing an alphanumeric character string input to said computer
system from said keyboard (28),
means for displaying said alphanumeric character string stored in said text buffer
on said display means as a cursor symbol,
means controlled by said cursor positioning means (52) for moving said cursor symbol
to a desired location on said display means by exclusive Oring the alphanumeric character
string in said text buffer with the all points addressable data already displayed
on said display means at the location of said cursor position data thereby placing
text comprising said alphanumeric character string at said desired location on said
display means,
means in combination with said cursor positioning device for providing a user input
indicating that text is to be fixed on said display means, and
means responsive to said means in combination with said cursor positioning device
for writing said alphanumeric character string into said display buffer at the current
location of said cursor.
5. System according to claim 4 further comprising:
means for counting the number of characters in an alphanumeric character string input
by a user from said keyboard,
means for comparing the number of characters input with a predetermined number,
means on said keyboard for providing an input from the user of an indication of an
end of said alphanumeric character string, and
means responsive to said comparing means and to said means on said keyboard for storing
an input alphanumeric character string in said text buffer when either the number
of characters in said alphanumeric character string is equal to said predetermined
number or an input for the user is received by said means on said keyboard.
6. System according to any one of the preceding claims, wherein
said processor includes means for displaying the outline of a geometric figure as
said cursor symbol on said all points addressable display, said outline being movable
by said cursor positioning means (52); and
means associated with said cursor positioning means (52) are provided for erasing
all character data within said outline while said outline is positioned at or moved
through a desired location on said all points addressable display.
7. System according to claim 6 wherein said means for erasing the data within said
outline includes means for setting all data points in said display buffer corresponding
to those data points within said outline when said outline is positioned at or passes
through a desired location on said all points addressable display, to zeros.
1. Computersystem, welches eine interaktive graphische Anzeigeeinrichtung vorsieht,
enthaltend
einen Prozessor (12)
eine Tastatur (28) zum Eingeben von alphanumerischen Zeichen und Steuerdaten,
einen Speicher (14, 16) zum Speichern eines Programms zur Kontrolle des genannten
Prozessors und von Daten, welche vom genannten Prozessor unter der Kontrolle des genannten
Programms verarbeitet werden,
Eingabe- und Ausgabeadapter, an welche verschiedene Eingabe- und Ausgabegeräte angeschlossen
werden können, und
interaktive, adressierbare Mehrpunkt-Anzeigemittel, die an einen Ausgabeadapter angeschlossen
sind zur Anzeige der vom genannten Prozessor verarbeiteten Daten, dadurch gekennzeichnet,
dass
Kursorpositionierungsmittel (52) vorgesehen sind, welche an einen Eingabeadapter angeschlossen
sind, um eine Eingabe an den genannten Prozessor zu liefern, welche eine gewünschte
Bewegungsrichtung eines auf den genannten adressierbaren Mehrpunkt-Anzeigemitteln
dargestellten Kursorsymbols anzeigt,
zumindest eine Tabelle von auswählbaren Kursor-, Druck- und/oder alphanumerischen
Zeichen im genannten Speicher gespeichert ist,
der genannte Prozessor (12) den genannten Kursorpositionierungsmitteln (52) gegenüber
verantwortlich ist für die Steuerung der genannten adressierbaren Mehrpunkt-Anzeigemittel
zur Anzeige von graphischen undloder alphanumerischen Daten an irgendeinem adressierbaren
Punkt an den genannten Anzeigemitteln, und dass
der genannte Prozessor enthält
Mittel zur Auswahl eines Kursorzeichens aus der genannten Tabelle, wobei das genannte
Zeichen an den genannten adressierbaren Mehrpunkt-Anzeigemitteln als das Kursorsymbol
angezeigt wird, und durch die genannte Kursorpositionierungsvorrichtung (52) nach
jedem beliebigen Punkt auf den genannten Anzeigemitteln beweglich ist; und
Fixiermittel des ausgewählten Kursorsymbols an einem gewünschten Punkt auf den genannten
adressierbaren Mehrpunkt-Anzeigemitteln und dabei zur Erleichterung der Erzeugung
einer graphischen Anzeige, welche irgendeine willkürliche Auswahl von Kursorsymbolen
aus der genannten Tabelle beinhaltet, wobei die genannten Kursorpositioniergunsmittel
(52) in der Lage sind, das gegenwärtig angezeigte Kursorsymbol nach einer anderen
Stelle auf den genannten adressierbaren Mehrpunkt- Anzeigemitteln zu bewegen, unmittelbar
nachdem ein Bild des genannten ausgewählten Kursorsymbols an einem gewünschten Punkt
auf der Anzeigeeinrichtung fixiert worden ist.
2. System nach Anspruch 1, enthaltend ferner einen Anzeigepuffer (56) zur Adressierung
der genannten adressierbaren Mehrpunkt-Anzeigemittel, und worin die genannten Fixiermittel
Mittel zum Einlesen der gegenwärtigen Kursorposition und -daten in den genannten Anzeigepuffer
enthalten.
3. System nach Anspruch 1 oder 2, worin die genannten Mittel einen Steuerhebel (52)
beinhalten und die genannten Fixiermittel einen dem genannten Steuerhebel zugeordneten
Auslöseknopf ferner enthalten.
4. System nach einem der vorangehenden Ansprüche, enthaltend ferner:
Einen Textpuffer zur Speicherung einer alphanumerischen Zeichenfolge, welche von der
genannten Tastatur (28) in das genannte Computersystem eingegeben wird,
Mittel zur Anzeige der genannten im genannten Textpuffer gespeicherten, alphanumerischen
Zeichenfolge auf den genannten Anzeigemitteln als ein Kursorsymbol,
von den genannten Kursorpositionierungsmitteln (52) gesteuerte Mittel zur Bewegung
des genannten Kursorsymbols nach einer gewünschten Stelle auf den genannten Anzeigemitteln
durch exklusives Mischen der alphanumerischen Zeichenfolge im genannten Textpuffer
mit den adressierbaren Mehrpunkt-Daten, welche bereits auf den genannten Anzeigemitteln
an der Stelle der genannten Kursorposition dargestellt werden, wobei die Daten den
die genannte alphanumerische Zeichenfolge enthaltenden Text an die gewünschte Stelle
auf den genannten Anzeigemitteln setzen,
Mittel in Verbindung mit der genannten Kursorpositionierungsvorrichtung zur Lieferung
einer Benutzereingabe, welche anzeigt, dass der Text auf den genannten Anzeigemitteln
fixiert werden soll, und
Mittel, ansprechend auf die genannten Mittel in Verbindung mit der genannten Kursorpositionierungsvorrichtung
zum Einschreiben der genannten alphanumerischen Zeichenfolge in den genannten Anzeigepuffer
an der gegenwärtigen Stelle des genannten Kursors.
5. System nach Anspruch 4, enthaltend ferner:
Mittel zum Zählen von Zeichen in einer alphanumerischen Zeichenfolge, welche von einem
Benutzer von der genannten Tastatur aus eingegeben werden,
Mittel zum Vergleich der Anzahl von Zeicheneingaben mit einer vorbestimmten Zahl,
Mittel an der genannten Tastatur zur Lieferung von einer Benutzereingabe einer Endeanweisung
der genannten alphanumerischen Zeichenfolge, und
Mittel, welche auf die genannten Vergleichsmittel und auf die genannten Mittel an
der genannten Tastatur ansprechen zur Speicherung einer Eingabe einer alphanumerischen
Zeichenfolge im genannten Textpuffer, wenn entweder die Anzahl der Zeichen in der
genannten alphanumerischen Zeichenfolge gleich der genannten vorbestimmten Zahl ist
oder eine Eingabe für den Benutzer durch die genannten Mittel an der genannten Tastatur
empfangen wird.
6. System nach einem der vorangehenden Ansprüche, worin
der genannte Prozessor Mittel enthält zur Anzeige des Umrisses einer geometrischen
Figur als das genannte Kursorsymbol auf der genannten adressierbaren Mehrpunkt- Anzeige,
wobei der genannte Umriss durch die genannten Kursorpositionierungsmittel (52) beweglich
ist; und
den genannten Kursorpositionierungsmitteln (52) zugeordnete Mittel, die vorgesehen
sind zum Löschen aller Zeichendaten innerhalb des genannten Umrisses, während der
genannte Umriss auf der genannten adressierbaren Mehrpunkt-Anzeige an eine gewünschte
Stelle gesetzt oder durch dieselbe hindurchbewegt wird.
7. System nach Anspruch 6, worin die genannten Mittel zum Löschen der Daten innerhalb
des genannten Umrisses Mittel enthalten zum Rücksetzen aller Datenpunkte im genannten
Anzeigepuffer, welche jenen Datenpunkten innerhalb des genannten Umrisses entsprechen,
wenn der genannte Umriss auf der genannten adressierbaren Mehrpunkt- Anzeige an einer
gewünschte Stelle gesetzt wird oder durch dieselbe hindurchgeht.
1. Un système de calculateur à affichage graphique interactif, comprenant:
un processeur (12),
un clavier (28) pour entrer des caractères alphanumériques et des données de commande,
une mémoire (14, 16) pour emmagasiner un programme pour commander ledit processeur
et lesdites données qui sont traitées par ledit processeur sous la commande dudit
programme, des adapteurs d'entrée et de sortie auxquels divers dispositifs d'entrée
et de sortie peuvent être connectés, et
des moyens d'affichage interactifs adressables en tout point, connectés à un adapteur
de sortie pour afficher des données traitées par ledit processeur, caractérisé en
ce que:
des moyens de positionnement du curseur (52) sont prévus et sont connectés à un adapteur
d'entrée pour appliquer une entrée audit processeur pour indiquer la direction désirée
du mouvement d'un symbole de curseur affiché sur ledit moyen d'affichage adressable
en tout point,
au moins une table de sélection de graphiques de curseur et/ou de caractères alphanumériques
est emmagasinée dans ladite mémoire,
ledit processeur (12) répond auxdits moyens de positionnement de curseur (52) pour
commander lesdits moyens d'affichage adressables en tout point pour afficher des données
graphiques et/ou alphanumériques en n'importe quel point adressable sur lesdits moyens
d'affichage,
et en ce que ledit processeur comprend:
des moyens pour sélectionner un caractère de curseur de ladite table, le caractère
sélectionné étant affiché sur lesdits moyens d'affichage adressables en tout point
comme symbole de curseur et mobile en n'importe quel point sur lesdits moyens d'affichage
par ledit dispositif de positionnement de curseur (52), et
des moyens pour fixer le symbole de curseur sélectionné en un point désiré desdits
moyens d'affichage adressables en tout point, ce qui facilite ainsi la génération
d'un affichage graphique comprenant une sélection arbitraire quelconque des symboles
de curseur depuis ladite table, lesdits moyens de positionnement de curseur (52) pouvant
déplacer le symbole de curseur affiché à cet instant en un autre point desdits moyens
d'affichage adressables en tout point immédiatement après qu'une image dudit symbole
de curseur sélectionné ait été fixée en un point désiré sur l'unité d'affichage.
2. Un système selon la revendication 1 comprenant en outre une mémoire intermédiaire
d'affichage (56) pour adresser lesdits moyens d'affichage adressables en tout point
et dans lequel lesdits moyens de fixation comprennent des moyens pour lire la position
présente du curseur et des données dans ladite mémoire intermédiaire d'affichage.
3. Un système selon la revendication 1 ou 2 dans lequel lesdits moyens comprennent
un levier de commande (52) et lesdits moyens de fixation comprennent en outre un bouton
de déclenchement associé audit levier de commande.
4. Un système selon l'une quelconque des revendications précédentes, comprenant en
outre:
une mémoire intermédiaire de texte pour emmagasiner l'entrée d'une série de caractères
alphanumériques dans ledit système de calculateur depuis ledit clavier (28),
des moyens pour afficher ladite série de caractères alphanumériques emmagasinés dans
ladite mémoire intermédiaire de texte sur lesdits moyens d'affichage comme un symbole
de curseur,
des moyens commandés par lesdits moyens de positionnement de curseur (52) pour déplacer
ledit symbole de curseur en un point désiré sur lesdits moyens d'affichage par la
mise en condition OU exclusif de la série de caractères alphanumériques dans ladite
mémoire intermédiaire de texte, les données adressables en tout point étant déjà affichées
sur lesdits moyens d'affichage à l'emplacement desdites données de position du curseur,
ce qui place ainsi le texte comprenant ladite série de caractères alphanumériques
à l'emplacement désiré sur lesdits moyens d'affichage,
des moyens en combinaison avec ledit dispositif de positionnement de curseur pour
offrir une entrée pour l'utilisateur indiquant que le texte est à fixer sur lesdits
moyens d'affichage, et
des moyens répondant auxdits moyens en combinaison avec ledit dispositif de positionnement
de curseur pour écrire ladite série de caractères alphanumériques dans ladite mémoire
intermédiaire d'affichage à l'emplacement présent dudit curseur.
5. Un système selon la revendication 4 comprenant en outre:
des moyens pour compter le nombre des caractères dans l'entrée d'une série de caractères
alphanumériques effectuée par un utilisateur au travers dudit clavier,
des moyens pour comparer le nombre des caractères de l'entrée à un nombre prédéterminé,
des moyens sur ledit clavier pour permettre une entrée par l'utilisateur pour indiquer
la fin de ladite série de caractères alphanumériques, et
des moyens répondant auxdits moyens de comparaison aux auxdits moyens prévus sur ledit
clavier pour emmagasiner une série de caractères alphanumériques d'entrée dans ladite
mémoire intermédiaire de texte lorsque le nombre des caractères dans ladite série
de caractères alphanumériques est égal audit nombre prédéterminé ou qu'une entrée
par l'utilisateur est reçue par lesdits moyens depuis ledit clavier.
6. Un système selon l'une quelconque des revendications précédentes dans lequel:
ledit processeur comprend des moyens pour afficher le cadre d'une figure géométrique
comme ledit symbole de curseur sur ledit affichage adressable en tout point, ledit
cadre étant mobile sous la commande desdits moyens de positionnement de curseur (52)
et
des moyens associés auxdits moyens de positionnement de curseur sont prévus pour effacer
toutes les données de caractères dans ledit cadre tandis que ledit cadre est positionné
à ou déplacé au travers d'un emplacement désiré sur ledit affichage adressable en
tout point.
7. Un système selon la revendication 6 dans lequel lesdits moyens pour effacer les
données dans ledit cadre comprennent des moyens pour conditionner à zéro tous les
points de données dans ladite mémoire intermédiaire d'affichage correspondant aux
points de données dans ledit cadre lorsque ledit cadre est positionné à ou passe dans
un emplacement désiré sur ledit affichage adressable en tout point.