DE3417407C2 - Kreisgenerator für eine graphische Anzeigeeinheit - Google Patents

Kreisgenerator für eine graphische Anzeigeeinheit

Info

Publication number
DE3417407C2
DE3417407C2 DE3417407A DE3417407A DE3417407C2 DE 3417407 C2 DE3417407 C2 DE 3417407C2 DE 3417407 A DE3417407 A DE 3417407A DE 3417407 A DE3417407 A DE 3417407A DE 3417407 C2 DE3417407 C2 DE 3417407C2
Authority
DE
Germany
Prior art keywords
coordinates
point
register
bit data
circle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE3417407A
Other languages
English (en)
Other versions
DE3417407A1 (de
Inventor
Katsuro Akishima Tokio/Tokyo Hashidate
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP58081469A external-priority patent/JPS59206884A/ja
Priority claimed from JP8147183A external-priority patent/JPS59206981A/ja
Priority claimed from JP58081468A external-priority patent/JPS59206980A/ja
Priority claimed from JP8146783A external-priority patent/JPS59206937A/ja
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Publication of DE3417407A1 publication Critical patent/DE3417407A1/de
Application granted granted Critical
Publication of DE3417407C2 publication Critical patent/DE3417407C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/08Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam directly tracing characters, the information to be displayed controlling the deflection and the intensity as a function of time in two spatial co-ordinates, e.g. according to a cartesian co-ordinate system
    • G09G1/10Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam directly tracing characters, the information to be displayed controlling the deflection and the intensity as a function of time in two spatial co-ordinates, e.g. according to a cartesian co-ordinate system the deflection signals being produced by essentially digital means, e.g. incrementally
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/22Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using plotters
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/20Function-generator circuits, e.g. circle generators line or curve smoothing circuits

Abstract

Ein Kreis- und Kreisbogengenerator besitzt einen digitalen Differenzanalysierer (DDA) zum Empfangen von Koordinaten auf einem Kreis und einem Radius eines Kreises, der seinen Mittelpunkt an einem speziellen Punkt hat und zum Erzeugen von x- und y-Koordinaten auf dem Kreis mit dem Ursprung als Mittelpunkt. Der DDA besitzt eine Übertrags-Feststelleinheit (59, 69) zum Korrigieren der x- oder y-Koordinaten zum Darstellen einer Ellipse. Die x-Koordinaten und der Radius werden einem Addierer und einem Subtrahierer (31, 29) zugeführt, die diese Werte addieren und subtrahieren, so daß sich x-Koordinaten des äußersten rechten und linken Punktes des gewünschten Kreises ergeben. Die x- und y-Koordinaten vom DDA werden durch Vorrichtungen (41, 45, 37, 39; 43, 47, 33, 35) auf- bzw. abgezählt, bis sich vier Punkte auf dem gewünschten Kreis ergeben, die symmetrisch bezüglich des speziellen Punkts sind. Ein Mikroprozessor empfängt den Anfangs- und Endwinkel eines gewünschten Kreisbogens und berechnet Statusbitdaten, die angeben, ob Punkte der entsprechenden Quadranten darzustellen sind sowie Positionsbitdaten, die Beziehungen zwischen Koordinaten eines augenblicklichen Punkts und denjenigen des Anfangspunkts sowie denjenigen des Endpunkts angeben. Die x- und y-Koordinaten der vier Punkte des gewünschten Kreises werden gemäß Steuerdaten als Kombinationen der Statusbitdaten und der Positionsbitdaten dargestellt.

Description

% Die Erfindung betrifft einen Kreisgenerator (einschließlich einer Ellipse und Kreisbogen) für eine graphische
% Anzeigeeinheit od. dgl.
Wenn ein Kreis bei einer graphischen Anzeigeeinheit eines Personalcomputers od. dgl. gezogen werden soll,
)? dann werden Sinus- und Kosinusberechnungen durchgeführt, um genaue graphische Daten zu erhalten. Der
ti Zeitbedarf zur Berechnung der Sinus- und Kosinuswerte ist jedoch hoch. Deshalb ist es bekannt, zum Ziehen
P; eines angenäherten Kreises ein eingeschriebenes regelmäßiges Vieleck mit vorbestimmtem Innenwinkel zu ver-
:rj wenden. Auch werden Umfangspunkte eines Quadranten berechnet und für die übrigen Quadranten aufgrund
|i der Symmetrie bezüglich der jc-Achse und y-Achse und des Ursprungs gebildet, was das Ziehen des Kreises
SS beschleunigt.
!ji Im einzelnen heißt dies, daß nach Berechnung eines gewünschten Punktes zum Bestimmen der Punkte sym-
ff metrisch zu dem berechneten Punkt bezüglich der jc-Achse, der .y-Achse und des Ursprungs nur eine Vorzei-
i| chenänderung erforderlich ist, falls der Mittelpunkt des sich ergebenden Kreises mit dem Ursprung des X-Y-
j|; Koordinatensystems zusammenfallt. Ist dies jedoch nicht der Fall, dann müssen Koordinatendaten entspre-
jg chend dem Kreismittelpunkt in einem Speicher gespeichert werden, und es muß eine Addition und Subtraktion
* bezügiich der Daten des Ursprungs durchgeführt werden. Die Verarbeitung wird somit kompliziert und geht auf
jn Kosten der Verarbeitungsgeschwindigkeit.
|f Wird andererseits ein Kreis als eingeschriebenes regelmäßiges Vieleck gebildet, dann würden die Kosinus-
k. und Sinuswerte in vorgegebenen Abständen etwa um 5,10 oder 15° berechnet, wobei der Absurd umso kleiner
% sein muß, je größer der abzubildende Kreir ist. Ein unter Verwendung eines regelmäßigen Vielecis gebildeter
g Kreis ist für einen Personalcomputer ausreichend genau. Soll jedoch ein Winkel zwischen dem Bezugspunkt
|v (Ursprung) und dem Anfangspunkt eines Kreisbogens und einer Endwinkelposition berechnet werden, dann
H sind die Abstände von 5, 10 oder 15° nicht ausreichend. Es ist ein geringerer Abstand erforderlich, so daß die
H Speicherkapazität der Tabelle erhöht werden muß, was umständlich ist. Auch sind in derTabelle nur Sinus-und
P] Kosinuswerte im Bereich von 0 bis 90° gespeichert. Die zentrale Verarbeitungseinheit od. dgl. muß deshalb Fest-
|l stellen, ob der Sinus- oder Kosinuswert positiv oder negativ ist. Wenn außerdem vier Punkte, nämlich ein ?.S
% Bezugspunkt und drei weitere Punkte symmetrisch dazu gleichzeitig in dem Λ1-/-Koordinatensystem gezeich-
i'l net werden sollen, dann können die symmetrischen Punkte dem Quadranten des .Y-/-Koordinatensystems ent-
I^ sprechen oder auch nicht. Nachteilig ist ferner, daß bestimmt werden muß, objederdervier Punkte aufgezeich-
ψ net wurde oder nicht, was die Verarbeitungszeit verlängert. Im Falle des gleichzeitigen Zeichnens aller vier
■>?: Punkte in dem T-/-Koordinatensystem wird die Berechnung nur für den Punkt des ersten Quadranten diurchge-
%l führt, d. h. für den Punkt P (+x, +y). Wenn dann die Vorzeichen der Koordinaten beim Zeichnen eines Kreisbo-
'& gens zu beachten sind, dann wird die Kreisbogenerzeugungsverarbeitung kompliziert.
Jj, Der Erfindung liegt deshalb die Aufgabe zugrunde, einen Kreisgenerator anzugeben, der einen Kreis auch
'Z mit nicht mit dem Ursprung des X-y-Koordinatensystems zusammenfallenden Kreismittelpunkt mi» hoher
λ- Geschwindigkeit unter einfachem Berechnen von Punkten auf dem gewünschten Kreis erzeugt.
;|· Dabei soll insbesondere ein Kreisbogengenerator angegeben werden, der einen Kreisbogen mit hoher
•j? Geschwindigkeit unter Berechnung eines Statusbits und eines Positionsbits gemäß einer logischen Schaltungs-
y anordnung und durch Bestimmen erzeugt, ob die Kreisbogendaten gemäß der logischen Verarbeitung gezeich-
S. net wurden.
;!■ Gemäß der Erfindung werden x- und ^-Koordinatendaten des äußersten rechten und äußersten linken Punk-
% tes auf einem Kreis in einem angegebenen Koordinatensystem gemäß den Koordinatendaten berechnet, die von
■: einem digitalen Differenzanalysierer DDA stammen, sowie gemäß Radiusdaten. Auch werden die x- und
■: v-Koordinatendaten in dem vorgegebenen Koordinatensystem auf der Basis der x- und j>-Koordinatendaten
erhöht oder erniedrigt, die von dem DDA stammen, so daß sich vier Koordinatendaten ergeben, die vier Punkte :; darstellen, die symmetrisch zum Ursprung sind, so daß ein Kreis mit hoher Geschwindigkeit erzeugt werden
:'·. kann.
i,; Ist ein Anfangswinkd und ein Endwinkel eines Kreisbogens vorgegeben, dann werden ein Quadrant, r.u dem
!·■■: der Endwinkel gehört, auszulassende Quadranten und alle zu beschreibende Quadranten festgestellt, wodurch
I sich eine Statusbitkarte ergibt. Auch werden die augenblicklichen Koordinatendaten mit den Startpunkt-Koordinatendaten und den Endpunkt-Koordinatendaten verglichen und eine Positionsbitkarte erstellt. Das Statusbit !:. wird mit dem Positionsbit UND-verknüpft, so daß sich Sleuenlaten für die Kreisbogenerzeugung ergeben.
Jiί Diese Aufgabe wird gemäß der Erfindung gelöst durch einen Kreisgenerator für eine in rechtwinkligen Koc-r-
■ ■ dinaten steuerbare Darstellungsvorrichtung mit einem digitalen Differenzanalysierer zum Empfangen eines
S Radius eines Kreises und zum Erzeugen von X- und /-Koordinaten auf dem Kreis mit dem Ursprung als Mittel-
I punkt, der gekennzeichnet ist durch:
|. eine erste Vorrichtung zum Empfangen des Radius und einer Achsenkoordir.ate eines Punktes spezieller Koordinaten als ein Mittelpunkt eines gewünschten Kreises und Durchführen einer Addition und Subtraktion bezüglich des Radius und der Einachsenkoordinate, um Einaehsenkoordinaten des äußersten rechten und linken Punktes des gewünschten Kreises zu erhalten und
eine zweite Vorrichtung zum Empfangen der Einachsenkoordinaten des äußersten rechten und linken Punktes, die von der ersten Vorrichtung erzeugt wurden, sowie der Koordinate der anderen Achse des Punktes der speziellen Koordinaten und zum Erzeugen der Koordinaten von vier Punkten auf der !.gewünschten Kreis, die symmetrisch bezüglich des Punktes der speziellen Koordinaten sind gemäß den von dem digitalen Differenzanalysierer erzeugten X- und /-Koordinaten.
Ausfuhrungsbeispiele des erfindungsgemäßen Kreisgenerators werden nachstehend unter Bezugnahme auf die Zeichnung beschrieben. Es zeigen
Fig. IA und 1B Dar;!;llungen zur Erläuterung einer Kreisbogenerzeugungsvorrichtung bei einem bekannten digitalen Differenzanalysierer (DDA),
Fig. 2 ein Blockschaltbild einer Schaltung eines Kreisbogengenerators gemäß einer Ausführungsl'onn der Erfindung,
Fig. 3 ein Blockschaltbild eines DDA im einzelnen und eine Koordinatensteuereinheit in dem Generator nach Fig. 2,
Fig. 4 eine Darstellung zur Erläuterung eines Kreiserzeugungszustands,
Fig. 5 ein detailliertes Blockschaltbild einer Übertragsfeststelleinheit gemäß Fig. 3,
Fig. 6 eine Darstellung eines Kommapositions-Setzzustandes in einem Register,
Fig. 7 eine Darstellung zur Erläuterung der Arbeitsweise der Übertragsfeststelleinheit in Fig. 2,
Fig. 8 ein detailliertes Blockschaltbild einer Kreisbogensteuereinheit gemäß Fig. 2,
Fig. 9 ein detailliertes Schaltbild einer Halteeinheit gemäß Fig. 2,
Fig. 1OA und 1OB zueinander komplementäre Kreisbögen,
Fig. 11 eine Tabelle, die eine Statusbitkarte der entsprechenden Quadranten in dem Koordinatensystem darstellt,
Fig. 12A eine Tabelle, die eine Positionsbitkarte des ersten und dritten Quadranten darstellt,
Fig. 12B eine Tabelle, die eine Positionsbitkarte des zweiten und vierten Quadranten darstellt,
Fig. 13A-13E Flußdiagramme zur Erläuterung der Arbeitsweise des Kreisgenerators nach Fig. 2,
Fig. Ί4 eine Darstellung zur Erläuterung eines ganzen Kreises,
Fig. 15 eine Darstellung zur Erläuterung der Beziehungen zwischen der augenblicklichen jc-Koordinate X, und der Anfangspunkt-x-Koordinat? x, und zwischen der augenblicklichen .v-Koordinate x(. und der Endpunkt-.v-Koordinate .*,.,
Fig. I6A-16E entsprechende Darstellungen für die Erzeugung der Status- und Positionsbitformate beim Zeichnen eines Kreisbogens nach Fig. 15, und
Fig. 17 eine Darstellung eines Punktmusters eines Quadrantens, wenn der Kreis gemäß den Flußdiagrammen der Fig. 13A-13E gezeichnet wird.
Ein bevorzugtes Ausführungsbeispiel der Erfindung wird nun unter Bezugnahme auf die Zeichnungen beschrieben. Die vorliegende Erfindung verwendet eine DDA-Kreisbvgenerzeugungstechnik, wobei DDA digitaler Differenzanalysierer bedeuten soll. Ein DDA ist an sich bekannt und bewirkt die Erzeugung von Koordinatendaten eines Kreises durch Anlegen eines Radius /·, wobei die jr-^-Mittelpunktskoordinaten bei 0,0 liegen und als Ursprung genommen werden. Zuerst sei schematisch die Arbeitsweise des DDA erläutert. Gemäß F i g. 1 sei angenommen, daß ein Punkt Pn (.v„, y„) auf einem Kreis mit einem Radius r liegt. Wenn dieser Punkt um einen Winkel Δ ©gegen den Uhrzeigersinn längs des Kreises verschoben wird, dann ergibt sich ein Punkt Pn + \(x„ + ι, y„ + \) gemäß folgender Berechnung:
Xn. , = r cos(0+ ΔΘ)
= r cos Θ cos Δ Θ - r sin Θ sin Δ Θ
= xn cos Δ θ - yn sin Δ Θ (D
>·„ ., = r sin (0 + Δ Θ)
= r sin Θ cos Δ Θ + r cos Θ sin Δ Θ
= yn cos Δ Θ + x„ sin Δ Θ (2)
In den Gleichungen (D und ί2) ist der Winkel Λ Θ sehr klein. Für cos Δ Θ τ= 1 und sin Δ Θ Ψ gleich Δ ©ergibt sich
x„ - , = Xn - Δ Θ ■ y„
.)·„-! = Vn + Δ Θ ■ Xn 50
Ersetzt man ΔΘ = ε - 1'm (wobei m eine positive ganze Zahl ist) dann ergeben sich die Gleichungen:
v„ - , = yr + ε ■ Xn (4)
für 2m ~ x < r < 2"
Werden diese Gleichungen (3) und (4) jedoch ohne Modifikation verwendet, dann divergieren sie.jc„ in Gleichung (4) muß ersetzt werden durch x„ + ,. Die Gleichungen (3) und (4) werden dann umgeschrieben als:
Xn - ι = Xn - ε ■ y„ (5)
>'n - ! = }'n + ΐ ■ Xn - I (6)
Es isl bekannt, daß Werte fiir einen im wesentlichen echten Kreis aus den Gleichungen (5) und (6) auf diese Weise abgeleitet werden können.
Gemäß Fig. 2 besitzt der Kreis- und Kreisbogengenerator der Ausfuhrungsform einen Mikroprozessor 1,
einen digitalen DilTerenzanalysierer DDA 3, eine Koordinaten-Steuereinheit 5 und eine Kreisbogensteuereinheit "'. Der Mikroprozessor 1 weist auf: einen ROM-Speicher 9 zum Speichern eines permanenten Programms, mit dem der Kreisgenerator vorbestimmte Verarbeitungen gemäß den Flußdiagrammen der Fig. 13A bis I3E durchführt; einen RAM-Speicher 11, der als Arbeitsspeicher Verwendung findet; eine zentrale Verarbeilungsp.inheit CPU 15 zum Steuern des DDA 3, der Koordinatensteuereinheit 5 und der Kreisbogensteuereinheil 5 7 geiniiß dem in dem ROM-Speicher 9 permanent gespeicherten Programms; einen Eingangs-/Ausgangsanschluß 13 als Schnittstelle zwischen der CPU 15 mit dem DDA 3 der Koordinatensteuereinheit 5 und der Kreisbogensteuereinheit 7. Der Mikroprozessor 1 ist beispielsweise ein 8-Bit-Mikroprozessor Modell 8049 der Firma Intel Corp. USA. Der Mikroprozessor 1 gibt x- und ^-Koordinaten des Kreismittelpunkts sowie Daten für den Radius R des Kreises an einem Puffer 17 ab. Der Mikroprozessor 1 führt auch Übertragsdaten und Initialisierungsdaten (Anfangseinstellungsdaten) dem DDA 3 zu. Der DDA 3 berechnet die Kreis- bzw. Kreisbogendaten mit dem Ursprung als Mittelpunkt gemäß dem Algorithmus der Gleichungen (5) und (6). Die vom DDA 3 berechneten Kreisdaten werden an die Koordinatensteuereinheit 5 angelegt. Diese wandelt die Kreis- bzw. Kreisbogendaten bezüglich des Ursprungs in solche bezüglich des Punktes mit den vorgegebenen Koordinaten um. Die Kreisbogensteuereinheit 7 empfangt Anfangs- und Endewinkel vom Mikroprozessor 1 sowie den Radius R vom DDA 3 und stellt fest, welcher Quadrant bzw. welche Quadranten zur Darstellung des Kreises oder Kreisbogens verwendet werden. Die Kreis- bzw. Kreisbogendaten von der Koordinatensteuereinheii 5 und die Kreisbogensteuerdaten von der Kreisbogensteuereinheit 7 werden der Anzeigeeinheit 21 über eine Halteeinheit 19 zugeführt und von der Anzeigeeinheit 21 dargestellt. Die Anzeigeeinheit 21 kann jedoch auch durch einen x-^-Plotter (Zeichengerät) ersetzt werden.
Fig. 3 veranschaulicht ein detailliertes Blockschaltbild des DDA 3 und der Koordinatensteuereinheit 5 gemäß Fig. 2 zur Erläuterung der Arbeitsweise dieser Einheiten.
Ein „v-Register 23 speichert .v-Koordinatendaten, wie sie vom Benutzer über den Mikroprozessor 1 und eine Torschaltung G 1 angegeben wurden. Ein .v-Register 25 speichert ^-Koordinatendaten, wie sie über eine Tor-Schaltung G 2 vom Mikroprozessor 1 angegeben wurden. Ein /{-Register 27 speichert Daten, die den Kreisradius darstellen und die über eine Tor-Schaltung G 3 vom Mikroprozessor 1 zugeführt wurden. Die x- und j>-Koordinatendaten und die Radiusdaten werden durch folgenden Benutzerbefehl aufgerufen:
CIRCLE (X, Y), RADIUS (7)
Es ist zu beachten, daß der Radius als eine Anzahl von Anzeigepunkten vorgegeben ist. Die im .v- und Λ-Register 23 und 27 gespeicherten Daten werden einem Addierer 29 über Tor-Schaltungen G 4 und G 5 und einem Subtrahierer 31 über Tor-Schaltungen G 6 und G 7 zugeführt. Ein Summenausgang von dem Addierer 29 ist über die Tor-Schaltung G8 an ein jcÄ-Register 33 gelegt. Die in das AÄ-Register 33 eingebrachten Daten entsprechen den Λ-Köördinaten des ersten und vierten Quadranten A 1 und A4 gemäß Fig. 4. Diese Daten werden an den Eingang des xÄ-Registers 33 über eine Tor-Schaltung G 9 und eine -1 -Schaltung 35 zurückgeführt und über eine Tor-Schaltung G 10 an ein UND-Glied 123 (Fig. 9) angelegt. Der Subtrahierer 31 führt die Subtraktion (x - R) durch. Das Subtraktionsergebnis wird an ein AVRegisterS? über eine Tor-Schaltung GIl angelegt. Die Daten in dem AVRegister37 stellen die jc-Koordinaten des zweiten und dritten Quadranten A2 und A3 in Fig. 4 dar. Diese Daten werden an den Eingang des A", -Registers 37 über eine Tor-Schaltung G12 und eine +1 -Schaltung 39 zurückgeführt und über eine Tor-Schaltung G13 an ein UND-Glied 121 (Fig. 9) angelegt.
Andererseits werden die in dem .v-Register 25 gespeicherten Daten einem .vor-Register 41 über eine Tor-Schaltung G14 und einem .y^-Register 43 über eine Tor-Schaltung G15 zugeführt. Die Daten in dem >>orRegister 41 stellen die y-Koordinaten im ersten bzw. zweiten Quadranten A 1 bzw. A 2 dar und werden an den Eingang des Registers über eme Tor-Schaltung 16 und eine +1-Schaltung 45 zurückgeführt. Diese Daten werden auch an ein UND-Glied 117 (F i g. 9) über eine Tor-Schaltung G18 angelegt. Die Daten in dem ^1 ,,-Register 43 stellen die ^-Koordinaten im dritten bzw. vierten Quadranten A 3 und A 4 gemäß F ig. 4 dar. Diese Daten werden an den Eingang des .y^-Registers 43 über eine Tor-Schaltung G17 und eine -1-Schaltung 47 zurückgeführt sowie über eine Tor-Schaltung G19 an ein UND-Glied 119 'Fig. 9) angelegt.
Die Daten im /{-Register 27 werden einem Λχ-Register 49 über eine Tor-Schaltung G 20 zugeführt. Die Daten in dem >dx-Register49 werden über eine Tor-Schaltung G 21 einer -1-Schaltung 51 zugeführt, deren Ausgangswert an das Λχ-Register 49 angelegt wird. Die Daten in dem ,dx-Register 49 werden auch über eine Tor-Schaltung G 22 an einen Null-Detektor53 angelegt. Ein Ausgangssignal des Null-Detektors 53 wird dem Mikroprozessor 1 zugeführt. Die Daten im .d.v-Register 49 werden über eine Tor-Schaltung G 23 an einen Addierer 55 gelegt, dessen Ausgangssignal an ein /{,-Register 57 über eine Tor-Schaltung G 24 angelegt wird. Der Mikroprozessor 1 führt 0,5 als Übertragsdaten über eine Tor-Schaltung G 25 dem Λ ,-Register 57 zu. Die Daten im /{,-Register 57 gelangen über eine Tor-Schaltung G 26 an den Addierer 55 und über eine Tor-Schaltung G 27 an eine Übertragsfeststelleinheit 59. Wenn diese ein Übertragssignal von dem /{,-Register 57 feststellt, dann legt sie ein Tor-Steuersignal an die Tor-Schaltungen G16, G17 und G 29, um diese durchzuschalten.
Initialisierungsdaten, nämlich 0, werden von Mikroprozessor 1 an ein Δ ^-Register 61 über eine Tor-Schaltung G 28 angelegt. Das Ausgangssignal vom Δ v-Register 61 wird über eine + !-Schaltung 53 an seinen Eingang über eine Tor-Schaltung G 29 zurückgeführt, die von einem Ausgangssignal der Übertragsfeststelleinheit 59 gesteuert wird. Gleichzeitig wird der Ausgangswert des Δ ^-Registers 61 einem /{„-Register 67 über eine Tor-Schaltung G 30, einen Addierer 65 und eine Tor-Schaltung G 31 zugeführt. Die Übertragsdaten 0,5 werden vom Mikroprozessor 1 über die Tor-Schaltung G32 an das /{,.-Register 67 angelegt Die Daten im /{,.-Register 67 werden dem Addierer 65 über eine Tor-Schaltung G 33 und über eine Tor-Schaltung G 34 einer Übertragsfeststelleinheit 69 zugeführt Die Übertragsfeststelleinheit 69 stellt das Vorhandensein eines Übertragssignals in dem /{,.-Register 67 fest. In diesem Falle legt die Übertragsfeststelleinheit 69 ein Torsteuersignal an die Tor-Schaltungen G 9, G12
und G 21, so daß diese durchgeschaltet werden. Die Tor-Schaltungen G9, G 12 und C 21 werden von der Übcrtragsfeststelleinheit 69 und die Tor-Schaltungen G 16, G 17 und G 29 durch die Übertragsfeststelleinheit 59 gesteuert. Andere Torschaltungen werden unter Ansprechen auf ein Tor-Steuersignal vom Mikroprozessor 1 durchgeschaltet, außerdem legt der Mikroprozessor 1 selektiv den Korrekturwert an eine oder beide Übertragsfeststelleinheiten 59 bzw. 69.
Ein detailliert««·Blockschaltbild der Übertragsfeststelleinheiten59 und 69 sind in Fig. 5 veranschaulicht. Ein Korrekturregister 71 empfangt vom Mikroprozessor 1 den Korrekturwert zum Aufzeichnen der Kreisbogendaten auf einer graphischen Anzeigeeinheit gemäß den Verhältnissen der vertikalen und horizontalen Abstände bzw. Intervalle. Der Inhalt des Korrekturregisters 71 wird über eine Tor-Schaltung G 72 einem Addierer 73 zugeführt.
Der Ausgangswert eines Arbeitsregisters 75 wird über eine Tor-Schaltung G 73 dem Addierer 73 zugeführt. Der Addierer 73 addiert die Inhalte des Korrekturregisters 71 und des Arbe.itsregisters 75. Die Summe wird über die Tor-Schaltung G 71 an das Arbeitsregister 75 angelegt. Die in dem Arbeitsregister 75 gespeicherten Daten werden über die Tor-Schaltung G 74 an einen Übertragsdetektor 77 angelegt, der das Vorhandensein eines Übertragssignals feststellt. Es ist zu beachten, daß die Tor-Schaltungen G 71 bis G 74 in der Übertragsfeststelleinheit
59 unter Ansprechen auf das von dem /{,.-Regster 57 der F ig. 3 über die Tor-Schaltung G 27 zugeführte Übertragssignal gesteuert werden. I η ähnlicher Weise werden die Tor-Schaltungen in der Übertragsfeststelleinheit 69 unter Ansprechen auf das von dem n^-Register 67 der Fig. 3 über die Tor-Schaltüng G 34 angelegte Übertragssignal gesteuert.
Bei einem derartigen Aufbau der Übertragsfeststelleinheit 59 (bzw. 69) wird bei einem Verhältnis des longitu-
dinalen Punkt.abstands zum transversalen Punktabstand von 1 : 0,5 ein Übertrag von 0,5 in dem Korrekturregister 71 eingestellt. Somit haben die Korrekturdaten die gleiche Bitzahl wie die Radiusdaten in dem Korrekturregister 71. Wenn beispielsweise die Radiusdaten vier Bitdaten sind, dann ist das Komma entsprechend dem Bit 4 in Position Dp2 (Fig. 6). Bei einem Korrekturwert von 0,5 werden deshalb in das Korrekturregister 71 die binären Daten 1000 eingeschrieben. Andererseits wird der Anfangswert im Arbeitsregister 75 auf 0 eingestellt. Wenn somit das Übertragssignal vom /{.,.-Register 57 über die Tor-Schaltung 27 der Übertragsfeststelleinheit 59 zugeführt wird, dann werden die Tor-Schaltungen G71 bis G74 in Fig. 5 durchgeschaltet. Deshalb wird der Inhalt 1000 des Korrekturregisters 71 durch den Addierer 73 zum Inhalt 0000 des Arbeitsregisters 75 addiert (Fig. 7). Die Summe 1000 wird dann in das Arbeitsregister 75 eingeschrieben. Die im Arbeitsregister 75 gespeicherten Daten werden nun durch den Übertragsdetektor 77 daraufhin geprüft, ob ein Übertragssignal vorhanden ist. Der
3<i Übertragsdetektor 77 stellt ein Übertragssignal auf der Basis der Dezimalposition Dp2 gemäß Fig. 6 fest. Wenn der Inhalt des Arbeitsregisters 75 auf 1000 eingestellt ist, dann stellt der Übertragsdetektor 77 fest, daß kein Übertragssignal vorhanden ist. Wird das nächste Übertragssignal vom Är-Register 57 zugeführt, dann wird der Inhalt 1000 des Korrekturregisters 71 durch den Addierer73 zum Inhalt 1000 des Arbeitsregisters 75 addiert und die Summe 10 000 wird in das Arbeitsregister 75 eingeschrieben. Ist Bit 4 (das fünfte Bit) eingestellt, dann
erzeugt der Übertragsdetektor 77 ein Übertragsfeststellsignal und schaltet die Tor-Schaltungen G16. G17 und G29der Fig. 3 durch.
Fig. 8 stellt ein detailliertes Blockschaltbild zur Erläuterung der Arbeitsweise der Kreisbogensteuereinheit 7 dar. Ein ^-Register 79 speichert von dem Λ.ν-Register 49 der Fig. 3 über eine Tor-Schaltung G35 zugeführte Daten. Ein Anfangswinkelregister 81 speichert einen vom Mikroprozessor 1 über eine Tor-Schaltung G 41 iugeführten Anfangswinkel. Ein Endwinkelregister 83 speichert einen von dem Mikroprozessor 1 über eine Tor-Schaltung G 42 zugeführten Endwinkel. Die Anfangs- und Endwinkeldaten in den Registern 81 bzw. 83 werden einem Status-Bitgenerator 85 über Tor-Schaltungen G 43 bzw. G 44 zugeführt. Der Status-Bitgenerator 85 erzeugt ein 4-Bit-Statusbitmuster gemäß den Anfangs- und Endwinkeldaten. Das sich ergebende 4-Bit-Statusbitmuster wird in einem Statusbitregister 87 eingestellt. Das in dem Stausbitregister87 eingestellte Statusbitmuster wird über eine Tor-Schaltung G 45 und ein UND-Glied 89 einem 4-Ziffern-Register 91 zugeführt. Jede Ziffer des Registers 91 besteht aus vier Bits. Die Daten in dem Anfangs- und Endwinkelregister 81 bzw. 83 werden über Tor-Schaltungen G 46 bzw. G 47 einem Anfangs- und Endpunktrechner 93 zugeführt. Der Anfangs- und Endpunktrechner 93 berechnet den Anfangspunkt und den Endpunkt gemäß den ihm zugeführten Daten. Die berechneten Anfangs- und Endpunktdaten werden an einen Positionsbitgenerator 95 angelegt. Die Daten in dem .vc -Register 79 werden auch diesem Positions-Bitgenerator 95 über eine Tor-Schaltung G 48 zugeführt. Der Positions-Bitgenerator 95 erzeugt vier Bit-Positionsdaten, die dann in einem Positions-Bitregister97 eingestellt werden. Die Daten in dem Positions-Bitregister 97 werden über eine Tor-Schaltung G 49 und das UND-Glied 89 dem Register 91 zugeführt. Ausgangssignale von den entsprechenden Ziffern des Registers 91 werden direkt den ODER-Güedern 101,103,105 und 107 über Tor-Schaltungen G 50 bis G 53 und indirekt über Tor-Schaltungen G 54 bis G 57 und NOR-Glieder 109,111,113 bzw. 115 den ODER-Gliedern 101,103,105 und 107 zugeführt. Die Tor-Schaltungen G 50 bis G 53 und G 54 bis G 57 werden unter Ansprechen auf ein Ausgangssignal von einer Bestimmungsschaltung 99 gesteuert. Die Bestimmungsschaltung 99 vergleicht den vom Register 81 über eine Tor-Schaltung G 58 zugeführten Anfangswinkel mit dem vom Register 83 über eine Tor-Schaltung 59 zugeführten Endwinkel. Ist der Anfangswinkel größer als der Endwinkel, dann werden die Tor-Schaltungen G 54 bis G 57 durchgeschaltet. Ist jedoch der Anfangswinkel kleiner als der Endwinkel, dann werden die Tor-Schaltungen G 50 bis G 53 aktiviert. Ausgangssignale von den ODER-Gliedern 101,103,105 und 107 werden als Kreisbogensteuersignaie des ersten bis vierten Quadranten der Halteeinheit 19 (Fig. 2) zugeführt.
Fig. 9 zeigt ein detailliertes Schaltbild der Halteeinheit Vi der Fig. 2. Ein Nicht-Null-Detektor 125 empfängt die von den ODER-Gliedern 101,103,105 urrf 107 der Fig. 8 zugeführten Kreisbogensteuerdaten A 1 bis A 4.
Der Nicht-Null-Detektor 125 prüft die vier Bit-Kreisbogensteuerdaten aller vier Quadranten, ob alle Bits Null sind odernicht. Ist eines der Bits der vier Bitdaten auf 1, dann veranlaßt derNicht-NuII-Detektor 125 eine Durchschaltung einer entsprechenden der Tor-Schaltungen G 62, G 63, G 60 und G 61, so daß ein Zeitgabesignal von einem Zeitgabegenerator 127 an entsprechende zwei von ODER-Gliedern 129,131,133 und 135 angelegt wird.
Wenn insbesondere die Kreisbogensteuerdaten dem ersten und/oder zweiten Quadranten entsprechen, dann empfangt das ODER-Glied 129 ein Zeitgabesign&l. Wenn die Kreisbogensteuerdaten dem dritten und/oder vierten Quadranten entsprechen, dann empfängt das ODER-Glied Ul das Zeitgabesignal. Wenn in ähnlicher Weise das Krcisbogensteuersignal dem zweiten und/oder dritten Quadranten entspricht, dann empfangt das ODElR-Glied 133 das Zeitgabesignal. Wenn schließlich das Kreisbogensteuersignal dem ersten und/oder vierten Quadranten entspricht, dann empfängt das ODER-Glied 135 das Zeitgabesignal. Alle Ausgangssignale der ODEIR-Glieder 129,131,133 und 135 werden einem Eingang eines entsprechenden der UND-Glieder 117,119,121 und 123 zugeführt. Die in dem >orRegister 41 dem v^-Register 43, dem x^Register 37 und dem xÄ-Register 33 gespeicherten Daten werden dem anderen Eingang eines entsprechenden der UND-Glieder 117,119,121,123 über eine entsprechende der Tor-Schaltungen G18, G19, G13 und G 10 zugeführt. Sind somit Kreisbogendaten, die in dem ersten und zweiten Quadranten zu zeichnen sind, vorhanden, dann erzeugt das UND-Glied 1J7 positive jz-Kcordinatendaten. Sind die Kreisbogendaten in detn dritten und vierten Quadranten zu zeichnen, dann erzeugt das UND-Glied 119 negative .y-Koordinatendaten. Sind die Kreisbogendaten in dem zweiten und dritten Quadranten, dann erzeugt das UND-Glied 121 negative x-Koordinatendaten. Liegen die zu zeichnenden Daten in dem ersten und vierten Quadranten, dann erzeugt das UND-Glied 123 positive x-Koordinatendaten. Ausgangssignale der UND-Glied 117, 119, 121 und 123 werden einer Halteschaltung 137 zugeführt, die vorbestimmte Kreisbogenkoordinaienuaien unier Ansprechen auf vom Zeiigabegenerator 127 zugeführte Zeitgabesignale erzeugt.
Die Arbeitsweise der Kreisbogen-Steuereinheit 7 gemäß Fig. 8 soil nun erläutert werden.
Der Mikroprozessor 1 stellt den Anfangs- und Endwinkel des Kreisbogens und seinen Radius gemäß eines Benutzerbefehls (8) fest:
CIRCLE (χ, y), RADIUS, START ANGLE, END ANGLE (8)
wobei χ und y die x- und ^-Koordinaten sind, die vom Benutzer aufgerufen werden und dem Mittelpunkt des Kreisbogens entsprechen, wobei RADIUS der Radius des Kreisbogens START ANGLE der Anfangswinkel des Kreisbogens und END ANGI E der Endwinkel des Kreisbogens ist.
Der Mikroprozessor 1 muß feststellen, in welchem Quadranten der durch den Befehl angegebene Anfangsund Endwinkel liegt. Diese Feststellung kann aufgrund folgender Berechnung durchgeführt werden: Fällt, wie in Fig. 1OA der Anfangswinkel Θ, in den ersten Quadranten und werden hiervon 90° abgezogen, dann ist das Ergebnis negativ. Wird jedoch das Ergebnis positiv, dann muß der Anfangswinkel 0, im zweiten oder nachfolgenden Quadranten liegen. Von dem Ergebniswert werden wiederum 90° zur Durchführung einer weiteren Feststellung abgezogen. Dieser Ablauf wird solange durchgeführt, bis das Ergebnis negativ wird, wodurch festgestellt wird, in welchem Quadranten der Anfangswinkel liegt. Die gleiche Verarbeitung wird bezüglich des Endwänkels durchgeführt. Als nächstes werden die Koordinaten (xs, yj des Anfangspunkts und die Koordinaten (je,, y,) des Endpunkts bestimmt. Die ^-Koordinaten xs des Anfangspunkts werden gemäß dem cos des Anfangswinkels bestimmt. Die x-Koordinate xe kann auf die gleiche Weise berechnet werden. A^ch wird die y-Koordinate des Anfangs- bzw. Endpunkts gemäß sin des Anfangs- bzw. Endwinkels berechnet.
Die Kreisbogensteuerdaten werden dann gemäß dem festgestellten Ergebnis erzeugt, um zu bestimmen, in welchem Quadranten die zu zeichnenden Anfangs- und Endpunkte liegen. Die Kreisbogensteuerdaten bestehen aus Statusbitdaten und Positionsbitdaten. Die Statusbitdaten bestehen aus fünf Zuständen, deren Bit>onfiguration in F i g. 11 veranschaulicht ist. Die Statusbitdaten werden für jeden Quadranten erzeugt, für den festgestellt wird, daß darin der Anfangs- und Endwinkel liegt. Die fünf Zustände werden wie folgt definiert:
(1) ALL WRITE - Status der anzeigt, daß die Kreisbogendaten einen gegebenen Quadranten voll überdecken. Soll beispielsweise ein Kreisbogen gemäß Fig. 1OA gezeichnet werden, dann entsprechen der zweite und dritte Quadrant den gegebenen Quadranten. In diesem Falle wird MSB (Bit 3) gesetzt.
(2) START ANGLE - Status zeigt an, daß der Anfangswinkel in einen gegebenen Quadranten fällt. In Fig. 1OA entspricht dieser Quadrant dem ersten Quadranten A 1. Somit wird in diesem Falle das LSB-Bit (Bit 0) gesetzt.
(3) END ANGLE - Status zeigt an, daß der Endwinkel in einen gegebenen Quadranten fällt. In Fig. 1OA bedeutet dies, daß der gegebene Quadrant der vierte Quadrant A 4 ist. In diesem Falle wird Bit 1 gesetzt.
(4) SKIP - Status zeigt an, daß in einen gegebenen Quadranten keine Kreisbogendaten zu zeichnen sind. Der zweite und dritte Quadrant A 2 und A 3 in Fi g. 1OB entspricht den gegebenen Quadranten. In diesem Falle wird kein Bit gesetzt.
(5) START AND END ANGLE - Status zeigt an, daß der Anfangs- und Endwinkel in einem gegebenen Quadranten liegt. In diesem Falle wird Bit 2 gesetzt.
Die angegebenen Status-Konfigurationen werden auf den Fall angewendet, bei dem der Anfangswinkel Q5 kleiner als der Endwinkel 0, ist. Ist jedoch der Anfangswinkel Q5 größer als der End winkel Qe (d. h., wenn ein Kreisbogen gemäß Fig. 1OB zu zeichnen ist), dann werden die Status-Konfigurationen zum Zeichnen des Kreisbogens gemäß Fig. 1OA invertiert.
Die Positionsbitdaten werden als Daten zur Bestimmung erzeugt, ob die Kreisbogendaten in Punkteinheiten zu zeichnen sind oder nicht, nachdem die augenblickliche jc-Koordinate xc verglichen wird mit den x-Koordinaten xs und xe des Anfangs- und Endpunkts. Die Positionsbitdaten werden auch unabhängig erzeugt für den ersten bis vierten Quadranten. Bitkonfigurationen der Positionsbitdaten sind in den Fig. 12A und 12B veranschaulicht. Fig. 12A zeigt die Bitkonfiguration für den ersten und dritten Quadranten und die Fig. 12B die Bitkonfiguration für den zweiten und vierten Quadranten. Die gleichen Muster werden für den ersten und drit-
ten Quadranten oder zweiten und vierten Quadranten angewandt, da das Paar aus dem ersten und dritten Qua- ||
dranten sowie das Paar aus dem zweiten und vierten Quadranten symmetrisch bezüglich des Ursprungs sind, so fei
daß nur die Vorzeichen umzukehren sind. Auf diese Weise kann für jedes Paar die gleiche Berechnung durchge- Si
führt werden. Vier Arten von Positionsbitdaten können wie folgt definiert werden: $
Ä
(1) Al Al A3 A4 S 1111 1000 1111 1000 i
wobei (Absolutwert der jc-Koordinate des Endpunkts) < (x-Koordinate des augenblicklichen Punkts) < (x-Koor- f:
dinate des Anfangspunkts) ΐ
(2) Al Al A3 A4 I 1001 1010 1001 1010 I
wobei (x-Koordinate des augenblicklichen Punkts) < (Absolutwert der x-Koordinate des Anfangspunkts) und ϊ
(x-Koordinate des augenblicklichen Punkts) < (x-Koordinate des Endpunkts)
(3) Al Al A3 A4 -\ 1010 1001 1010 löOi H
wobei (x-Koordinate des augenblicklichen Punkts) > (der Absolutwert der x-Koordinate des Anfangspunkts) und (x-Koordinate des augenblicklichen Punkts) > (Absolutwert der x-Koordinate des Endpunkts)
(4) Al Al A3 A4
1000 1111 1000 1111
wobei (Absolutwert der x-Koordinate des Anfangspunkts) < (x-Koordinate des augenblicklichen Punkts)
< (x-Koordinate des Endpunkts).
Diese Bitmuster sind voreingestellt, so daß die Kreisbogendaten in Einheiten von Quadranten gezeichnet werden, wenn sie mit den Status-Bitdaten UND-verknüpft wurden. Diese Bitmuster sind in Matrixform in den F ig. 12A und 12B für das Paar erster und dritter Quadrant sowie das Paar zweiter und vierter Quadrant ausgedrückt. Anhand der F i g. 13 A bis 13E wird nun die Arbeitsweise des Kreis- bzw. Kreisbogengenerators erläutert. Es sei angenommen, daß ein Kreis darzustellen ist. In Schritt 141 der F ig. 13 A wird ein Benutzerbefehl für die Darstellung eines Kreises (gegebenenfalls Ellipse) oder Kreisbogens festgestellt. In Schritt 143 stellt der Mikrocomputer fest, ob der Benutzerbefehl sich auf einen Kreis oder einen Kreisbogen richtet. Soll ein Kreis dargestellt werden, dann wird die x-Koordinate, die y-Koordinate und der Radius R im Schritt 145 über die Tor-Schaltungen Gl1Gl bzw. G 3 in das x-Register 23, das ^-Register 25 und das Α-Register 27 geladen. Wird beispielsweise ein 8-Punkt-Kreis gezeichnet, dann ist gemäß Fig. 6 die O-Bit-Position als Kommaposition Dp] gegeben und der Binärwert 1000 (Dezimal 8) wird in dem /{-Register 27 eingestellt Im Schritt 147 werden die x-Koordinate des Kreismittelpunkts und der Radius R addiert, so daß sich die x-Koordinate des äußersten rechten Punkts des Kreises ergibt. Der Radius R wird dann von der x-Koordinate des Kreismittelpunkts subtrahiert, so daß sich die x-Koordinate des äußersten linken Kreispunktes ergibt. Hierbei öffnet gemäß Fig. 3 der Mikroprozessor 1 die Tor-Schaltungen G 4, G 5, G 6, G 7, G 8 und CIl. Die Inhalte des x-Registers 23 und des Λ-Registers 27 werden mittels des Addierers 29 addiert und die Summe wird dann in dem xÄ-Register33 eingestellt. Gleichzeitig wird der Inhalt des x-Registers 27 von demjenigen des /{-Registers 23 abgezogen und das Subtraktionsergebnis wird in das xt-Register 37 geladen. Auch öfmet der Mikroprozessor 1 die Tor-Schaltungen G14 und G15, um die_y-Koordinatendaten in das JO^-Register 41 und das > >t,D-Register 43 zu laden. Im Schritt 149 öffnet der Mikroprozessor 1 die Tor-Schaltungen G10, G13, G18 und G19, um die x- und j>-Koordinatendaten in den ^-Register 33 dem Xi-Register 37, dem >orRegister 41 und dem .y^o-Register 43 über die UND-Glieder 117,119,121 und 133 und die Halteschaltung 137 (F i g. 9) der Anzeigeeinheit 21 zuzuführen. Zu diesem Zeitpunkt sind die y-Koordinatendaten des Mittelpunkts Q in den yoy- und .y^-Registern ohne Modifikation gespeichert und ein Maximalpunkt P1 längs der x-Achse, der durch den Inhalt des xs-Registers 33 angegeben wird, und cm Minimumpunkt P2 längs der x-Achse, der durch den Inhalt des xt-Registers 37 angegeben wird, wird gemäß Fig. 4 gezeichnet.
In Schritt 151 öffnet der Mikroprozessor 1 die Tor-Schaltung (720, um den Radius R aus dem /{-Register 27 in das Δ x-Register 49 zu übertragen. Der M ikroprozessor 1 öffnet dann die Tor-Schaltungen G 25, G 32, G 28, um die Übertragsdaten 0,5 in den /?v- und R,.-Registern 57 bzw. 67 und den Anfangswert 0 in dem A j»-Register61 einzustellen. Die Übertragsdaten werden dann in die Rx- und /{,-Register 57 und 67 eingeschrieben, so daß das Komma, wie in F ig. 6 gezeigt, in der Bit 4 (/^-Position angeordnet wird. Der Binärwert 1000 wird in die ent-
sprechenden Register eingeschrieben. Im Schritt 153 werden die Tor-Schaltungen G 30, G33undG31 geöffnet, um die in dem J>-Register61 und dem Λ ,.-Register 67 gespeicherten Daten mittels des Addierers 65 zu addieren. Die Summe wird in das Λ ,-Register 67 eingeschrieben. Im vorliegenden Falle ergibt sich eine Binäraddition von 0000+ 1000= 1000. Der Binärwert 1000 wird in das «„-Register 67 eingeschrieben. Im Schritt 155 öffnet der Mikroprozessor 1 die Tor-Schaltung G 34, um den Inhalt des /{„-Registers 67 auszulesen und der Übertragsfest-
Stelleinheit 69 zuzuführen, die feststellt, ob ein Übertragssignal vorhanden ist oder nicht. Die Übertragsdatenfeststellung wird derart durchgeführt, daß die Kommaposition in der ß^-Position in dergleichen Weise eingestellt wird, wie das Einschreiben der Übertragsdaten gemäß F i g. 6. Wenn der Inhalt des /{,-Registers 67 auf 1000 eingestellt ist, dann wird kein Übertragsfeststellsignal erzeugt. Wenn somit kein Übertragssignal vorhanden ist,
dann geht der Ablauf zu Schritt 171, um die Tor-Schaltungen G 23, G 26 und G 24 zu öffnen. Die Inhalte 1000 des A x-Registers 49 und des Äx-ReS'sters 57 werden durch den Addierer 55 addiert. Die Summe 10 000 wird in das R .-Register 57 eingeschrieben. Im Schritt 173 öffnet der Mikroprozessor die Tor-Schaltung G 27, um den Inhalt des R^-Registers 57 auszulftsen und an die Übertragsfeststelleinheit 59 anzulegen, damit festgestellt wird, ob ein Übertragssignal vorhanden ist. Diese Feststellung wird derart durchgeführt, daß die Kommaposition in der Dpr-Position eingestellt wird, in der gleichen Weise wie bei der Übertragsfeststelleinheit 69. Ist der Inhalt des Λ ,-Registers 57 auf 10 000 eingestellt und Bit 1 ist in derD^-Position eingestellt, dann erzeugt die Übertragsfeststelleinheit 59 das Übertragsfeststellsignal. Dieses Übertragsfeststellsignal schaltet die Tor-Schaltung G 29 durch. In Schritt 169 wird der Inhalt 0000 des A^Registers 61 mittels der+!-Schaltung 63 um eins erhöht. Die +!-Schaltung 63 erzeugt die Daten 0001. Im Schritt 175 öffnet der Mikroprozessor 1 die Tor Schaltungen (772 und G 73 in derÜbertragsfeststellemheit59, um die Inhalte des Arbeitsregisters 75 und des Korrekturregisters 71 zu addieren. Soll eine Ellipse mit großer Achse in Vertikalrichtung gezeichnet werden, dann stellt der Mikroprozessor 1 den Korrekturwert, z. B. 0,5, in dem Korrektlirregister 71 ein. Im Schritt 177 wird die Tor-Schaltung G 74 (F i g. 5) geöffnet, um den Inhalt des Arbeitsregisters 75 zum Übertragsdetektor 77 zu übertragen, der ein Übertragsfeststellsignal erzeugt.
Das vom Übertragsdetektor 77 erzeugte Übertragsfeststellsignal schaltet die Tor-Schaltungen G16 und G Yl durch. Im Schritt 179 wird derlnhalt des j>0l-Registers 41 mittels der+1-Schaltung 45 um 1 erhöht und der Inhalt des jiy^-Registers 43 wird mittels der -1-Schaltung47 um 1 erniedrigt. Hierauf werden im Schritt 183 die Tor-Schaltungen G10, G13, G18 und (719 geöffnet, um die Daten aus dem xÄ-Register 33, dem ^-Register 37, dem JO^-Register 41 und dem j'{/ß-Register43 über die Halteschaltung 137 der Anzeigeeinheit 21 zur Darstellung der Kreisdaten zuzuführen. Wie Fig. 4 zeigt, werden mittels der Anzeigeeinheit 21 x- und ^-Koordinaten im ersten Quadranten A1 gemäß den Inhalten der xR- und >'0^Register 33 und 41, die x- und j»-Koordinaten im zweiten Quadranten A 2 gemäß den Inhalten des xL- und JO^Register 41 und 37, die x- und ^-Koordinaten in dem dritten Quadranten A 3 gemäß den Inhalten des xL- und .p^-Registers 37 und 43 und die x- und .^-Koordinaten im vierten Quadranten A 4 gemäß den Inhalten des xR- und j^-Registers 33 und 43 dargestellt. Auf diese Weise werden Kreisdaten bezüglich der Punkte P1 und P2 auf derx-Achse der F ig. 4 gezeichnet. Hierauf wird in Schritt 185 die Tor-Schaltung G 22 geöffnet, um den Inhalt des A x-Registers 49 auszulesen und dem Null-Detektor 53 zuzuführen, der feststellt, ob die Daten 0 sind oder nicht. Das Ergebnis wird dem Mikroprozessor 1 zugeführt. Ist der Inhalt des A x-Registers 49 nicht Null, dann geht der Ablauf zurück zu Schritt 153 und die Verarbeitung wird in der gleichen Weise wie zuvor beschrieben, wiederholt. In Schritt 153 wird bei Erzeugung des Übertragssignals der inhalt der Ry und A j»-Register67 und 61 addiert und der Ablauf geht nach Schritt 157, bei dem die Tor-Schaltung (721 unter Ansprechen auf das Übertragsfeststellsignal von der Übertragsfeststelleinheit 69 geöffnet wird, so daß der Inhalt des A x-Registers 49 mittels der -1-Schaltung 51 um 1 verringert wird. Hierauf werden in Schritt 159 die Tor-Schaitungen 72 und 73 in der Übertragsfeststeiieinheit 69 geöffnet, um den Inhalt des Arbeitsregisters 75 und des Korrekturregisters 71 zu addieren. Es ist zu beachten, daß der Korrekturwert, z. B. 0,5 vom Mikroprozessor 1 in das Korrekturregister 71 eingebracht wird, wenn eine Ellipse mit vertikaler großer Achse zu zeichnen ist. Im Schritt 161 wird die Tor-Schaltung G 74 geöffnet, so daß der Inhalt des Arbeitsregisters 75 an den Übertragsdetektor 77 angelegt wird. Als Ergebnis wird vom Übertragsdetektor 77 ein Übertragsfeststellsignal erzeugt.
Das von der Übertragsfeststelleinheit 69 erzeugte Feststellsignal schaltet die Tor-Schaltungen G 9 und G12 durch, so daß der Inhalt des xÄ-Registers 33 mittels der -1-Schaltung 35 um 1 verringert und der Inhalt des Χ/,-Registers 37 mittels der + 1-Schaltung 39 um 1 erhöht wird. Der Ablauf geht zu den Schritten 165 und 167, in denen die gleichen Operationen durchgerührt werden wie in den Schritten 171 und 173.
Hierauf folgen im Ablauf die Schritte 175 bis 185. Die Schritte 153 bis 185 stellen eine Folge des Zeichnens eines Punktes der Kreisdaten dar und werden wiederholt. Insbesondere werden die Daten des Radius R einer Schaltung zugeführt, die aus dem A x-Register 49, dem A^-Register 61, dem R V-Register 57, dem Λ,.-Register 67, den Addierern 65 und 55, der + 1-Schaltung 63 und der - 1-Schaltung 51 besteht, wodurch DDA-Werfe des Kreises mit dem Ursprung als Mittelpunkt berechnet werden. Die DD Α-Berechnung wird gemäß den Gleichungen (5) und (6) durchgeführt und die Änderungen in denx- und ^-Koordinaten, die sich am DDA ergeben, werden den Registern 33,37,41 und 43 zugeführt, so daß sich Kreisdaten des Punktes Q als Kreismittelpunkt ergeben, so Wie ϊη diesem Falle Fig. 4 zeigt, beginnt der Kreisbogen an den Punkten P{ und P2 derx-Achse. Da die obere und untere Figur symmetrisch zurx-Achse ist, können die Koordinaten der beiden Punkte durch eine einzige Operation gleichzeitig erhalten werden. Der Inhalt (Radius R) des A x-Registers 49 wird nacheinander in Einheitsschritten durch den Ablauf gemäß der Fig. 13A bis 13E verringert, bis 0 erreicht wird. Der Inhalt 0 wird durch den Null-Detektor 53 festgestellt. Empfangt der Mikroprozessor 1 das Nullfeststellsignal, dann ist der Ablauf beendet. Ein Punktzeichnen für nur den ersten Quadranten des Kreises, der gemäß den Flußdiagrammen gezeichnet wird, ist in F i g. 17 veranschaulicht. Die Punktdaten können gleichzeitig in dem zweiten, dritten und vierten Quadranten in der gleichen Weise wie im ersten Quadranten dargestellt werden. Die Berechnung der Daten Tür Rx, Ax, R}. und der x- und ^-Koordinaten ist in Schema I dargestellt.
Schema I
(Übertrag)
Rx
Ax
cy (Übertrag)
Ay
(x,y)
1000
1000
0000 1000
0000 1000
1000 1000
1000 1000
0000 1000
0000 1000
1000 1000
1000 1000
0000 1000
0000 Olli ©
Olli Olli
Olli Olli
1110 Olli
1110 Olli
0101 Olli
0101 Olli
1100 Olli
1100 Olli
0011 Olli
0011 Olli
0011 0110©
1001 0110
1001 0110
1111 0110
1111 0110
cy
cy
1000 0000 (8,0)
1000 0000
1000 0001© (8,1)
1001 0001
1001 0001
1010 0001
1010 0010© (8,2)
1100 0010
1100 0010
1110 0010
1110 0011© (8,3)
0001 0011
0001 0011
0100 0011
0100 0011
Olli 0011
Olli 0100© (7,4)
1011 0100
1011 0100
1111 0100
1111 0101 © (7,5)
1111 0101
0100 0101 (6,5)
0100 0101
1001 0101
1001 0101
1110 0101
10
Fortsetzung
O' Rx Ax cy Ry Ay (χ, y)
(Übertrag) (Übertrag)
cy
cy
0101 0110
0101 0101©
1010 0101
1010 0101
1111 0101
1111 0100 (T-
0011 0100
0011 0100
Olli 0100
Olli 0100
1011 0100
1011 0011©
1110 0011
1110 0011
0001 0011
0001 0011
0001 0010©
0011 0010
0011 0010
0101 0010
0101 0001©
0110 0001
0110 0001
Olli 0001
Olli 0000©
cy
cy
cy
1110 0110© (6,6) IC
0100 0110 (5,6)
0100 0110 15
1010 0110
1010 0110 20
0000
0000
0110
Olli ©
(4,6)
(4,7)
25
Olli
Olli
Olli
Olli
30
1110
1110
Olli
Olli
0101 Olli (3,7) 35
0101 Olli
1100 Olli 40
1100
1100
1000©
1000
(3,8) 45
0100
0100
1000
1000
(2,8)
1100 1000 50
1100 1000
0100 1000 (1,8) 55
010Ü
1100
1000
1000
60
1100 1000
0109 1000 (0,8)
cy
Eine Kreisfläche erhält man durch Erzeugen von Zeiiensegmentdaten zwischen den Koordinaten (·>«* JV)K> ~ (*L· yov) des ersten und zweiten Quadranten Al und Al und zwischen den Koordinaten 65 (*( . yui)) ~ (*ä>jW des dritten und vierten Quadranten A 3 und A 4. Bei jeder Erzeugung von Punkten des Kreises wird das entsprechende Zeilensegment zwischen den Punkten durchgezogen. E;ne Kreisfläche oder eine Ellipsenlläche kann somit mit hoher Geschwindigkeit erzeugt werden.
11
Unter Bezugnahme auf die Fig. 13A bis 13E soll das Darsteilen eines Kreisbogens beschrieben werden. Die Schritte, die bei der Kreis- oder Ellipsendarsteilung bereits beschrieben wurden, sind weggelassen. Zum Darstellen eines Kreisbogens werden im Schritt 187 die Daten in A x-Register 49 als die x-Koordinatendaten X1. in dem ^..-Register 79 der F i g. 8 über die Tor-Schaltung G 35 eingestellt. Der Mikroprozessor 1 stellt die Anfangswinkeldaten in dem Anfangswinkelregister 81 und die Endwinkeldaten in dem Endwinkelregister 83 ein. Die Schritte 187 bis 223 stellen, einen Ablauf dar, bei dem festgestellt wird, welcher Quadrant bzw. welche Quadranten den Anfangs- und Endwinkel enthalten, und mit dem der Anfangswinkel mit dem Endwinkel verglichen wird. Der Vergleich zwischen dem augenblicklichen Punkt und den Anfangspunkt und zwischen dem augenblicklichen Punkt und dem Endpunkt ermöglicht die Erzeugung des Positionsbitmusters, wie dies durch die Schritte 225 bis 237 angegeben ist.
Im Schritt 189 wird ein Quadrantenzeiger auf 0 gestellt. Im Schritt 191 werden die Tor-Schaltungen G58 und G59 (Fi g. 8) geöffnet, um der Bestimmungsschaltung 99 den Anfangs- und Endwinkel zuzuführen, die entsprechend indem Anfangs-und Endwinkelregister 81 und 83 eingestellt werden. Die Bestimmungsschaltung 99 vergleicht den Anfangswinkel mit dem Endwinkel und bestimmt, ob der Anfangswinkel größer als der Endwinkcl ist. Ist die Antwort im Schritt 191 J A, dann wird im Schritt 193 der Endwinkel und der Anfangswinkel invertiert Im Schritt 195 werden von dem Anfangswiiikcl 90" subtrahiert und das Vorzeichen des sich ergehenden Winkels bestimmt. Ist der Ergebniswinkel im Schritt 197 der Fig. 13D nicht negativ, dann gibt der Mikroprozessor 1 an, daß der Anfangswinkel nicht in einem gegebenen Quadranten liegt. Im Schritt 213 wird eine Statusbitkarte zum Überspringen des gegebenen Quadranten erstellt. Im Schritt 215 wird der Quadrantenzeiger um 1 erhöht und der Ablauf geht zurück zum Schritt 195. Der gleiche Vorgang wird dann wiederholt. Ist die Antwort im Schritt 197 JA, dann legt der Mikroprozessor 1 fest, daß der Anfangswinkel in dem gegebenen Quadranten vorhanden ist. Im Schritt 199 wird eine Statusbitkarte erstellt, wobei der Anfangswinkel in den gegebenen Quadranten vorhanden ist. In den Schritten 201 und 203 stellt der Mikroprozessor 1 außerdem fest, ob der Endwinkel im gleichen Quadranten vorhanden ist. Wenn insbesondere 90° vom Endwinkel in Schritt 201 abgezogen wurden und der Resultatwinkel in Schritt 203 negativ wird, dann werden Statiubitdaten (0100 in Fig. 11) im Schritt 217 erstellt, wobei die Statusbitdaten wiedergeben, daß der Anfangs- und Endwinkel im gleichen Quadranten liegt. Der Ablauf geht dann nach Schritt 221. Ist die Antwort in Schritt 203 jedoch NEIN, dann bestimmt der Mikroprozessor 1, daß der End- und Anfangswinkel nicht im gleichen Quadranten liegt. Im Schritt 7.05 wird der Quadrantenzeiger weitergeschaltet. Hierauf werden von dem positiven Ergebniswinkel wiederum 90° subtrahiert.
Bleibt der Ergebniswinkel weiterhin in Schritt 209 positiv, dann werden die ALL WRITE - Statusbitdaten in Schritt 211 erstellt und der Ablauf geht zurück nach 205. Die Schritte 205 bis 211 werden wiederholt, bis der Endwinkel negativ wird. Ist in Schritt 209 die Antwort JA, dann werden die Statusbitdaten erstellt, wobei der Endwinkel in dem entsprechenden Quadranten in Schritt 219 vorhanden ist. Der Mikroprozessor 1 stellt in Schritt 221 fest, ob der Ar.fangswinke! größer als der Endwinkel ist. Ist die Antwort im Schritt 221 JA, dann wird der Anfangs- und Endwinkel im Schritt 223 invertiert. Der Ablauf schaltet zu Schritt 147 fort.
Die Positionsbitmuster werden durch Feststellung im Schritt 225 der Fig. 13E erstellt, ob die augenblickliche x-Koordinate gleich oder kleiner dem Absolutwert derx-Koordinate des Anfangspunkts ist. Ist dies im Schritt 225 nicht der Fall, dann geht der Ablauf nach Schritt 233. Im Schritt 233 bestimmt der Mikroprozessor, ob die augenblickliche .v-Koordinate größer als der Absolutwert der x-Koordinate des Endpunkts ist. Ist dies der Fall, dann werden im Schritt 235 die Statusbitdaten A9A9 (hex) erstellt. Ist die Antwort im Schritt 233 NEIN, dann werden die Statusbitdaten 8F8F (hex) im Schritt 237 eingestellt.
War die Antwort indem Schritt 225 JA, dann stellt der Mikrocomputer 1 im Schritt 227 fest, ob die augenblickliche x-Koordinate gleich oder größer dem Absolutwert der x-Koordinate des Endpunkts ist. Ist dies der Fall, dann werden die Daten F8F8(hex) im Schritt 229 eingestellt, andererseits die Daten 9A9A (hex) im Schritt 231.
Die zuvor beschriebene Bitkartenerstellung erfolgt derart, daß die Daten in dem Anfangs- und Endwinkelregister 81 und 83 dem Statusbitgenerator 85 über die Tor-Schaltungen G 43 und G 44 zugeführt werden, um Statusbitmuster der entsprechenden Quadranten zu erzeugen. Im Falle eines Kreisbogens gemäß Fig. 15 liegt der Anfangswinkel im ersten Quadranten A 1 und der Endwinkel im dritten Quadranten A 3. Die StatuseinstellL.?- gen für die entsprechenden Quadranten sind dann wie folgt:
Erster Quadrant A 1 START POINT
Zweiter Quadrant A 2 ALL WRITE
Dritter Quadrant A 3 DESTINATION POINT
Vierter Quadrant A 4 SKIP
Die in Fig. 11 gezeigte Statusbitkarte wird in den Statusbitgenerator 85 eingeschrieben. Die Daten in dem Anfangs- und Endwinkelregister 81 und 83 werden dem Anfangs- und Endpunktrechner 93 über die Tor-Schaltungen G 46 und G 47 zugeführt. Der Anfangs- und Endpunktrechner 93 berechnet die Anfangs- und Endpunktpositionen. Ausgangssignale von dem Anfangs- und Endpunktrechner 93 werden dem Positionsbitgenerator95 zugeführt. Dieser erzeugt Positionsbitdaten, die mit den Bedingungen gemäß den Fig. 12A und 12B in Einklang sind, gemäß den Daten, die vom Anfangs- und Endpunktrechner 93 kommen und gemäß der berechneten x-Koordir.ate .V1 außer dem .ν,-Register 79. Wenn die berechnete Koordinate, d. h. die Koordinate Daten aus dem x,-Register 79 dem xc der Fig. 15 entsprechen, werden folgende Ungleichungen erfüllt.
(.5 Α", <|x, j
Die Positionsbitdaten der entsprechenden Quadranten gemäß Fig. 16B werden mit den Positionsbitkarten k
der F i g. 12 A und 12B erstellt und in das Positionsbitregister 97 eingeschrieben. Die Daten aus dem Statusbitre- |j
gister 87 und dem Positionsbitregister 97 gemäß den F i g. 16A und 16B werden über die Tor-Schaltungen G 45 y
und G49 und das UND-Glied 89 in das Register 91 eingeschrieben. Die in Fig. 16C gezeigten Daten ergeben
sich durch UND-Verknüpfung der Daten gemäß F ig. 16Aund 16B. Die Ergebnisdaten werden in das Register 91 5
eingeschrieben. Die Daten des Anfangs- und Endwinkelregisters 81 und 83 werden der Bestimmungsschaltung
99 uoer die Tor-Schaltungen G 58 und G 59 zugeführt, um zu bestimmen, ob die Daten im Register81 größer sind
als diejenigen im Register 83. Abhängig vom Ergebnis öffnet die Schaltung 99 die Tor-Schaltungen G 50 bis G 53
oder G 54 bis G 57. Die Daten im Register 91 werden über die Tor-Schaltungen G 50 bis G 53 und die ODER-Glieder 101 bis 107 der Anzeigeeinheit 21 zugeführt. Die Anzeigeeinheit 21 steuert die entsprechenden Qua- in
dranten gemäß den zugeführten Daten aus dem Register 91. Insbesondere werden die zutreffenden Daten für
den ersten und zweiten Quadranten A 1 und A 2 (F ig. 16C) für eine Darstellung verwendet. In diesem Falle werden keine der O-Bit-Daten für den dritten und vierten Quadranten A 3 und A 4 für die Darstellung verwendet.
Bei einer berechneten Koordinate in Fig. 15 als X1, ergibt sich:
X1, > I x(|
X1, >\X,\ {j
Der Inhalt des Positionsbitregisters 97 entspricht den Bitdaten in Fig. 16D gemäß den Bitkarten der Fig. 12A 20 :;
und 12B. Die UND-Verknüpfung zwischen den in Fig. 16D gezeigten Daten und dem Inhalt (Fig. 16A)desSta- S
tusregisters 87 wird durchgeführt, um die in F i g. 16E gezeigten Daten zu erhalten. Gemäß dem Inhalt der Daten JJ
gemäß Fig. 16E werden Punktdaten in den zweiten und dritten Quadranten Al und Ai, nicht jedoch in dem |
ersten und vierten Quadranten A 1 und A4 dargestellt. s
Wenn andererseits der Anfangswinkel größer als der Endwinkel ist, dann schaltet das Ausgangssignal der 25 ;j
Bestimmungsschaltung 99 die Tor-Schaltungen G 54 bzw. G 57 durch. Deshalb werden die Daten im Register 91 ;|
durch die NOR-Glieder 109 bis 115 invertiert. Die invertierten Daten werden der Anzeigeeinheit 21 zugeführt, '
so daß eine invertierte Darsteilungs- und Sprungoperation durchgeführt wird, um einen invertierten Kreisbogen ]
zu zeichnen. ;■;!
Bei dem zuvor beschriebenen Ausführungsbeispiel werden der Kreis, die Ellipse und der Kreisbogen gra- 30 $
phisch angezeigt. Diese Figuren können jedoch auch mit einem .v-.v-Drucker od. dgl. ausgedruckt werden. 3
Hierzu 17 Blatt Zeichnungen i|
13

Claims (6)

Patentansprüche:
1. Kreisgenerator für eine in rechtwinkligen Koordinaten steuerbare Darstellungsvorrichtung mit einem digitalen Differenzanalysierer (DDA) (3) zum Empfangen eines Kreisradius und Erzeugen von x- und j>-Koordinaten auf dem Kreis mit dem Ursprung als Mittelpunkt,
gekennzeichnet durch
eine erste Vorrichtung (31,29) zum Empfangen des Radius und der einen Koordinate eines Punktes spezieller Koordinaten als Mittelpunkt eines gewünschten Kreises und zum Durchführen einer Addition und Subtraktion bezüglich des Radius und der Koordinate, um jeweils die eine Koordinate des äußersten rechten und
ίο äußersten linken Punktes des gewünschten Kreises zu erhalten und
zweite Vorrichtungen (41,45,43,47,37,39,33,35) zum Empfangen der Koordinaten des äußersten rechten und äußersten linken Punktes, die von der ersten Vorrichtung erzeugt wurden, und der anderen Koordinate des Punktes der speziellen Koordinaten und zum Erzeugen der Koordinatenwerte von vier Punkten auf dem gewünschten Kreis, die symmetrisch bezüglich des Punktes der speziellen Koordinaten sind, gemäß den x- und .y-Koordinaten, die von dem digitalen Differenzanalysierer (3) erzeugt wurden.
2. Generator nach Anspruch 1, gekennzeichnet durch
eine Statusbiidatenerzeugungsvorrichtung (85) zum Empfangen des Anfangs- und Endwinkels für eine KreisbogenBiffStellung und für eine Erzeugung von Statusbitdaten entsprechend der Quadranten des gewünschten Kreises,
eine Anfangs- und Endpunktberechnungsvorrichtung (93) zum Empfangen des Anfangs- und Endwinkels und zum Berechnen von x- und ^-Koordinaten des Anfangs- und Endpunkts,
eine Positions-Datenerzeugungsvorrichtung (95) zum Empfangen der Ausgangssignale der Anfangs- und Endpunktberechnungsvorrichtung und des Radius und zum Erzeugen von Positionsbitdaten, die Beziehungen zwischen Koordinaten eines augenblicklichen Punktes und den Koordinaten des Anfangspunkts und zwischen den Koordinaten des augenblicklichen Punktes und den Koordinaten des Endpunkts darstellen, eine Bestimmungsvorrichtung (99) zum Vergleichen des Anfangswinkels mit dem Endwinkel und zum Bestimmen, ob der Anfangswinkel größer als der Endwinkel ist und umgekehrt,
Vorrichtungen («9, 197, 117, 119, 121,123,129,131,133,135) zum logischen Verknüpfen der Statusbitdaten, die von der Statusbitdatenerzeugungsvorrichtung erzeugt wurden und der Positionsbitdaten, die von der Positionsbitc!atenerzeuEungsvt-i richtung erzeugt wurden, und zum Erzeugen von DurchschalN/Sperrdaten, die bestimmen, ob Kreisüogenptinkte der entsprechenden Quadranten dargestellt werden, und
Vorrichtungen (109, 111, 113, .15) zum Invertieren der Durchschalt-ZSperrdaten gemäß dem Bestimmungsergebnis der Bestimmungsvorrichtung (99),
3. Generator nach Anspruch 2, dadurch gekennzeichnet, daß die Statusbitdaten enthalten:
Bitdaten, die angeben, daß der Anfangswinkel in einem gegebenen Quadranten liegt,
Bitdaten, die angeben, daß der Endwinkel in einem gegebenen Quadranten liegt,
Bitdaten, die angeben, daß der Anfangs- und der Endwinkel beide in einem gegebenen Quadranten liegen, Bitdaten, die angeben, daß Punkte in dem gegebenen Quadranten dargestellt werden, und
Bitdaten, die angeben, daß Punkte in dem gegebenen Quadranten übersprungen werden.
4. Generator nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß die Positionsbitdaten enthalten:
Bitdaten, die angeben, daß die Koordinaten des augenblicklichen Punktes gleich oder größer als die Koordinaten des Endpunktes sind und daß die Koordinaten des augenblicklichen Punktes gleich oder kleinerals die Koordinaten des Anfangspunkts sind,
Bitdaten, die angeben, daß die Koordinaten des augenblicklichen Punktes gleich oder kleinerals diejenige des Anfangspunkts sind und daß die Koordinaten des augenblicklichen Punktes kleiner als diejenigen des Endpunkts sind,
Bitdaten, die angeben, daß die Koordinaten des augenblicklichen Punktes größer als diejenigen des Anfangspunktes sind und daß die Koordinaten des augenblicklichen Punktes gleich oder größer als diejenigen des Endpunktes sind und
Bitdaten, die angeben, daß die Koordinaten des augenolicklichen Punktes größer als diejenigen des Anfangspunkts und daß die Koordinaten des augenblicklichen Punktes kleiner als diejenigen des Endpunktes sind.
5. Generator nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß der digitale Differenzanalysierer eine Korrekturvorrichtung (Übertragsfeststelleinheit 59, 69) enthält, die aufweist:
eine erste Registervorrichtung (71) zum Einstellen von Korrekturdaten zum Zeichnen einer Ellipse,
eine zweite Registervorrichtung (75) zum Einstellen von Kreiskoordinatendaten,
eine Addiervorrichtung (73) zum Addieren der Inhalte der ersten und zweiten Registervorrichtung (71,75) und
I= einen Übertragsdetektor (77) zum Feststellen eines Übertragssignals von einer von der Addiervorrichtung
I: 60 (73) erzeugten Summe.
ί>;
6. Generator nach Anspruch 5, dadurch gekennzeichnet, daß die Korrekturvorrichtung (59, 69) derart
tv betrieben wird, daß die Korrekturdaten zu den*-Koordinaten des gewünschten Kreises hinzuaddiert werden,
ίν· wenn eine Ellipse mit in Richtung der x-Achse verlaufender großer Achse darzustellen ist und daß die Kor-
>< rekturvorrichtung (59, 69) derart betrieben wird, daß die Korrekturdaten zu den ^-Koordinaten des
ρ: ιό gewünschten Kreises addiert werden, wenn eine Ellipse mit in Richtung der.v-Achse verlaufender großen
Aj Achse darzustellen ist.
DE3417407A 1983-05-10 1984-05-10 Kreisgenerator für eine graphische Anzeigeeinheit Expired DE3417407C2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP58081469A JPS59206884A (ja) 1983-05-10 1983-05-10 円または楕円の塗りつぶし方式
JP8147183A JPS59206981A (ja) 1983-05-10 1983-05-10 円弧描画方式
JP58081468A JPS59206980A (ja) 1983-05-10 1983-05-10 円の補正描画方式
JP8146783A JPS59206937A (ja) 1983-05-10 1983-05-10 円の描画方式

Publications (2)

Publication Number Publication Date
DE3417407A1 DE3417407A1 (de) 1984-11-15
DE3417407C2 true DE3417407C2 (de) 1986-03-27

Family

ID=27466575

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3417407A Expired DE3417407C2 (de) 1983-05-10 1984-05-10 Kreisgenerator für eine graphische Anzeigeeinheit

Country Status (3)

Country Link
US (1) US4692887A (de)
DE (1) DE3417407C2 (de)
GB (1) GB2141608B (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61249088A (ja) * 1985-04-26 1986-11-06 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 図形塗りつぶし方法
JPS61261779A (ja) * 1985-05-14 1986-11-19 インタ−ナショナル ビジネス マシ−ンズ・コ−ポレ−ション 二次曲線信号発生装置
JPH0727573B2 (ja) * 1987-02-13 1995-03-29 日本電気株式会社 弧の端点検出回路
GB2204216B (en) * 1987-04-30 1991-02-06 Ibm Curve generation in a display system
JPH0668771B2 (ja) * 1987-12-07 1994-08-31 沖電気工業株式会社 Dda円発生表示方法
GB9312447D0 (en) * 1992-10-28 1993-07-28 Int Technical Illustration Co Method of tracing a drawing and apparatus for embodying the method
US6700576B1 (en) * 1999-03-25 2004-03-02 3Dlabs, Inc., Ltd. Variable stride circle rendering apparatus and method
KR100425667B1 (ko) * 2001-12-03 2004-04-06 엘지전자 주식회사 데이터스트림의 속성정보 처리방법 및 장치
US20050264554A1 (en) * 2004-05-25 2005-12-01 Deming James L Tile based rendering of smooth points using polygons
CN110554640B (zh) * 2018-06-01 2022-08-30 上海辉格科技发展有限公司 一种扫描仪控制电路及数据处理方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3735389A (en) * 1970-02-24 1973-05-22 Zeta Research Digital graphic display apparatus, system and method
GB1359674A (en) * 1971-06-11 1974-07-10 Elliott Brothers London Ltd Display system with circle drawing
US3789200A (en) * 1972-06-30 1974-01-29 Ibm Circle or arc generator for graphic display
US3987284A (en) * 1974-12-03 1976-10-19 International Business Machines Corporation Conic generator for on-the-fly digital television display
GB1587200A (en) * 1976-12-04 1981-04-01 Ferranti Ltd Display systems
GB1596506A (en) * 1976-12-04 1981-08-26 Ferranti Ltd Display systems
FR2448194A1 (fr) * 1979-01-30 1980-08-29 Thomson Csf Dispositif generateur de courses pour la visualisation de symboles sur un ecran cathodique
US4371933A (en) * 1980-10-06 1983-02-01 International Business Machines Corporation Bi-directional display of circular arcs
US4484298A (en) * 1981-04-30 1984-11-20 Yokogawa Hokushin Electric Corporation Method and device for generation of quadratic curve signal
ZA834723B (en) * 1982-07-08 1984-03-28 Int Computers Ltd Digital display system
US4493032A (en) * 1982-09-07 1985-01-08 General Electric Company Method and apparatus for positioning using circular interpolation
US4535328A (en) * 1982-09-13 1985-08-13 Rockwell International Corporation Digitally controlled vector generator for stroke written CRT displays

Also Published As

Publication number Publication date
GB8411032D0 (en) 1984-06-06
GB2141608B (en) 1987-07-15
DE3417407A1 (de) 1984-11-15
US4692887A (en) 1987-09-08
GB2141608A (en) 1984-12-19

Similar Documents

Publication Publication Date Title
DE3440377C2 (de)
DE2455897C2 (de) System zum Identifizieren von Schriftzeichen
DE2754270A1 (de) Digitale strich-darstellungsvorrichtung
DE2431451B2 (de) Verfahren zur normierung der strichstaerke von abgetasteten schriftzeichen sowie einrichtung zur durchfuehrung des verfahrens
DE3806223A1 (de) Verfahren zur erzeugung eines zeichenabbilds
DE3801364A1 (de) Anzeigesystem
DE3931128A1 (de) Bilddatenprozessor mit mitteln zur veraenderung der aufloesung von bildern
EP0026378A1 (de) Verfahren zur Hervorhebung eines Bildbereiches innerhalb eines Bildes, das auf einem Bildschirm dargestellt wird
DE3326583C2 (de)
DE3417407C2 (de) Kreisgenerator für eine graphische Anzeigeeinheit
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE2752421A1 (de) Anordnung fuer die abtastung und digitalisierung von grafischen darstellungen oder daten
DE2459106C2 (de) Schaltungsanordnung zur Darstellung von Zeichen auf einem Bildschirm mittels eines Kathodenstrahls
DE3110222A1 (de) Verfahren zur partielle glaettenden retusche bei der elektronischen farbbildreproduktion
DE3315148A1 (de) Digitale sichtanzeigeeinrichtung
DE2214585B2 (de) : Anordnung zur Darstellung von Zeichensegmenten
DE1774314B1 (de) Einrichtung zur maschinellen zeichenerkennung
DE2212967A1 (de) Einrichtung und Verfahren zur Verwendung eines dreifeldrigen Wortes zur Darstellung einer Gleitkommazahl
EP0060243B1 (de) Verfahren und schaltungsanordnung zur partiellen elektronischen retusche bei der farbbildreproduktion
DE2254913A1 (de) Verfahren zur erzeugung graphischer darstellungen aus parametrischen daten
DE1294074B (de) Zeichenerkennungsvorrichtung mit spaltenweiser Abtastung
DE2546506C2 (de) Digitaler Videogenerator für eine zeilenweise Darstellung eines Kegelschnittes auf einem Fernsehbildschirm
EP0060312B1 (de) Verfahren zur partiell glättenden Retusche bei der elektronischen Farbbildreproduktion
DE3216354A1 (de) Schaltungsanordnung zur steuerung eines korpuskularstahls
DE2113264C3 (de) Verfahren zum automatischen Erkennen zweidimensionaler Muster mit Hilfe von Momenten zweiter Ordnung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee