DE3404001A1 - Verfahren zum verarbeiten von liniensegment-koordinanten bei hoher geschwindigkeit - Google Patents

Verfahren zum verarbeiten von liniensegment-koordinanten bei hoher geschwindigkeit

Info

Publication number
DE3404001A1
DE3404001A1 DE19843404001 DE3404001A DE3404001A1 DE 3404001 A1 DE3404001 A1 DE 3404001A1 DE 19843404001 DE19843404001 DE 19843404001 DE 3404001 A DE3404001 A DE 3404001A DE 3404001 A1 DE3404001 A1 DE 3404001A1
Authority
DE
Germany
Prior art keywords
counters
output
axis
counter
value
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.)
Ceased
Application number
DE19843404001
Other languages
English (en)
Inventor
Ikuo Kusatsu Shiga Mitsuka
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.)
Dainippon Screen Manufacturing Co Ltd
Original Assignee
Dainippon Screen Manufacturing 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
Application filed by Dainippon Screen Manufacturing Co Ltd filed Critical Dainippon Screen Manufacturing Co Ltd
Publication of DE3404001A1 publication Critical patent/DE3404001A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/62Performing operations exclusively by counting total number of pulses ; Multiplication, division or derived operations using combined denominational and incremental processing by counters, i.e. without column shift

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Image Generation (AREA)
  • Complex Calculations (AREA)

Description

X.
Anwaltsakte: P 1102 DAINIPPON SCREEN SEIZO K.K,
Kyoto, Japan
Verfahren zum Verarbeiten von Liniensegment-Koordinaten bei hoher Geschwindigkeit
Die Erfindung betrifft ein Verfahren zum Bestimmen von Koordinatenwerten kontinuierlicher und aufeinanderfolgender Punkte (dots) in einem quantifizierten zweidimensionalen Koordinatensystem.
Als Grundverarbeitung beim Zeichnen und dergleichen stellt man Liniensegmente häufig auf der Basis ihrer entsprechenden, gewünschten zwei Punkte in quantifizierten zweidimensionalen Koordinatensystemen dar. In vielen Fällen verursacht jedoch die Verarbeitungsgeschwindigkeit Probleme beim Durchführen dieses Verarbeitens über Software mittels Computer und dergleichen.
3. 2
Der Erfindung liegt die Aufgabe zugrunde, ein Hochgeschwindigkeits-Processing solcher Liniensegment-Koordinaten durchzuführen, ohne nennenswerte Fehler durch Beeinflussen eines Teiles des obengenannten Processing entstehen zu lassen, und zwar mit Hilfe von Hardware.
Üblicherweise wurden aufeinanderfolgende Dots, die zwei Punkte miteinander verbinden, aus den Koordinatenwerten (x^, y^), (xp, y2) der beiden Punkte dadurch berechnet, daß man die Neigung θ jener Linie ermittelt, die die beiden Punkte miteinander verbindet:
ι Yo - Y1
θ = tan "x -S -L (l)
auf der Basis der Neigung (slope) erhält man den Wert für y , der Xn auf dem Liniensegment entspricht, und zwar in der folgenden Form:
y~ = 7i + (^ - x
η ι η j.
Alternativ läßt sich der Wert von y auch wie nachstehend wiedergegeben ermitteln, und zwar unter Erlangung des Increments ^Y von y pro Δχ von den beiden Punkten, und unter Hinzuaddieren des Produktes von Ay x (n-1) zum Ausgangswert
n 1
x2- X1
Die Software-Operation des Best immens (y«- y ^)Z(Xp - x-,) aus den Gleichungen (1) und (2) oder der Gleichung (3) setzt voraus, daß man im Falle eines langen Liniensegmentes eine hochgenaue Teilung vornimmt, was eine lange Operationszeitspanne erfordert und was natürlich auch die Gesamt-Prozess-Zeitspanne vergrößert.
Opfert man Rechengenauigkeit von (y2 - y ^Z(X2 - X1), um die Operäfciönszeitspanne abzukürzen, so kumrnUlieren' sich im Verlaufe der Berechnung von (y2 - V1)Z(X2 - X1) Fehler, was in manchen Fällen dazu führen kann, daß die beiden Punkte nicht miteinander verbunden werden.
Demgegenüber wird es durch die Erfindung möglich, fehlerfreie und hochgenaue Operationen durchzuführen und gleichzeitig die Operation abzukürzen durch Durchführung von Operationsteilen unter Zuhilfenahme von Hardware.
Gemäß einem Gedanken der Erfindung wird ein Verfahren zum Verarbeiten von Liniensegment-Koordinaten bei hohen Geschwindigkeiten angegeben, um die Koordinatenwerte quantifizierter aufeinanderfolgender Dots (sequential dots) auf einem Liniensegment zu bestimmen, das zwei gewünschte Punkte (x., 3^1)* (xp* vp) ^31 einem zweidimensionalen quantifizierten Koordinatensystem miteinander verbindet.Ein solches Verfahren umfaßt die folgenden Verfahrensschritte: Es werden Zähler vorgesehen, deren jeder als Bezugs-Taktsignal auf der x-Achse bzw. auf der y-Achse eine Quantum-Einheit (qiantum unit) verwendet;
die Bezugs-Taktsignale (reference clock signals), die in die Zähler einzuspeisen sind, werden gemäß der Information auf den beiden Punkten (x,, y,), (x2, y«) kontrolliert; die Ausgangswerte der Zähler werden als Koordinatenwerte der quantifizierten aufeinanderfolgenden Dots verwendet (quantized sequential dots).
Das obengenannte Verarbeitungsverfahren gemäß der Erfindung läßt sich bei hoher Geschwindigkeit durchführen und ist aus praktischer Sicht von größtem Wert.
Die Erfindung ist anhand der Zeichnung näher erläutert. Darin ist im einzelnen folgendes dargestellt:
340A001
Fig. 1 zeigt ein Koordinaten-Diagramm mit den gewünschten beiden Punkten.
Fig. 2 ist ein Blockschaltbild, das eine Ausführungsform der Erfindung veranschaulicht.
Fig. 3 ist ein Zeitschema.
Fig. 4 veranschaulicht quantisierte Diagramme (quantized diagrams).
Fig. 5 ist ein Blockschaltbild, das eine weitere Ausführungsform der Erfindung veranschaulicht.
Fig. β ist eine Tabelle, die die Ausgangswerte zu verschiedenen Zeitpunkten von einer Mehrzahl von in Fig. 5 dargestellten Blocks wiedergibt.
Fig. 7 ist ein Blookschaltbild, das eine weitere Ausführungsform der Erfindung darstellt.
Fig. 8 ist eine Tabelle, die Ausgangswerte zu verschiedenen Zeitpunkten aus einer Mehrzahl von in Fig. 4 dargestellten Blocks wiedergibt.
Fig. 9 veranschaulicht quantisierte Diagramme.
Zunächst sei das Grundprinzip der Erfindung anhand von Fig. 1 erläutert. In Fig. 1 soll zunächst ein Liniensegment ausgewählt werden, das die gewünschten beiden Punkte (Xj, y,), (χ~> Vo) miteinander verbindet. Dieses Liniensegment läßt sich durch die folgende Gleichung ausdrücken:
y -
: -Γ:': : .'*':' ::<l' 3404ÜÜ1
■ (,' 5
Zur Vereinfachung der Gleichung wird hierbei der gewünschte Punkt (x*, y,) in ein Koordinatensystem umgewandelt, dessen Ursprung bei (0, 0) liegt. Gleichung (4) schreibt sich sodann wie folgt:
y -. 3^t-X (5)
Nimmt man nunmehr an, daß die Neigung der x-Achse χ ist, so läßt sich Gleichung (5) wie folgt schreiben:
y «
yn = iq-'m' x (6)
nun angenommen, daß χ = — , ist. x„ läßt sich sodann durch
Bei Gleichung β ist m eine positive, ganze Zahl. Es werde nun angenommen, daß χ = — , ist.
die folgende Gleichung ausdrucken:
(7)
χ = 1
X
p n
Da χ ein gevrünschter (ganzzahligpr) Koordinatenwert ist, der zwischen x, und Xp vorliegt und zu quantisieren ist, so ist der Wert, den m annehmen kann, lediglich gleich dem Produkt von yo und einer ganzen Zahl. Dies trifft deshalb zu, weil χ eine ganze Zahl ist und weil sich die Gleichung (7) in der folgenden Weise ausdrücken läßt:
m = xn.y^ (8)
Aus der obigen Beziehung läßt sich Gleichung (6) in die folgende Form umschreiben:
\is den Gleichungen (7) und (9) ergeben sich die Koordinaten des Liniensegmentes, das die beiden Punkte (0,0), (x' , y' ) miteinander verbindet, wie folgt:
β* .« i* «111 · + "
ΫΓ'~ΖΓ] do)
Auf der Basis der Gleichung (10) ergeben sich für die einzelnen Werte von m quantisierte, durch Gleichung (5)
wiedergegebene Koordinatenwer.te wie folgt : When mOx = 0 χ y2, (0,0);
When m0 = 0 χ X2, (0,0)
*2 When mlx « 1 x Y^' (1'xj);
x· When m. = 1 x x^, (ρτ
y >
When m2x = 2 χ y^, (22)
'2
When m2 « 2 χ x2,
Χ2
When m = η χ Y2, ^χ'^χ^Γ1"
2 *2 /
When mny = ny χ χ£, (nyyJ'V
Quantisierte ganze Zahlen werden jeweils als Werte xn>yn erhalten. Ist einer der beiden Werte χ , y eine ganze Zahl, so wird der andere Wert dadurch zu einer ganzen Zahl, daß man den resultierenden Wert rundet, und zwar durch Weglassen von Brüchen, die !deiner als ein Dezimalpunkt sind, wobei man Brüche von 0,5 und größer als 1 zählt und den Rest weglässt, oder durch Vergrößern von Brüchen, die kleiner als ein Dezimalpunkt zu 1 sind. Koordinatenwerte, die auf die obige Welse quantisiert sind, in Bezug auf Folge-Dots (sequential dots auf einem Liniensegment enthalten keine nennenswerten Fehler.
Eine Ausführungsform dieser Erfindung, die gemäß dem oben geschilderten Konzept gestaltet ist, ist in Fig. 2 dargestellt.
34Ü4UU
In Fig. 1 wird die Frequenz f eines Impulses C anstelle von m verwendet. Außerdem werden Frequenz-Teilungszähler 1, 2
verwendet, um die Operationen und
1 -X2 V1 - V2
durchzuführen, ferner werden Auf-Ab-Zähler 3> 4 verwendet, um die Ergebnisse in absoluten Zahlen auszudrücken.
Bei dieser Ausführungsform werden, wie erwähnt, Zähler verwendet. Deswegen lassen sich die Werte χ , y lediglich als Taktzahlen erhalten, die ganzzahlige Multiplikationen von yA oder χλ sind.
Eine weitere Ausführungsform ist in Fig. 5 veranschaulicht, wobei die Frequenz-Demulüpliers durch Addierwerke, Subtrahierwerke usw. verwendet werden, wobei es möglich ist, das Zählen (Teilen) von yl °&ev xp sofort durchzuführen. Mit dieser Ausführungsform lassen sich schnelle Rechenoperationen zuwege bringen.
Die Ausführungsform gemäß Fig. 2 soll im folgenden in Einzelheiten beschrieben werden. Man erkennt hierbei jeweils Frequenzteilungszähler 1,2 sowie voreinstellbare Auf-Ab-Zähler (up-down counters) 3, 4.
Die Frequenzteilungszähler 1, 2 dienen jeweils als Frequenzteilungszähler von ~ und ^ auf der Basis der Koordinatendifferenzen X1 - X2 und Vi - 'S2 zwischen zwel Punkten, die im voraus vorliegen. Jeder Ausgang des Frequenzteilungszählers 1 (frequency division counter) wird als Taktsignal C„ von — f verwendet. Zähler β wird durch den Anfangsimpuls G. auf y.
1 Ii eingestellt und zählt Taktsignale C„ von —f. Ist yn > yo, so
el SL Ic
arbeitet Zähler 3 als ein Down-Zähler gemäß den Signalen, die aus einer Einrichtung abgegeben werden, die y^ y? unterscheidet. Ist hingegen y,<y2i so arbeitet Zähler 3 als ein up-Zähler auf dieselbe Weise.
lit«
Zähler 4 ist auf χχ einzustellen, und zwar als Voreinstell-Wert, durch den Anfangsimpuls C.. Zähler 4 ist derart gestaltet und angeordnet, daß er Taktsignale C^ zählt, deren jedes eine Frequenz if hat, und die aus dem Frequenz-Teilungszähler 2 abgegeben werden. Zähler 4 dient ähnlich wie der obenerwähnte Zähler 3 als ein down-Zähler, wenn X1^x2, jedoch als ein up-Zähler, wenn x^Xg ist.
Die von den Zählern 3, 4 abgegebenen Werte erhält man mit dem Timing des Frequenz-größeren der Tal
Frequenzen, die —f und ?-f betragen.
Timing des Frequenz-größeren der Taktsignale C und C der
el C
In Fig. 2 können die Relation - als relativer Wert - zwischen χ. und Xp und jene zwischen y.. und y„ wie auch die positiven oder negativen Symbole und Werte von x. - Xp und y, - y2, und die Relation - als relativer absoluter Wert - zwischen x. - Xp und 'S ι ~ Vo. roi'fc'kel3 Signalen eingegeben werden, und zwar durch Software eines Computers oder dergleichen oder durch ähnliche Mittel. Sie sind durch gestrichelte Linien veranschaulicht.
Zur Vereinfachung der Darstellung sei angenommen, daß x.< Xp, X2 - X1 = a, yx< y2, y2 - γχ - b, a b, a = 4 und b = J> gilt. Eine weitere Beschreibung folgt unter Bezugnahme auf Fig. J5·
Durch den Anfangsimpuls (L werden die Teilerwerte der Frequenzteilerzähler 1, 2 jeweils auf ein a = 4 und b = 3 eingestellt. Die Ausgangsfrequenzen —f und ^f entsprechen ihren jeweiligen Einstellwerten. Somit dienen die Taktsignale CL, C, mit den
11 a D
Frequenzen —f und ^-f als Eingangs-Taktsignale für die Zähler 3, Die Zähler 3, 4 sind daher derart aufgebaut, daß sie ihre entsprechenden Taktsignale (clock signals) Ca, C^ zählen. Die Zählungen der Zähler 3, 4 werden jeweils als y und χ angezeigt.
Sobald das Ablesen durch Taktsignale durchgeführt ist, deren Frequenz 4f ist* so ergeben die ausgelesenen Taktsignale 1 ,2,3 und 4 quantisierte Werte, die geringfügig voneinander abweichen. Dieses Ergebnis ist in Fig. 4 veranschaulicht.
In einem Sonderfall, wobei beispielsweise X1 = X3, Y1 = y2 oder x. -"X2 = vi ~ vp gi1^, wird das Processing separat mittels der Software eines Computers oder dergleichen durchgeführt. Die Software läßt sich auch für das Processing dann anwenden, wenn die Zähler 3, 4 ihre jeweiligen, vorgegebenen Zählwerte erreicht haben.
In Abwandlung der Ausführungsform von Fig. 2 ist es auch denkbar, Taktsignale C mit einer Frequenz f direkt in den Zähler 4 einzugeben sowie in den Zähler j5, die Frequenz f des Taktsignales C mit b durch einen Synthesizer zu
multiplizieren, um bf zu erhalten, bf zu teilen durch —
durch einen Frequenz-Demultiplier, um eine Frequenz 2.f zu anlangen, und sodann die Frequenz hier einzuget Diese Abwandlung ist insofern vorteilhaft, als sich das Lesen synenn
nehmen läßt.
2.f zu anlangen, und sodann die Frequenz hier einzugeben.
Lesen synchron mit den Taktsignalen C der Frequenz f vor-
Wird der Teilungswert b oder a in Fig. 2 größer, so nimmt die Frequenz eines jeden Eingangs-Taktsignales der Zähler 3, 4 ab. Demzufolge wird die one quantum processing time länger und ihr Anwendungsbereich ist somit begrenzt.
Fig. 5 veranschaulicht - wie bereits erwähnt - die zweite Aus führungs form der'Erfindung,· diese erlaubt die Anwendung arithmetischer Operationen bei noch größerer Geschwindigkeit.
Die OR-Gatter 11, 12 arbeiten als Gatter für Taktsignale C ,
die den Zählern J5, 4 einzugeben sind. Nimmt man an, daß der Teilungswert a größer als der Teilungswert b ist (a>b),
10
so gibt ein Komparator 21 ein Signal "H" ab. Signal "H" wird mittels einer NOT-Schaltung 22 in "L" umgewandelt. Sodann wird Signal "L" einem UND-Gatter 25 eingespeist, das das Signal "L" abgibt. Durch das Signal "L" wird ein OR-Gatter offengehalten, so daß Zähler 3 immer dann zählen kann, wenn er den Impuls eines jeden Taktsignales C mit der Frequenz f erhält.
Ist andererseits a kleiner als b, so gibt Komparator 21 ein Signal "L" ab, das sodann in ein Signal "H" durch eine NOT-Schaltung 24 umgewandelt wird. Das resultierende Signal "H" tritt sodann in ein UND-Gatter 26 ein. Je nach dem, ob der Ausgang der NOT-Schaltung "H" oder "L" ist, wird das Ausgangs-Signal des UND-Gatters 26 entweder "H" oder "L". Das Ausgangssignal des UND-Gatters 26 tritt in das OR-Gatter, fias Ausgangssignal "H", so wird das OR-Gatter 12 geschlossen und Zähler 4 zählt selbst dann nicht, wenn Taktsignale C einge-
geben werden. Ist das Ausgangssignal stattdessen jedoch "L", so öffnet dieses Signal "L" das OR-Gatter 12, so daß Zähler Taktsignale C zu zählen vermag.
Zähler 3 führt die Zählung durch den Impuls eines jeden Taktsignales C nämlich dann durch, wenn a größer als b ist. Zähler' 4 zählt nicht, wenn Taktsignale C eingegeben werden
und wenn das Ausgangssignal aud der NOT-Schaltung "H" ist. Hingegen zählt Zähler 4 dann, wenn immer Impulse eines jeden Taktsignals C eingegeben wen
der NOT-Schaltung 24 "L" ist.
Taktsignals C eingegeben werden, und wenn dasAusgangssignal
Ist a kleiner als b, so zählt Zähler 3 Taktsignale C dann nicht, wenn das Ausgangssignal der NOT-Schaltung "H" ist. Er zählt die Impulse eines jeden Taktsignales C jedoch dann, wenn das Ausgangssignal der NOT-Schaltung "L" ist. Zähler 4 zählt die Impulse eines jeden Taktsignales C .
11
Im folgenden soll ein niedrigeres Teil (das durch eine gestrichelte Linie umgeben ist) der in Fig. 5 dargestellten Schaltung beschrieben werden.
Ist a größer als b, so werden die Werte für a, b der vorgegebenen Daten jeweils ausgewählt als Ausgänge d.,, d^ von Selektoren 27, 28. Zunächst wird ein D-flip-flop (D-FP) 33 vom Anfangsimpuls C. freigemacht und der Ausgang des D-PP als "0" einem Addierwerk 30 eingespeist.
Andererseits wird ein Ausgang d, des Addierwerkes 30 einem Komparator 32 und einem Subtraktor 31 eingegeben. Der Ausgang Zl des Komparators 32, der entweder ein Signal "H" oder "L" sein kann, wird mittels einer NOT-Schaltung 34 in einen Ausgang de umgewandelt, der wiederum den UND-Gattern 25, 26 und dem Gatter-Eingangs-Terminal eines Selektors 29 eingespeist wird.
Wie oben beschrieben, kontrollieren die UND-Gatter 25, 26 Taktsignale für die Zähler 3, 4 entsprechend dem Ausgang d(-, der durch Verarbeiten des Augangs des Komparators 32 mittels der NOT-Schaltung 34 erhalten wird. Selektor 29 gibt den Ausgang (Operationsergebnis) d^ bzw. dh des Addierwerkes 30 bzw. des Subtraktors 31 selektiv an den D-FP 33 gemäß dem Ausgang d,- der NOT-Schaltung 3^· Der D-PF 33 nimmt während der Anstiegszeit eines jeden Taktsignales C Eingabedaten auf und behält die derart aufgenommenen Eingabedaten für den Ausgang.
Als Taktsignal C ist es vorzuziehen, einen "L"-Auslösetakt
zu verwenden, wenn die Ausleseimpulse (l) - (%) gemäß Fig. als OR-Schaltungen für die Gatter 11, 12 verwendet werden, so daß die Zähler 3, 4 durch Ausgangsschwankungen der UND-Gatter 25, 26 nicht betätigt werden.
12
Um die Sache leichter verständliche zu machen, soll die Operation der Schaltung gemäß Fig. 5 im folgenden unter Verwendung spezifischer Werte für a und b beschrieben werden, und zwar wird angenommen, daß a = 4 und b = 3 ist.
Das Ausgangssignal der a>b -Seite des Komparators 21 wird "H" und Zähler 3 zählt die Impulse eines jeden Taktsignales On wie oben beschrieben. Zu diesem Zeitpunkt wird das Ausgangssignal von der a<b-Seite des Komparators 21 zu "L", und der Impuls eines jeden Taktsignales C\ für den Zähler 4 wird demgemäß durch die Art der Ausgänge aus Komparator 32 kontrolliert.
Fig. 6 zeigt die Werte eines jeden Takeimpulses in jedem Block. Im folgenden sollen Veränderungen der Taktimpulswerte beschrieben werden.
Die Vorgabedaten (presetting data) werden in den Zählern 3>4 mittels des Anfangs impuls es Cj, eingegeben. Die Ausgangswerte der Zähler 3, 4 betragen jeweils x_, y., und der Ausgangswert dg des D-FF 33 wird zu "0". Der Ausgangswert ^ des Selektors ist "3n# während der Ausgangswert d-, des Addierwerkes 30 "3" ist. Der Ausgangswert d^ des Selektors 28 ist andererseits "4", und die Ausgangssignale cL und dp. des Komparators 32 und der NOT-Schaltung 34 sind "L" bzw. "H". Zähler 4 vermag somit keinerlei Zähloperation durchzuführen.
Der Ausgangswert d„ des Subtraktors 31 beträgt "-l". Da das Ausgangssignal d5 der NOT-Schaltung 34 "H" ist, wählt Selektor 29 den Ausgangswert d-, des Addierwerkes 30, nämlich "3"· Somit wird "3" als Eingangswert dg dem D-FF 33 eingespeist. Dieser Zustand wird fest beibehalten, bis der erste Taktimpuls nach dem Ausgang des Anfangsimpulses C. kommt.
Sobald der erste Taktimpuls gekommen ist, wird der Wert des Zählers 3 x, +1, während der Wert des Zählers 4 auf y. bleibt.
13
: IV: "ι ι.;;.":..:":· 3404UÜ1
Der Ausgangswert dg des D-PF 33 ist "3". Der Ausgangswert d, des Addierwerkes 30 ist andererseits "6", das Ausgangssignal cL des Komparators 32 ist "H" (unter der Annahme, daß d, = dh stimmt), daß Aus gangs signal d,- der NOT-Schaltung 34 ist "L", und der Ausgangswert d„ des Subtraktors 31 nach dem Durchführen von d, - dj. ist "2 . Auf diese Weise wählt Selektor 29 das Subtraktionsergebnis, nämlich den Ausgangswert dy, wobei "2" als Eingangswert dg dem D-PP 33 eingespeist wird.
Sobald der zweite Taktimpuls angekommen ist, erreicht der Wert des Zählers 3 X1 +2, und der Kalkulationswert des Zählers 4 wird zu y, + 1, da das Ausgangssignal d,- der NOT-Schaltung 34 "L" ist und Zähler 4 somit zählbereit ist.
Der Ausgangswert dp des D-FP 3^ ist 2 , der Ausgangswert d, des Addierwerkes 30 ist "5", das Aus gangs signal dj- der NOT-Schaltung 3^ ist "L", und der Ausgangswert d„ des Subtraktors 31 wird "l" als Ergebnis der Subtraktion d, - d^. Sodann wählt Selektor 29 das Subtraktionsergebnis d„ und speist "l" als Eingangswert dg dem D-PP 33 ein.
Ist der dritte Taktimpuls gekommen, so wird der Wert des Zählers 3 zu X1 +3 und der Wert des Zählers 4 wird zu J1 + 2.
Zu diesem Zeitpunkt ist der Ausgangswert dg des D-FF 3J> "l , der Ausgangswert d-, des Addierwerkes 30 ist "4", das Ausgangssignal dp- der NOT-Schaltung 34 ist "L", und der Ausgangswert dy des Subtraktors 31 ist "θ". Selektor 29 wählt auf diese Weise das Subtraktionsergebnis dy, was zu einem Einspeisen von "o" als Eingangswert dg zum D-FP ~yj> führt.
Ist der vierte Taktimpuls gekommen, so werden die Werte der Zähler 3, 4 zu X1 + 4 = Xp und y. + 3 = y . Ähnlich den oben aufgeführten Operationen wird demzufolge der Ausgangswert dp des D-FP 33 "θ", der Ausgangswert d-^ des Addier-
14
«ft ft * ft ft
werkes 30 "3", das Ausgangssignal der NOT-Schaltung 34 wird "H", der Ausgangswert des Subtraktors 31 wird "-l" als Ergebnis der Subtraktion d^ - d^. Selektor 29 wählt das Additionsergebnis d, und speist hierbei "3" als Eingangswert dg in den D-PP 33.ein.
Die obigen Operationsergebnisse sind demgemäß (X1, y^), (X1 + Y1), (X1 + 2, yx + 1), (X1 + 3, I1 + 2), und (X1 + 4 a X2, yx + 3 = y2), was mit der in Fig. 2 veranschaulichten Ausführung zusammenfällt. Das quantisierte Stadium ist das gleiche wie jenes in Fig. 4 (a) dargestellt.
In Fig. 5 werden voreingestellte Werte mittels Software eines Computers oder dergleichen verarbeitet, so wie durch die gestrichelten Signaleinspeiseleitungen in Fig. 2 veranschaulicht und oben unter Bezug auf dieselbe Zeichnung erläutert.
Mit der Ausführungsform gemäß Fig. 5 läßt sich die Quantisierung dann durchführen, wenn das Ergebnis entweder größer oder gleich der one quantum unit ist. Die Quantisierung läßt sich sorgfältiger und genauer durch die Zählfraktionen von 0,5 und größer als 1, und Wegstreichen des Restes durch führen. Dieses Quantisierverfahren ist in Fig. 7 veranschaulicht. Die Schaltung gemäß Fig. 7 läßt sich bezüglich des unteren linken Teiles (durch gestrichelte Linien umrissen) in Fig. 5 ersetzen.
Fig. 7 ist ein Schaltbild einer weiteren Ausführungsform, die Fraktionen von 0,5 und größer als 1 unter Wegfallenlassen des Restes zu zählen erlaubt. Die Ausführungsform gemäß Fig. umfaßt zusätzlich zur Ausführungsform gemäß Fig. 5 einen Verdoppler 40, ein Addierwerk 4l, eine NOT-Schaltung 42, ein UND-Gatter 43 und ein OR-Gatter 44. Ähnlich dem in Fig. veranschaulichten Fall zeigt Fig. 8 Werte der verschiedenen Blöcke nach dem Einleiten des Initialimpulses C^ und nach dem Einspeisen des N-ten Taktsignales. In Fig. 8 sind die Werte
15
.3404UU-I
für a und b mit 4 bzw. 25 angenommen. Die in Pig. 8 wiedergegebenen Ergebnisse entsprechen dem in Fig. 4(c) veranschaulichfcerl Stadium.
Um die in Fig. 8 dargestellten Ergebnisse identisch jenen in Fig. 4(b) zu machen, muß man die Vergleichsbedingungen eines Komparators 4l mit I1 i2 ansetzen, um 2*d, d^ zu erlangen. Der Verdoppler 40 ist lediglich erforderlich, um 1 bit von Eingangs-Digitalsignalen d, dem untersten bit hinzu zu addieren, so daß die Digitalsignale d., dem Komparator kl eingegeben werden, nachdem die effektiven bits von d-, um ein bit nach oben verschoben worden sind.
Die AusfUhrungsform gemäß Fig. 7 zeigt einen deutlichen Unterschied gegenüber jener gemäß Fig. 5, wenn das Verhältnis von a zu b gleich 1 wird.
Fig. 9 veranschaulicht ein AusfUhrungsbeispiel einer Quantisierung, wobei a = 10 und b = 1 ist. Fig. 9(a) entspricht der in Fig. 5 veranschaulichten Ausführungsform, während Fig. 9 (b) der in Fig. 7 veranschaulichten Ausführungsform entspricht. Es versteht sich, daß die Ausführungsform gemäß Fig. 7 eine natürlichere Annäherung durchzuführen vermag.
Unter besonderen Bedingungen, beispielsweise X1 = X2, V1- y?, Ix1 - Xg\ β Jy1 - y2jläßt sich die Quantisierung mittels Hardware leicht ausführen. Die Quantisierung braucht deshaib bezüglich solcher spezieller Bedingungen nicht beschrieben zu werden. Es versteht sich ferner, daß sie mittels Software eines Computers durchgeführt werden kann.
Die vorliegende Erfindung läßt sich für Zeichenarbeit und dergleichen anwenden und verwendet einen quantisierten Wert von 40 000 χ 40 000.
16
Um den Anstieg der Gleichung (l) oder (3) zu ermitteln, betrug die herkömmliche Software-Processing-Zeitspanne JH see. - 20(USeC. bei einer Genauigkeit von 16 bits, und 4o^sec. - 500>usec. bei einer Genauigkeit von 32 bits. Da 3 - 5 see. für jedes Quantum erforderlich sind, ist es notwendig, 10 - 500//see. + 3 - 5/JSeC. χ 10 000 = 30 000 μ sec,
- 50 000 μ sec. (0,3 sec. - 0,5 sec.) dann aufzuwenden, wenn 10 000 Quantisierungsoperationen erforderlich sind.
Wird Software-Verarbeitung unter Verwendung der Hardware gemäß Fig. 5 vorgenommen, so muß man 15 see. - 20 see. für jedes Quantum aufwenden (15/rfsec. - 2Oysee. χ 10 = 1,5 - 2,0 sec.).
Andererseits benötigt die Hardware gemäß Hg. 7 0,05 see.
- 0,2 see. für jedes Quantum (0,05 see. - 0,2 see.
χ 10 000 = 500 see. - 2 000 see.) Die VerarbeitungsZeitspanne wird somit auf " x0Oabsekürzt* Bei tatsächlich durchgeführten Operationen sind diese Verarbeitungen viele Male erforderlich. Somit entstehen erhebliche Zeitgewinne im Falle eines gesamten Verarbeitungsprozesses. Hierdurch läßt sich mittels der Erfindung ein sehr erheblicher Gesamtwert an Zeitersparnis erzielen.
01432.1984
DrW/MJ
- Leerseite -

Claims (1)

  1. Patentansprüche
    Verfahren zum Verarbeiten von Liniensegment-Koordinaten bei hoher Geschwindigkeit zur Ermittlung der Koordinatenwerte von quantisierten, folgenden Dots auf einem Liniensegment, das zwei gewünschte Punkte (X1, V1), (x2, y2) in einem zweidimensionalen quantisierten Koordinatensystem miteinander verbindet, gekennzeichnet durch die Kombination der folgenden Merkmale:
    es werden Zähler vorgesehen, deren jeder eine Quantum-Einheit (quantum unit) als sein Bezugstaktsignal verwendet, jeweils mit der x-Achse und y-Achse;
    Bezugstaktsignale, die den Zählern einzugeben sind, werden gemäß der auf den zwei Punkten (X1, y·^, (x2, y2) kontrolliert; und
    Ausgangswerte der Zähler werden als Koordinatenwerte der quantisierten aufeinanderfolgenden Dots verwendet.
    Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Bezugstaktsignal einer Ein-Quantum-Eiriheit derart eingestellt sind, daß das Bezugstaktsignal mit dem umgekehrten Verhältnis der Differenzen I X1-X2J,\y1-y2l zwischen den gewünschten zwei Punkten (X^y1), (x2,y2) auf der x-Achse und der y-Achse konform ist, und daß die resultierenden Bezugstaktsignale den Zählern für die x-Achse und für die y-Achse eingegeben werden.
    Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Erzeugen des Bezugstaktsignales der Ein-Quantum-Eiriheit durch die Kombination von Addition, Subtraktion, relative Wertdiskrimination usw. der Differenzen |x.,-Xp| , jy..-y2| zwischen den gewünschten beiden Punkten (x^y.,),(x2,y2) auf der x-Achse und der y-Achse kontrolliert wird.
DE19843404001 1983-02-07 1984-02-06 Verfahren zum verarbeiten von liniensegment-koordinanten bei hoher geschwindigkeit Ceased DE3404001A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58017394A JPS59144973A (ja) 1983-02-07 1983-02-07 線分座標の高速処理方法

Publications (1)

Publication Number Publication Date
DE3404001A1 true DE3404001A1 (de) 1984-08-16

Family

ID=11942780

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843404001 Ceased DE3404001A1 (de) 1983-02-07 1984-02-06 Verfahren zum verarbeiten von liniensegment-koordinanten bei hoher geschwindigkeit

Country Status (4)

Country Link
US (1) US4593377A (de)
JP (1) JPS59144973A (de)
DE (1) DE3404001A1 (de)
GB (1) GB2136176A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3508606A1 (de) * 1984-03-12 1985-09-12 Daikin Industries, Ltd., Osaka Hochgeschwindigkeits-linearinterpolationsschal tung einer katodenstrahlroehren-display-einheit

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5499328A (en) * 1991-02-22 1996-03-12 Network Computing Devices, Inc. Line draw method for generating, storing and displaying lines in a display system
US5613053A (en) 1992-01-21 1997-03-18 Compaq Computer Corporation Video graphics controller with automatic starting for line draws
JPH07504052A (ja) * 1992-01-21 1995-04-27 コンパック・コンピュータ・コーポレイション 改善された計算性能を有するビデオグラフィック制御器
US5481658A (en) * 1993-09-20 1996-01-02 International Business Machines Corporation Method and apparatus for displaying a line passing through a plurality of boxes

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1524194B2 (de) * 1966-08-17 1971-03-18 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Anordnung zur interpolatn einer bahnkurve
DE2326851B1 (de) * 1973-01-23 1974-11-07 Siemens Ag, 1000 Berlin Und 8000 Muenchen Einrichtung zur Durchführung einer mehrdimensionalen Interpolation in Verbindung mit einem Festwertspeicher
DE2523680B2 (de) * 1974-05-30 1977-06-08 Asahi Kogaku Kogyo KJC., Tokio Vorrichtung zur anzeige von lichtinformationen

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1054000A (de) *
US3569682A (en) * 1968-02-02 1971-03-09 Gen Electric Multiple path numerical control system
US3657525A (en) * 1970-03-17 1972-04-18 Gen Electric Direct feed rate control circuit
US4000451A (en) * 1974-11-18 1976-12-28 The Superior Electric Company Motion control system and method for length coded sequential commands
JPS5850351B2 (ja) * 1976-03-09 1983-11-10 日本電気株式会社 ベクトル発生器
US4208723A (en) * 1977-11-28 1980-06-17 Gould Inc. Data point connection circuitry for use in display devices
JPS56168277A (en) * 1980-05-28 1981-12-24 Mitsubishi Electric Corp Linear approximating means

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1524194B2 (de) * 1966-08-17 1971-03-18 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Anordnung zur interpolatn einer bahnkurve
DE2326851B1 (de) * 1973-01-23 1974-11-07 Siemens Ag, 1000 Berlin Und 8000 Muenchen Einrichtung zur Durchführung einer mehrdimensionalen Interpolation in Verbindung mit einem Festwertspeicher
DE2523680B2 (de) * 1974-05-30 1977-06-08 Asahi Kogaku Kogyo KJC., Tokio Vorrichtung zur anzeige von lichtinformationen

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3508606A1 (de) * 1984-03-12 1985-09-12 Daikin Industries, Ltd., Osaka Hochgeschwindigkeits-linearinterpolationsschal tung einer katodenstrahlroehren-display-einheit

Also Published As

Publication number Publication date
JPS59144973A (ja) 1984-08-20
GB2136176A (en) 1984-09-12
US4593377A (en) 1986-06-03
GB8402509D0 (en) 1984-03-07

Similar Documents

Publication Publication Date Title
DE2536585C3 (de) Anordnung zur statistischen Signalanalyse
DE2150878C3 (de) Rekursives digitales Filter
DE3013554C2 (de) Schaltungsanordnung zum Auswerten von unterschiedlichen Synchronisationssignalen
DE2124754B2 (de) Verfahren und Vorrichtung zur differentiellen Pulscodemodulation
DE2405858A1 (de) Normalisierendes verschiebezaehlernetzwerk
DE2131635A1 (de) Digitale Komprimierschaltung
DE1201406B (de) In seinem Teilerfaktor einstellbarer digitaler Frequenzteiler
DE2951245A1 (de) Taktsignalverteilungsschaltungsanordnung und verfahren zum einstellen einer taktsignalverteilungsschaltung
DE1237177B (de) Asynchrone Zaehleinrichtung
DE3404001A1 (de) Verfahren zum verarbeiten von liniensegment-koordinanten bei hoher geschwindigkeit
DE3329023C2 (de)
DE68926613T2 (de) Gerät zur Signalwandlung, für Fernmeldevermittlungsanwendungen das die Quantisierungsfehler reduziert
DE1239124B (de) Vorrichtung zum Einspeichern einer Dezimalzahl in ein Register
DE3822324C2 (de) Vorrichtung zum Zerlegen des Prioritätswertes
DE2235802A1 (de) Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise
DE1292179B (de) Verfahren zur Analog-Digital-Umsetzung
DE2900587B2 (de) Decodierschaltung
DE3113189C2 (de) Vorrichtung zur Umsetzung von digitalen Zeichencodes, die von einem Datenverarbeitungssystem empfangen oder geliefert werden
DE1183723B (de) Elektronischer Schluesselgenerator
DE3124194A1 (de) &#34;frequenzabfuehlschaltung&#34;
DE1212151B (de) Statischer Zaehler mit Haupt- und Hilfsspeicher je Zaehlstufe
DE1282082B (de) Schaltungsanordnung zur Ablesung des Zaehlstandes eines aus mehrere Dekaden bestehenden Zaehlers fuer elektronische Impulse
EP0106000A1 (de) Digitalschaltung zur Unterdrückung von Änderungen eines Digitalsignals
DE2239737B1 (de) Elektronische vorrichtung zur verfuenffachung einer im 8-4-2-1-kode binaer kodierten dezimalzahl
DE1240928B (de) Gleichstromgekoppelter elektronischer Binaerzaehler

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection