DE3709919C2 - - Google Patents

Info

Publication number
DE3709919C2
DE3709919C2 DE3709919A DE3709919A DE3709919C2 DE 3709919 C2 DE3709919 C2 DE 3709919C2 DE 3709919 A DE3709919 A DE 3709919A DE 3709919 A DE3709919 A DE 3709919A DE 3709919 C2 DE3709919 C2 DE 3709919C2
Authority
DE
Germany
Prior art keywords
dimensional
objects
data
viewing direction
outline data
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 - Lifetime
Application number
DE3709919A
Other languages
English (en)
Other versions
DE3709919A1 (de
Inventor
Toshiaki Kawasaki Kanagawa Jp Tanaka
Hiroyuki Yokohama Kanagawa Jp Mizutani
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Publication of DE3709919A1 publication Critical patent/DE3709919A1/de
Application granted granted Critical
Publication of DE3709919C2 publication Critical patent/DE3709919C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image

Description

Die Erfindung betrifft eine Vorrichtung gemäß Oberbegriff des Patentanspruchs 1.
Eine derartige Vorrichtung ist aus der US-PS 36 02 702 bekannt. Sie erzeugt elektrische Signale, die Flächen von Gegenständen darstellen, und bestimmt die räumliche Zuordnung dieser Flächen und immer kleinerer Abschnitte einer zweidimensionalen Beobachtungsebene oder des Sichtschirms einer Anzeige. Die räumlichen Zuordnungen werden dann verwendet, um die Flächen zu bestimmen, die innerhalb jedes kleinsten Abschnittes der Sichtebene oder des Sichtschirms angezeigt werden sollen. Dabei werden Polygongleichungen zum Anzeigen der Bilder auf dem Schirm berechnet.
Bei fortschreitender Roboter-Technologie wurden verschiedene Sprachen zur Steuerung und Betätigung von Robotern entwickelt. Derartige Roboter-Computersprachen werden häufig dazu benutzt, die Arbeit eines Roboters zu simulieren.
Die Roboter-Simulatoren bilden die Roboterarme sowie dreidimensionale Objekte ab, die für den Roboter die Werkstücke sind, mit denen er arbeiten soll. Die Roboterarme und die Werkstücke werden auf der Anzeigeeinheit als zweidimensionale Figuren abgebildet. Ferner kann der Bewegungsablauf der Roboterarme auf der Anzeigeeinheit dargestellt werden. Bei der zweidimensionalen Abbildung dreidimensionaler Objekte wird jedes Objekt als projizierte oder perspektivische Figur dargestellt, wie sie aus einer bestimmten Blickrichtung erscheint. Dementsprechend verfolgt der Benutzer die Bewegung des Roboters auf dem zweidimensionalen Bildschirm der Anzeigeeinheit, die mit Hilfe der Robotersprache gesteuert wird, wobei gleichzeitig überprüft werden muß, ob die auf dem Bildschirm dargestellten Objekte miteinander verbunden sind oder nicht. Beispielsweise können die zweidimensional dargestellten Figuren ineinander liegen oder sich gegenseitig berühren.
Bei Verwendung projizierter oder perspektivischer Ansichten variieren die dargestellten Lagerelationen zwischen den Objekten in Abhängigkeit der Blickrichtung. In einem solchen Fall kann der Benutzer nur sehr schwer erkennen, ob die einzelnen Objekte tatsächlich miteinander räumlich in Verbindung stehen bzw. sich gegenseitig berühren oder ob es aufgrund der gewählten Blickrichtung nur so scheint, daß die Objekte miteinander verbunden sind, so daß durch eine Änderung der Blickrichtung eine Trennung der dargestellten Objekte voneinander möglich ist.
Falls deshalb mehrere zweidimensional abgebildete Figuren überlappend dargestellt sind, so daß es nicht einwandfrei ersichtlich ist, ob tatsächlich zwischen ihnen eine räumliche Verbindung besteht oder nicht, gibt der Benutzer Eingabebefehle zur Veränderung der Blickrichtung. Aufgrund dieser Eingabebefehle verändert der Simulator die projizierte oder perspektivische Ansicht der dreidimensionalen Objekte. Dabei können andere Blickrichtungen und die dadurch veränderten zweidimensionalen Abbildungen vom Benutzer nur aufgrund von Versuchen ausgewählt werden. Dabei kommt es häufig vor, daß die Blickrichtung so oft verändert werden muß, bis sich der Benutzer davon überzeugt hat, daß zwischen den dargestellten Objekten keine Verbindung oder Berührung (Störung) besteht. Deshalb sind die so arbeitenden herkömmlichen Geräte nicht sehr effektiv.
Die Arbeitsweise und Programmierung eines Roboters wird in einem Aufsatz von Kodaira et al., "Interactive Robot Programming with Real-Time Graphic Simulation", IECON ′84, S. 35 bis 39, beschrieben.
Die Aufgabe der Erfindung ist daher die Schaffung einer Vorrichtung zur zweidimensionalen Abbildung dreidimensionaler Objekte, mit der ohne wiederholtes Verändern der Blickrichtung festgestellt werden kann, ob die dargestellten Objekte sich berühren bzw. miteinander verbunden sind oder nicht. Diese Aufgabe wird durch die im Anspruch 1 gekennzeichneten Merkmale gelöst.
Bei der erfindungsgemäßen Vorrichtung werden für jedes ausgewählte dreidimensionale Objekt dessen Umrißdaten, insbesondere dessen Form- und Lagedaten aus dem Datenspeicher ausgelesen und daraus die Blickrichtung ermittelt, durch die die als zweidimensionale Figuren abgebildeten dreidimensionalen Objekte so dargestellt sind, daß sie weder ineinander liegen, noch miteinander räumlich verbunden sind. Dementsprechend ermittelt die Vorrichtung Daten zur zweidimensionalen Abbildung dreidimensionaler Objekte entsprechend der berechneten Blickrichtung und den ermittelten Umrißdaten. Somit kann mit der erfindungsgemäßen Vorrichtung unter Verwendung der Umrißdaten leicht überprüft werden, ob zwischen den dargestellten dreidimensionalen Objekten eine räumliche Verbindung besteht oder nicht. Falls durch die Vorrichtung festgestellt worden ist, daß tatsächlich keine räumliche Verbindung (Störung) zwischen den Objekten besteht, wird diejenige Blickrichtung berechnet, in der die Objekte in nicht ineinander liegender oder miteinander verbundener Anordnung darstellbar sind, und in Abhängigkeit von dieser Blickrichtung werden die Umrißdaten zur zweidimensionalen Abbildung ermittelt. Auf diese Weise können diejenigen Objekte, zwischen denen keine körperliche Verbindung besteht, als zweidimensionale Figuren in einer Weise abgebildet werden, aus der klar hervorgeht, daß zwischen diesen Objekten eben keine Verbindung besteht. Somit entfällt für den Benutzer die schwierige Suche nach einer geeigneten Blickrichtung, wie er sie bei herkömmlichen Geräten während vieler Versuche durchführen mußte. Deshalb kann mit der Erfindung eine Roboter-Simulation sehr effektiv durchgeführt werden.
Die Erfindung wird nachstehend anhand des in den Zeichnungen dargestellten Ausführungsbeispiels erläutert. Es zeigt
Fig. 1 ein Blockschaltbild der Vorrichtung zur zweidimensionalen Abbildung dreidimensionaler Objekte;
Fig. 2A schematisch die Darstellung eines dreidimensionalen Objektes mit Bezeichnungen für dessen Scheitelpunkte, Kanten und Oberflächen;
Fig. 2B schematisch die Abspeicherung der Umrißdaten des in Fig. 2A dargestellten Objektes in Matrixform;
Fig. 3 ein Flußdiagramm zur Darstellung der Arbeitsweise der Vorrichtung aus Fig. 1;
Fig. 4 beispielhaft die Lagerelation zweier Objekte zur zweidimensionalen Abbildung;
Fig. 5A eine erste zweidimensionale Abbildung dreidimensionaler Objekte auf einem Bildschirm; und
Fig. 5B eine zweite zweidimensionale Abbildung derselben dreidimensionalen Objekte aus Fig. 5A auf einem Bildschirm.
Fig. 1 zeigt eine bevorzugte Ausführungsform einer Vorrichtung zur zweidimensionalen Abbildung dreidimensionaler Objekte für eine Roboter-Simulation.
Als Eingabeeinheit 1 kann beispielsweise eine Tastatur zur Eingabe von Steuerbefehlen für die Bedienung eines Roboter- Simulators vorgesehen sein. Auf einer Anzeigeeinheit 2 werden in zweidimensionaler Form der Roboter und die zugehörigen Objekte abgebildet, mit denen der Roboter arbeitet. Ein Simulator 3 enthält einen Datenspeicher 4, der die Umrißdaten, insbesondere die Form- und Lagedaten, des Roboters und der dreidimensionalen Objekte abspeichert, eine Anzeigesteuereinheit 5, die die Daten zur zweidimensionalen Abbildung des Roboters und der dreidimensionalen Objekte auf dem Bildschirm erzeugt und eine Recheneinheit 6, die eine geeignete Blickrichtung zur zweidimensionalen Abbildung des Roboters und der dreidimensionalen Objekte ermittelt.
Im Datenspeicher 4 werden die Form- und Lagedaten des Roboters und der dreidimensionalen Objekte, die die Werkstücke für den Roboter sind, als Lagekoordinaten sämtlicher Scheitelpunkte, Kanten und Oberflächen in einem festgelegten dreidimensionalen Koordinatenraum abgelegt. In Fig. 2B ist beispielhaft die matrixartige Abspeicherung der Form- und Lagedaten gezeigt. Z. B. werden für den in Fig. 2A dargestellten rechteckigen Parallelepiped die Koordinatendaten für acht Scheitelpunkte a 1 bis a 8 (absolute Koordinatenwerte), zwölf Seitenkanten l 1 bis l 12 (in Form der beiden Endpunkte) und für sechs Flächen s 1 bis s 6 (als Anzahl derer sämtlicher Eckpunkte) abgespeichert, wie in Fig. 2B schematisch gezeigt ist.
Für jedes Objekt können deren Umrißdaten wieder abgerufen werden, wenn der Name des Objektes über die Eingabeeinheit 1 eingegeben wird, indem entsprechend der Bezeichnung des Objektes der Aufruf der Anzeige aus dem Datenspeicher 4 geändert wird. Diese Information wird entsprechend zur Anzeigesteuereinheit 5 und der Recheneinheit 6 zur Berechnung der Blickrichtung weitergeleitet.
Die Anzeigesteuereinheit 5 ermittelt die Daten zur zweidimensionalen Abbildung, indem für jedes Objekt aus ihren Umrißdaten entsprechend der durch die Recheneinheit 6 ermittelten Blickrichtung (Blickrichtungsvektor) die projizierten Koordinaten berechnet werden, wie sie unter Berücksichtigung dieser bestimmten Blickrichtung vorhanden sind. Diese in der Anzeigesteuereinheit 5 berechneten Daten zur zweidimensionalen Abbildung werden in die Anzeigeeinheit 2 gegeben, wo die zweidimensionale Figur abgebildet wird. Gewöhnlicherweise wird von der Recheneinheit 6 eine Information für eine bestimmte Blickrichtung bereitgestellt. Dementsprechend erzeugt die Anzeigesteuereinheit 5 Daten zur zweidimensionalen Abbildung unter Berücksichtigung dieser Blickrichtung und läßt in dieser Weise das Objekt in zweidimensionaler Form auf der Anzeigeeinheit 2 abbilden.
Die Recheneinheit 6 zur Berechnung der Blickrichtung wird aktiviert, wenn vom Benutzer über die Eingabeeinheit 1 ein Eingabebefehl zur Änderung der Blickrichtung eingegeben wird, und berechnet einen neuen Blickrichtungsvektor zur Abbildung eines dreidimensionalen Objektes als zweidimensionale Figur.
Im folgenden soll anhand von Fig. 3 die Arbeitsweise der Vorrichtung zur zweidimensionalen Abbildung dreidimensionaler Objekte beschrieben werden. Wenn auf der Anzeigeeinheit 2 einige Objekte in ineinanderliegender oder sich gegenseitig berührender Anordnung (interferential relationship) dargestellt sind (z. B. in überlappender Form), wird über die Eingabeeinheit 1 ein Befehl zur Änderung der Abbildung eingegeben. Dazu werden die Bezeichnungen von denjenigen beiden Objekten angegeben, deren ineinanderliegende Darstellung näher untersucht werden soll (Schritt a). Anschließend holt sich die Recheneinheit 6 zur Berechnung der Blickrichtung die entsprechenden Form- und Lagedaten der beiden Objekte aus dem Datenspeicher 4 (Schritt b). Ob eines oder beide Objekte konvexe Form haben, wird als nächstes überprüft (Schritt c). Handelt es sich um konvexe Objekte (d. h. die Oberflächen des oder der Objekte sind konvex), wird überprüft, ob die beiden Objekte tatsächlich miteinander verbunden sind bzw. sich gegenseitig berühren (Schritt d). Wird festgestellt, daß zwischen den Objekten keine körperliche Verbindung (Interferenz) besteht, wird unter Verwendung der Form- und Lagedaten für die beiden Objekte der Normalvektor einer Ebene bestimmt, welche die beiden Objekte voneinander trennt (Schritt e). Die Bestimmung dieses Normalvektors wird so lange durchgeführt, bis eine befriedigende Abbildung gefunden wird, d. h. bis ein Vektor bestimmt ist, der senkrecht auf einer Ebene liegt, die vollständig beide Objekte voneinander trennt (Schritt f). Nachdem ein Normalvektor ermittelt worden ist, wird ein Blickrichtungsvektor errechnet, der orthogonal zum Normalvektor liegt, und somit eine Blickrichtung, in der die Abbildung der beiden Objekte als zweidimensionale Figuren ohne gegenseitige Berührung möglich ist (Schritt g). Der so ermittelte Blickrichtungsvektor wird in die Anzeigesteuereinheit 5 eingegeben, wo die Daten zur zweidimensionalen Abbildung der beiden Objekte entsprechend der Blickrichtung erzeugt werden (Schritt h). Die auf diese Weise neu gebildete zweidimensionale Figur wird dann auf der Anzeigeeinheit 2 abgebildet (Schritt i). Auf diese Weise wird eine Blickrichtung, in der eine zweidimensionale Figur unklar abgebildet wird und die deshalb keine eindeutige Lagerelation der dreidimensionalen Objekte zueinander erkennen läßt, in eine andere Blickrichtung verändert, in der die räumliche Anordnung der Objekte zueinander unzweideutig erkennbar ist.
Im folgenden soll die Berechnung der Blickrichtung in der Recheneinheit 6 im Detail beschrieben werden.
Wenn die Bezeichnungen zweier Objekte A und B, die auf der Anzeigeeinheit 2 in sich gegenseitig überlappender Anordnung abgebildet sind, über die Eingabeeinheit 1 eingegeben werden, werden deren Umrißdaten wie folgt ausgelesen:
A = {a i (i = l, . . . m), l i ′ (i′ = 1, . . . m), s 1″ (i″ = 1, . . . m″)}
B = {b j (j = 1, . . . n), l j ′ (j′ = 1, . . . n′), s j ″ (j″ = 1, . . . n″)},
(a i , b j : Scheitelpunkt-Koordinaten; l 1′, l j ′: Endpunkte der Seitenkanten; s i ″, s j ″: Eckpunkte der Oberflächen).
Anschließend wird überprüft, ob die beiden Objekte A und B konvex sind. Das Verfahren zur Erkennung, ob ein Objekt konvex ist, besteht darin, daß sämtliche Segmente, die man durch Verbinden beliebiger Eckpunkte des Objektes erhält (nämlich für Objekt A: (ii1; i2≦m) und für Objekt B: (1≦j 1; j 2n), innerhalb des Objektes enthalten sein müssen.
Falls mindestens eines der Objekte eine konkave Oberfläche aufweist, können sich die Objekte gegenseitig durchdringen, obwohl sie sich nicht berühren. In solchen Fällen ist es nicht möglich, die Objekte trotz Veränderungen der Blickrichtung als getrennte zweidimensionale Figuren abzubilden. In solchen Fällen erfolgt keine Berechnung einer neuen Blickrichtung. Falls jedoch beide Objekte in einem ausreichenden Abstand voneinander getrennt angeordnet sind, so daß ein konkaves Objekt als "konvex" betrachtet werden kann, ist eine Berechnung der Blickrichtung für eine neue zweidimensionale Abbildung möglich.
Wenn festgestellt wird, daß die beiden Objekte A und B konvex sind, wird auf Grundlage ihrer Umrißdaten zuerst geprüft, ob sie miteinander in körperlicher Verbindung stehen oder nicht. Dabei wird festgestellt, ob das Objekt A mit mindestens einer seiner Kanten die Oberflächen des Objektes B durchschneidet. D. h. die Geraden-Gleichung für eine beliebige Kante des Objektes A wird aus l i , und die Ebenen-Gleichung für eine beliebige Ebene des Objektes B aus s j ″ bestimmt und daraus der Schnittpunkt zwischen der entsprechenden Gerade und der entsprechenden unendlichen Ebene berechnet.
Als nächstes wird ermittelt, ob dieser Schnittpunkt auf der endlichen Kante des Objektes A und in der endlichen Ebene der Oberfläche des Objektes B liegt, wobei eine derartige Überprüfung für alle möglichen Kombinationen aller Kanten des Objektes A und aller Oberflächen des Objektes B erfolgt. Falls für alle erdenklichen Kombinationen festgestellt wird, daß sich die Kanten des Objektes A mit den Oberflächen des Objektes B nicht schneiden, wird die Überprüfung für den umgekehrten Fall fortgesetzt, nämlich für jede Kante des Objektes B und jede Oberfläche des Objektes A. Falls für alle erdenklichen Kombinationen keine Schnittpunkte gefunden worden sind, kann festgestellt werden, daß zwischen den Objekten A und B keine körperliche Verbindung oder gegenseitige Berührung besteht. Falls dagegen festgestellt worden ist, daß eine derartige körperliche Berührung oder Verbindung zwischen den Objekten besteht, ist es nicht möglich, eine getrennte zweidimensionale Abbildung beider Figuren zu erhalten, so daß die weitere Verarbeitung an dieser Stelle abgebrochen wird.
Falls sich nun beide konvexe Objekte A und B im dreidimensionalen Raum nicht körperlich berühren oder miteinander verbunden sind, kann somit irgendeine Ebene C angenommen werden, die zwischen den Objekten A und B verläuft und diese voneinander trennt (Fig. 4). Wählt man dabei eine Blickrichtung in Richtung der Ebene C, erhält man eine Abbildung beider Objekte A und B als voneinander getrennte zweidimensionale Figuren.
Mit einem festen Punkt e in der Ebene C, einem beliebigen Punkt x in der Ebene C und dem Normalvektor n zur Ebene C erhält man die Ebenen-Gleichung für die Ebene C mit
(x-e) · n = 0,
wobei "·" das innere Produkt bezeichnet. Falls jeweils die Scheitelpunkte a i und b j der beiden Objekte A und B durch die Ebene C in zwei Regionen voneinander örtlich getrennt werden, ist somit klar, daß die Ebene C die Objekte A und B im dreidimensionalen Raum örtlich voneinander trennt, so daß es ausreicht, wenn folgende Bedingungen zutreffen:
(a i -e) · n ≦λτ 0, (i = 1, 2, . . . m);
(b j -e) · n ≦ωτ 0, (j = 1, 2, . . . n). (1)
Zur Ermittlung eines Normalvektors n genügen somit die oben angegebenen Bedingungen. Zur Bestimmung eines Vektors V wird
V · n = 0
gesetzt, wobei der Vektor V als Blickrichtungsvektor gewählt wird. D. h. der Blickrichtungsvektor V wird für diejenige Blickrichtung verwendet, in der die beiden Objekte A und B als zweidimensionale und zugleich sich nicht überlappende Figuren darstellbar sind. (Hierbei sei angemerkt, daß aus der oben angegebenen Orthogonal-Bedingung mehrere unterschiedliche Vektoren V ermittelt werden können; es genügt jedoch, nur eine dieser Lösungen zu verwenden.)
Der feste Punkt e in der Ebene C kann wie folgt bestimmt werden. Als erstes werden die Schwerpunkte g a und g b der beiden Objekte A und B aus den Scheitelpunkt-Koordinaten in den Umrißdaten wie folgt ermittelt:
Da es sich bei den beiden Objekten A und B um konvexe Körper handelt, liegen die Schwerpunkte g a und g b innerhalb der Objekte. Da sich außerdem die Objekte A und B körperlich nicht berühren oder miteinander verbunden sind, kann ein Punkt auf einer beide Schwerpunkte g a und g b verbindenden Verbindungsgeraden angenommen werden, der weder innerhalb des einen noch des anderen Objektes liegt. Demnach kann man als festen Punkt e einen beliebigen Punkt auf der Verbindungslinie wählen, sofern er sich nicht innerhalb eines der beiden Objekte A und B befindet.
Mit Hilfe der Gleichung für die Verbindungsgerade
k = g a + t (g b -g a ), 0 ≦ t ≦ 1,
kann auf der Verbindungsgeraden für einen Punkt k der Maximalwert von t (= t a ), wenn der Punkt k innerhalb des Objektes A liegt, und der Minimalwert von t (= t b ) ermittelt werden, wenn der Punkt k innerhalb des Objektes B liegt. Anschließend kann der feste Punkt e als Mittelpunkt zwischen diesen Punkten folgendermaßen berechnet werden:
(siehe Fig. 4).
Andererseits kann der Normalvektor n auf der Ebene C z. B. durch Anwendung des Lernsystems von Perceptron ermittelt werden.
Das Perceptron-Lernsystem entspricht etwa folgendem Problem: Unter der Annahme, eine Anzahl von Punkten in einem n-dimensionalen Raum sei bereits in zwei Klassen eingeordnet, wird eine lineare Funktion gesucht, die diese Punkte in diese zwei Klassen unterteilt, d. h. eine lineare Funktion, die positiv für die Punkte der einen Klasse und negativ für die Punkte der anderen Klasse ist. Dieses Problem läßt sich in einer Weise lösen, wie sie in der Veröffentlichung von M. Minsky und S. Papert in "Perceptrons" beschrieben ist (MIT Press 1969).
Mit a i -e = a i ′, b j ′-e = b j ′ wird Gleichung (1) umgewandelt zu
a i ′ · n ≦λτ 0 (i-1, 2, . . . m),
b j ′ · n ≦ωτ 0 (j-1, 2, . . . n). (2)
Nach beliebiger Wahl eines Anfangswertes für den Normalvektor n wird geprüft, ob vom Normalvektor n die Bedingungen in Gleichung (2) erfüllt werden oder nicht. Z. B. wählt man
als Anfangswert für n und prüft, ob für a i ′ und b j ′ die Bedingungen in Gleichung (2) zutreffen oder nicht. Falls mindestens eine der Bedingungen in Gleichung (2) für a i und b j ′ nicht zutreffen, muß der Anfangswert des Normalvektors n folgendermaßen geändert werden:
(Falls a i ′ · n ≦ 0):
(falls b j ′ · n ≧ 0):
wobei ∥a i ′∥ der Betrag eines Vektors ist. Indem man die Werte für den Normalvektor wiederholt verändert und dabei prüft, ob für den so gewählten Normalvektor n die Bedingungen in Gleichung (2) zutreffen, kann ein Normalvektor n gefunden werden, der beiden Bedingungen entspricht.
Entsprechend der Lernmethode von Perceptron ist das Vorhandensein einer Lösung garantiert, so daß mit einer begrenzten Anzahl von Änderungen des Normalvektors n die Bestimmung eines Normalvektors n möglich ist, bei welchen die Bedingungen von Gleichung (2) zutreffen.
Unter Verwendung eines auf diese Weise gefundenen Normalvektors n kann nun die Blickrichtung (Blickrichtungsvektor V) ermittelt werden, in der die beiden Objekte A und B vollkommen getrennt voneinander in zweidimensionaler Anordnung darstellbar sind.
Beispielsweise mit einem Normalvektor n
und mit einem Blickrichtungsvektor V
erhält man aus V · n = 0
n x v x + n y v y + n z v z = 0,
v x 2 + v y 2 + v z 2 = 1.
(Obwohl mehrere Lösungen existieren, braucht nur eine ermittelt zu werden).
Wenn ein Blickrichtungsvektor V auf diese Weise ermittelt worden ist, gibt die Recheneinheit 6 (Fig. 1) diese Information an die Anzeigesteuereinheit 5 weiter. Die Anzeigesteuereinheit 5 erzeugt Daten zur zweidimensionalen Abbildung aus dem Blickrichtungsvektor V und den Scheitelpunkt- Koordinaten a i und b j , welche aus dem Datenspeicher 4 gelesen werden. Beispielsweise kann die Transformationsmatrix m für die Blickrichtung wie folgt lauten:
Mit den Scheitelpunkt-Koordinaten
erhält man die Scheitelpunkt-Koordinaten (X, Y) der auf der Anzeigeeinheit 2 abgebildeten zweidimensionalen Figur aus der Gleichung
Wenn die Lagerelation beider Objekte X und Y zueinander bei einer Abbildung als zweidimensionale Figuren auf dem Bildschirm unklar ist (Fig. 5A), kann die Blickrichtung durch Eingabe über die Eingabeeinheit 1 und Bezeichnung beider Objekte verändert werden, so daß die räumliche Anordnung beider Objekte zueinander besser sichtbar wird. Dabei kann die Blickrichtung entsprechend Fig. 5A in eine andere Blickrichtung entsprechend Fig. 5B geändert werden. D. h. die beiden Objekte X und Y, die in Fig. 5A noch in überlappender Anordnung gezeigt sind, können als zwei räumlich voneinander getrennte zwei dimensionale Figuren abgebildet werden, wie in Fig. 5B gezeigt ist, ohne daß der Benutzer viele Versuche zur Ermittlung einer geeigneten Blickrichtung durchführen muß.
Es sei angemerkt, daß mit der Erfindung ebenfalls die räumliche Zuordnung dreier oder mehrerer Objekte zueinander festgestellt werden kann, wobei eine Blickrichtung gefunden werden kann, in der der überlappende Anteil zwischen den Objekten am geringsten ist. D. h. die geeignete Blickrichtung kann so bestimmt werden, daß ein bestimmter Bereich, in dem sich die überlappenden Anteile der abgebildeten Objekte häufen, bei der zweidimensionalen Abbildung aufgetrennt wird.

Claims (6)

1. Vorrichtung zur zweidimensionalen Abbildung dreidimensionaler Objekte, mit
  • - einem Datenspeicher (4) zur Speicherung von Umrißdaten, insbesondere Form- und Lagedaten, dreidimensionaler Objekte;
  • - einer Einrichtung zum Auslesen der Umrißdaten ausgewählter dreidimensionaler Objekte aus dem Datenspeicher (4);
  • - einer Recheneinheit (6) zur Berechnung des Blickrichtungsvektors (V) für die Abbildung ausgewählter dreidimensionaler Objekte (A, B) als zweidimensionale Figuren entsprechend den aus dem Datenspeicher (4) ausgelesenen Umrißdaten;
  • - einer Anzeigesteuereinheit (5) zur Berechnung von Daten für die zweidimensionale Abbildung ausgewählter dreidimensionaler Objekte (A, B) entsprechend den aus dem Datenspeicher (4) ausgelesenen Umrißdaten und dem durch die Recheneinheit (6) berechneten Blickrichtungsvektor (V); und
  • - einer Anzeigeeinheit (2) zur Abbildung ausgewählter dreidimensionaler Objekte als zweidimensionale Figuren entsprechend den durch die Anzeigesteuereinheit (5) berechneten Daten;
dadurch gekennzeichnet, daß die Recheneinheit (6) einen der Blickrichtungsvektoren (V) bestimmt, der zwischen den zweidimensional abgebildeten Objekte (A, B) verläuft, wenn diese nicht ineinander liegen bzw. sich gegenseitig berühren.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Umrißdaten aus den Lagekoordinaten aller Scheitelpunkte, Endpunkte der Kanten und Eckpunkte der Oberflächen eines dreidimensionalen Objektes (A, B) in einem festgelegten dreidimensionalen Koordinatenraum bestehen.
3. Vorrichtung nach Anspruch 1, gekennzeichnet durch eine Eingabeeinheit (1) zur Bezeichnung von denjenigen Objekten (A, B), deren zweidimensionale Abbildung auf der Anzeigeeinheit (2) verändert werden soll, wobei die Anzeigeeinheit (2) direkt auf die Eingabeeinheit (1) anspricht.
4. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Recheneinheit (6) unter Verwendung der entsprechenden Umrißdaten ermittelt, ob die Oberflächen der entsprechenden dreidimensionalen Objekte (A, B) konvex sind.
5. Vorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Recheneinheit (6) unter Verwendung der Umrißdaten zweier Objekte (A, B) einen Normalvektor (n) zu einer Ebene (C) berechnet, welche die beiden Objekte (A, B) voneinander trennt, und daraus einen orthogonal zum Normalvektor (n) liegenden Blickrichtungsvektor (V) ermittelt.
DE19873709919 1986-03-29 1987-03-26 Vorrichtung zur zweidimensionalen abbildung dreidimensionaler objekte Granted DE3709919A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61072111A JPS62229380A (ja) 1986-03-29 1986-03-29 3次元物体表示装置

Publications (2)

Publication Number Publication Date
DE3709919A1 DE3709919A1 (de) 1987-10-08
DE3709919C2 true DE3709919C2 (de) 1990-03-01

Family

ID=13479941

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19873709919 Granted DE3709919A1 (de) 1986-03-29 1987-03-26 Vorrichtung zur zweidimensionalen abbildung dreidimensionaler objekte

Country Status (3)

Country Link
US (1) US4860220A (de)
JP (1) JPS62229380A (de)
DE (1) DE3709919A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0539179B1 (de) * 1991-10-24 1999-06-16 Canon Kabushiki Kaisha Einrichtung und Verfahren zur kinematischen Simulierung
GB9303009D0 (en) * 1993-02-15 1993-03-31 Canon Res Ct Europe Ltd Processing image data
JPH07225859A (ja) * 1994-02-14 1995-08-22 Toshiba Corp オブジェクト表示装置
US5561749A (en) * 1994-12-02 1996-10-01 General Electric Company Modeling of surfaces employing polygon strips
US5801711A (en) * 1995-08-08 1998-09-01 Hewlett Packard Company Polyline and triangle strip data management techniques for enhancing performance of computer graphics system
JPH11155152A (ja) * 1997-11-21 1999-06-08 Canon Inc 三次元形状情報入力方法及び装置及び画像入力装置
US6741245B1 (en) * 1999-04-23 2004-05-25 Mitsubishi Electric Research Laboratories, Inc. Method for decorating a virtual model
US20030210244A1 (en) * 2002-05-10 2003-11-13 Canon Kabushiki Kaisha Information processing apparatus and method
JP2004199496A (ja) * 2002-12-19 2004-07-15 Sony Corp 情報処理装置および方法、並びにプログラム
JP2007334678A (ja) * 2006-06-15 2007-12-27 Fanuc Ltd ロボットシミュレーション装置
CN106003025A (zh) * 2016-05-31 2016-10-12 上海未来伙伴机器人有限公司 三维机器人模型创建方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3621214A (en) * 1968-11-13 1971-11-16 Gordon W Romney Electronically generated perspective images
US3602702A (en) * 1969-05-19 1971-08-31 Univ Utah Electronically generated perspective images
US4222048A (en) * 1978-06-02 1980-09-09 The Boeing Company Three dimension graphic generator for displays with hidden lines
US4238826A (en) * 1979-02-12 1980-12-09 Aai Corporation Method and apparatus for image signal generation and image display
US4594673A (en) * 1983-06-28 1986-06-10 Gti Corporation Hidden surface processor
IL72685A (en) * 1983-08-30 1988-08-31 Gen Electric Advanced video object generator
US4736306A (en) * 1985-04-29 1988-04-05 The United States Of America As Represented By The United States Department Of Energy System for conversion between the boundary representation model and a constructive solid geometry model of an object

Also Published As

Publication number Publication date
US4860220A (en) 1989-08-22
JPS62229380A (ja) 1987-10-08
DE3709919A1 (de) 1987-10-08

Similar Documents

Publication Publication Date Title
DE3338765C2 (de) Schaltungsanordnung zur Darstellung von veränderbaren Gebilden
DE60023447T2 (de) Verfahren zur berechnung der lage und ausrichtung eines objektes im dreidimensionalen raum
DE10043460C2 (de) Auffinden von Körperpartien durch Auswerten von Kantenrichtungsinformation
DE19516664C1 (de) Verfahren zum Aufbau einer Farbtabelle in einer Computereinheit zur Klassifikation von Bildpunkten in einem Bild
DE3407983C2 (de) Mehrprozessorrechnersystem zum Erzeugen von Bildpunktinformationen aus in einer hierarchischen Datenstruktur definierten Objektelementen
DE60133386T2 (de) Vorrichtung und verfahren zur anzeige eines ziels mittels bildverarbeitung ohne drei dimensionales modellieren
DE10144932B4 (de) Visualisierung von Werkstücken bei der Simulation von Fräsprozessen
DE19509884C2 (de) Verfahren zum Ausrichten von Zuschnittsegmenten
DE3608438A1 (de) Verfahren zum berechnen von freien gekruemmten flaechen mittels computergestuetztem design cad und computergestuetzter herstellung cam und numerischer steuerung nc
DE102012103075B4 (de) Werkzeugweg-Darstelleinrichtung für Werkzeugmaschinen
DE3709919C2 (de)
DE112009004371T5 (de) Kollisionsbestimmungsvorrichtung und Kollisionsbestimmungsprogramm
DE4303071A1 (de) Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung
EP0372107A1 (de) Verfahren zur Simulation der Bearbeitung eines Werkstückes und Darstellung desselben, sowie Vorrichtung zur Durchführung des Verfahrens
DE19704529B4 (de) Verfahren zum automatischen Erzeugen und Handhaben einer Schatten-Geometrie und interaktive computergestützte Anzeigeeinrichtung
DE60020234T2 (de) Verfahren und vorrichtung zur bildwiedergabe
DE102005010225A1 (de) Verfahren zum Vergleich eines realen Gegenstandes mit einem digitalen Modell
DE19817583A1 (de) Verfahren und System zur Datenverarbeitung für dreidimensionale Objekte
EP1145086B1 (de) Verfahren und anordnung zur ermittlung eines ähnlichkeitsmasses einer ersten struktur mit mindestens einer vorgegebenen zweiten struktur
DE10242922A1 (de) Rechnergestütztes Selektionsverfahren für einen Teil eines Volumens
EP0524934B1 (de) Vorrichtung zum überwachen und planen von funktionen einer funkenerosionsmaschine
DE102014009389B3 (de) Prüfungsmodul für eine kombinierte Fräs-Dreh-Maschine
DE4443728C1 (de) Verfahren zur Bestimmung der Form eines Körpers
DE3821322C2 (de)
DE3706456A1 (de) Verfahren und vorrichtung zur synthese von kartographischen bewegten, dreidimensionalen bildern

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
8328 Change in the person/name/address of the agent

Free format text: STOLBERG-WERNIGERODE, GRAF ZU, U., DIPL.-CHEM. DR.RER.NAT. SUCHANTKE, J., DIPL.-ING. HUBER, A., DIPL.-ING. KAMEKE, VON, A., DIPL.-CHEM. DR.RER.NAT. VOELKER, I., DIPL.-BIOL., PAT.-ANWAELTE, 2000 HAMBURG

8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee