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
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/406—Numerical 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/4069—Simulating machining process on screen
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric 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: (i≦i1; i2≦m) und für Objekt B:
(1≦j 1; j 2≦n), 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 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.
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)
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)
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 |
-
1986
- 1986-03-29 JP JP61072111A patent/JPS62229380A/ja active Pending
-
1987
- 1987-03-25 US US07/030,046 patent/US4860220A/en not_active Expired - Fee Related
- 1987-03-26 DE DE19873709919 patent/DE3709919A1/de active Granted
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 |