DE4303071A1 - Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung - Google Patents

Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung

Info

Publication number
DE4303071A1
DE4303071A1 DE4303071A DE4303071A DE4303071A1 DE 4303071 A1 DE4303071 A1 DE 4303071A1 DE 4303071 A DE4303071 A DE 4303071A DE 4303071 A DE4303071 A DE 4303071A DE 4303071 A1 DE4303071 A1 DE 4303071A1
Authority
DE
Germany
Prior art keywords
topological
edge
sizes
edges
merged
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
DE4303071A
Other languages
English (en)
Inventor
Gary A Crocker
Kevin Weiler
William Reinke
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.)
Computervision Corp
Original Assignee
Computervision 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 Computervision Corp filed Critical Computervision Corp
Publication of DE4303071A1 publication Critical patent/DE4303071A1/de
Ceased legal-status Critical Current

Links

Classifications

    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes

Description

Die vorliegende Erfindung betrifft allgemein Informationsbearbeitungssysteme zur Darstellung von Objekten in drei Dimensionen. Insbesondere betrifft die vorliegende Erfindung Systeme, welche Randdarstellungen (BREPs) zur Darstellung von Objekten in einer Nicht-Mannigfaltigkeits-Umgebung verwenden.
Im Stand der Technik hat das Modellieren von Objekten in drei Dimensionen unter Verwendung von Informationsbearbeitungssystemen zahlreiche Anwendungszwecke. Beispielsweise werden Softwaremodelle während des Entwurfs mechanischer Teile eingesetzt. Die Untersuchung eines Modells eines Teils bezüglich Parametern wie beispielsweise einer ordnungsgemäßen Paßform ist normalerweise erheblich weniger kostenaufwendig, als wenn ein tatsächliches Teil untersucht wurde. Ein weiterer wesentlicher Zweck des Modellierens besteht darin, ein visuelles Bild eines Teils zu erhalten, welches gerade entworfen wird. Daher wurden verschiedene Modelliertechniken entwickelt und optimiert, um verschiedene Parameter eines modellierten Teils zu bestimmen und visuelle Bilder eines modellierten Teils zur Verfügung zu stellen.
Es gibt zwei Arten der Darstellung komplexer Information, wie sie in einem massiven Modell enthalten ist, nämlich explizit und implizit. Bei einer expliziten Darstellung sind Operationen vollständig aufgelöst, die durch die Eingangsdaten aufgerufen werden. Daher enthält die Darstellung nur das Endergebnis dieser Operationen, die durch die Eingangsdaten aufgerufen wurden. Im Gegensatz hierzu sind bei einer impliziten Darstellung die Beziehungen zwischen den Eingangsdaten nicht vollständig aufgelöst; sie können tatsächlich überhaupt nicht aufgelöst sein. Daher enthält eine implizite Darstellung Darstellungen sowohl von Daten als auch von Operationen, die mit diesen ausgeführt werden sollen.
Ein Weg der Modellierung massiver Körper, der als konstruktive Massivkörpergeometrie (CSG) bekannt ist, schafft eine implizite Darstellung eines komplexen Massivkörpers, als eine Sammlung elementarer Massivkörper und Operationen zu deren Kombination. Diese Darstellung eines komplexen Massivkörpers bei CSG ist implizit, da die Operationen nicht aufgelöst sind, durch welche die elementaren Massivkörper kombiniert werden, um einen komplexen Massivkörper zu bilden. Wenn beispielsweise ein Loch, welches durch einen Kubus "gebohrt" werden soll, gewünscht ist, so enthält das sich ergebende CSG-Modell (sh. Fig. 1a) Information sowohl über das gesamte Volumen des Kubus 101 als auch über den Zylinder 103, der zum "Bohren" des Loches verwendet wird (es wird also das Volumen subtrahiert, in welchem der Zylinder 103 mit dem Kubus 101 zusammenfällt), und erhält ebenso die durchgeführte Operation (in diesem Falle: Volumen-Subtraktion). Information von außen, beispielsweise eine Festlegung der Abschnitte des Zylinders 103, die sich über die Ränder des Kubus 101 hinaus erstrecken können, werden ebenfalls in einer Datenbank festgehalten, die das Modell enthält.
Komplexe Objekte werden dadurch gebildet, daß auf einem oder mehreren elementaren Massivkörpern Bool′sche Operationen durchgeführt werden. Diese Operationen umfassen Volumen-Vereinigung, Volumen-Schnitt und Volumen-Subtraktion, sind jedoch hierauf nicht beschränkt. Durch Anwendung Bool′scher Operationen auf eine Aggregation elementarer Massivkörper kann eine Vielfalt komplexer, massiver Objekte dargestellt werden. Beispielsweise führt das Subtrahieren eines Zylinders von einem Kubus zu einem Kubus, in welchen ein Loch gebohrt ist, wie dem von Fig. 1a. Die Bool′schen Operationen, die auf elementare Massivkörper angewendet werden können, repräsentieren den Bereich der Operationen, die während des Entwurfs eines Teils verwendet werden.
Bei CSG wird ein komplexer Massivkörper üblicherweise als eine Baumdatenstruktur repräsentiert. Die Daten, die in der Baumdatenstruktur gespeichert sind, umfassen einen Satz an Grundelementen und einen Satz Bool′scher Operationen, die auf die Grundelemente angewendet werden. Ein einfaches Beispiel für eine derartige Baumdatenstruktur ist in Fig. 1b für den in Fig. 1a gezeigten Massivkörper dargestellt. Die CSG-Baumdatenstruktur für dieses Massivkörpermodell umfaßt Datenspeicherknoten zweier Arten, innere Knoten 105 und Blattknoten 107a und 107b. Die Blattknoten 107a und 107b repräsentieren Grundelementen-Massivkörper 101 und 103. Der innere Knoten 105 legt eine durchzuführende Bool′sche Operation 109 fest, in diesem Falle eine Bool′sche Subtraktion, und umfaßt Daten, die auf Blattknoten 107a und 107b zeigen (111a und 111b), auf welche die Bool′sche Operation 109 angewendet wird.
Da ein CSG-Modell keine explizite Darstellung des modellierten komplexen Massivkörpers umfaßt, wird die Datenstruktur für eine Anzeige ausgewertet, wenn ein visuelles Bild gefordert wird. Dies ist schwierig und zeitaufwendig. Es wird dadurch noch schlimmer, daß die Auswertung jedesmal dann durchgeführt wird, wenn eine Änderung der Datenstruktur erfolgt.
Eine zweite Vorgehensweise bei der Modellierung fester oder massiver Körper, die Randdarstellung (BREP), erzeugt eine explizite Darstellung eines komplexen Körpers in Form von Information bezüglich der geometrischen Form und topologischer Information. Die geometrische Forminformation umfaßt Information wie beispielsweise Volumen, Oberflächen, Kurven und Punkte. Die topologische Information entspricht der jeweiligen geometrischen Information. Daher ist in der topologischen Information solche Information enthalten wie beispielsweise eine Festlegung von Bereichen, Vorderseiten, Kanten und Scheitelpunkten. Zwei zusätzliche topologische Größen, Schleifen und Schalen, werden zur Darstellung von Löchern in Vorderseiten bzw. von Leerstellen in Bereichen verwendet.
Bei einer Randdarstellung ist die zum Halten eines komplexen massiven Modells verwendete Datenstruktur ein verbundener Graph der topologischen Größen des komplexen Massivkörpermodells. Daher können geeignete Nachbarschaftsbeziehungen von dem Graphen der Topologiedatenstruktur abgeleitet werden, oder es können diese Beziehungen innerhalb der Datenstruktur explizit gespeichert werden.
Ein Nachteil der Randdarstellungsvorgehensweise nach dem Stand der Technik besteht darin, daß die Abänderung eines Modells schwierig ist, welches als explizite Darstellung eines gewünschten Massivkörpers gespeichert ist. Selbst wenn nur geringfügige Änderungen bei einem Modell vorgenommen werden, so ist hierfür häufig eine Randauswertung einer vollständigen CSG-Darstellung des Modells erforderlich. Die Randbewertung ist ein Vorgang der Erzeugung oder Aufrechterhaltung einer Randdarstellung entsprechend einer CSG-Darstellung eines Objekts. Eine weitere Schwierigkeit beim Stand der Technik kommt daher, daß man sich im Stand der Technik auf Mannigfaltigkeitsstrukturen verläßt, wie nachstehend erläutert ist.
Im Zusammenhang mit der Modellierung von Festkörpern wird der Begriff "Mannigfaltigkeit" üblicherweise als Abkürzung für den Begriff "Zweifach-Mannigfaltigkeit" verwendet, was "lokal zweidimensional" bedeutet. Dies bedeutet, daß auf dem Rand eines Mannigfaltigkeits-Festkörpers, beispielsweise wie in Fig. 2a gezeigt, der kleine Bereich um jeden Punkt 201 herum "lokal zweidimensional" oder homomorph zu einer Scheibe ist (also daß eine 1:1-Abbildung der Punkte eines kleinen Bereichs eines Mannigfaltigkeits-Festkörpers zu den Punkten der Scheibe existiert). Daher weist der kleine Bereich um jeden Punkt herum, beispielsweise der Bereich im Abschnitt IIb, eine direkte Korrespondenz zur Scheibe auf und kann flach gedrückt werden, wie in Fig. 2b gezeigt ist, ohne daß irgendwelche vorstehenden Merkmale verbleiben, und ohne daß es erforderlich ist, ein Merkmal dem anderen zu überlagern. Dies steht im Gegensatz zu demselben Versuch, wenn dieser auf Abschnitt IIIb von Fig. 3a angewendet wird, welche eine Nicht-Mannigfaltigkeits-Topologie zeigt (also keine Zweifach-Mannigfaltigkeit). Der von dem Punkt 303 aus vorstehende Draht 301 kann nicht flach gedrückt werden, ohne daß er einen Teil der ihn umgebenden Oberfläche 305 überlagert, wie in Fig. 3b gezeigt ist. Daher weist der Draht 301 keine direkte Korrespondenz zu irgendeinem Teil der Scheibe auf, der nicht bereits von der umgebenden Oberfläche 305 eingenommen wird. Im Stand der Technik speichern Modellierer von Festkörpern Nachbarschaftsdaten von Randdarstellungen als topologische Mannigfaltigkeitsdarstellungen, oder lassen nur eine Speicherung einer begrenzten Untermenge von Nicht-Mannigfaltigkeits-Zuständen als spezielle Fälle zu.
Allerdings ist das Modellieren von Festkörpern in einer Mannigfaltigkeits-Umgebung inadäquat, da einfache Operationen bei Mannigfaltigkeits-Objekten Nicht-Mannigfaltigkeits-Objekte erzeugen können. Mathematisch gesprochen ist die Menge Bool′scher Operationen über dem Satz der Mannigfaltigkeits-Festkörper nicht abgeschlossen. Führt man beispielsweise die Vereinigung zweier Kästen durch, die im Raum so ausgerichtet sind, daß sie eine gemeinsame Kante teilen, so wird ein Objekt produziert, das an keinem Punkt entlang der gemeinsamen Kante nicht-mannigfaltig ist. Daher besteht ein weiteres Problem im Stand der Technik darin, daß Modellierer von Festkörpern auf Mannigfaltigkeits-Basis entweder einige Nachbarschaftsdaten aufgeben, und zwar immer dann, wenn ein Nicht-Mannigfaltigkeits-Zustand auftritt, oder den Nicht-Mannigfaltigkeits-Zustand als Spezialfall behandeln, oder einfach die gewünschte Operation nicht ausführen. Da viele wichtige Konstruktionen nicht-mannigfaltig sind, stellt die Unfähigkeit zur Behandlung von Nicht-Mannigfaltigkeits-Zuständen einen wesentlichen Fehler bei Mannigfaltigkeits-Modellierungen nach dem Stand der Technik dar.
Daher besteht eine der vorliegenden Erfindung zugrundeliegende Aufgabe in der Bereitstellung eines Verfahrens und einer Einrichtung zur Durchführung einer Randbewertung von Randdarstellungsmodellen, die Nicht-Mannigfaltigkeits-Topologien aufweisen.
Eine weitere, der vorliegenden Erfindung zugrundeliegende Aufgabe besteht in der Bereitstellung eines Verfahrens und einer Einrichtung, welche eine Randbewertung von Nicht-Mannigfaltigkeits-Randdarstellungsmodellen durchführen, ohne sich auf spezielle Fälle zurückzuziehen, um die in Nicht-Mannigfaltigkeits-Topologien vorhandene Information darzustellen.
Eine weitere, der vorliegenden Erfindung zugrundeliegende Aufgabe besteht in der Bereitstellung eines allgemeinen Verfahrens und einer allgemeinen Vorrichtung, welche eine lokale Modifizierung einer expliziten Randdarstellung durchführen, welche Modifizierungen einer entsprechenden impliziten CSG-Darstellung reflektiert, ohne daß eine vollständige Neuableitung der Randdarstellung von der CSG-Darstellung erforderlich ist.
Zur Lösung der voranstehenden und anderer Aufgaben wird ein Informationsverarbeitungssystem zur Darstellung eines Objekts zur Verfügung gestellt, welches aus einem oder mehreren Grundelementenobjekten in einem dreidimensionalen Koordinatensystem besteht. Das Objekt wird als eine Randdarstellung dargestellt. Randdarstellungen umfassen Ränder, welche den Raum, in welchem das Koordinatensystem definiert ist, in Bereiche auf jeder Seite einer Oberfläche unterteilen, Ränder, welche Kanten von Oberflächen festlegen, und Ränder, welche die Enden von Kanten festlegen. Jeder Bereich eines Festkörpers weist eine ihm zugeordnete Vorgeschichte auf, wobei die Vorgeschichten angeben, innerhalb welchen Grundelements jeder Bereich enthalten ist. Auch den unabhängigen topologischen Größen abgesehen von Bereichen, die nicht den Rand einer Größe bilden, sind Vorgeschichten zugeordnet.
Das Informationsbearbeitungssystem umfaßt eine Einrichtung zum Konstruieren einer vereinigten Randdarstellung aus den Randdarstellungen der Grundelemente, die das Objekt bilden. Die vereinigte Randdarstellung umfaßt vereinigte Ränder, welche vereinigte Bereiche und unabhängige Größen definieren, denen jeweils Vorgeschichten zugeordnet sind. Weiterhin ist eine Einrichtung zur Auswahl vereinigter Bereiche und unabhängiger Größen auf der Grundlage der Vorgeschichtsinformation für die vereinigten Bereiche und unabhängigen Größen vorgesehen.
Die Auswahl kann auf der Grundlage festgelegter Bool′scher Operationen durchgeführt werden, die von dem System empfangen werden. Vereinigte Bereiche und unabhängige Größen, die auf diese Weise ausgewählt wurden, können dann angezeigt oder weiter bearbeitet werden.
Ein Verfahren zur Durchführung einer Randbewertung, welches die voranstehenden und weitere Zielsetzungen erfüllt, kann einfach als vier Schritte ausgedrückt werden, die bei Randdarstellungen von Unterobjekten durchgeführt werden, die zur Bearbeitung bereitgestellt sind.
  • 1. Schneiden: Auffinden von Schnitten zwischen Größen jedes Unterobjekts;
  • 2. Konstruieren: Konstruieren einer vereinigten Randdarstellung einschließlich sämtlicher Größen der bereitgestellten Unterobjekte, und ebenso der Schnitte, die durch den Schritt des Schneidens "erzeugt" wurden;
  • 3. Klassifizieren: Ermittlung der Umschließung, oder ob Raumbereiche "innerhalb" oder "außerhalb" geometrischer Größen der bereitgestellten Unterobjekte und geometrischer Größen liegen, die sich aus dem Schritt des Schneidens ergeben, in Bezug auf jedes Grundelement; und
  • 4. Auswahl: Verwendung der Ergebnisse des Klassifizierungsschrittes zur Lösung einer gewünschten Bool′schen Operation, und Markierung der Abschnitte, welche die Lösung bilden.
Diese in dem Auswahlschritt markierten Abschnitte können dann angezeigt oder bei der weiteren Verarbeitung verwendet werden. Da keine der Ursprungsdaten weggefallen sind, lassen sich einfach Modifikationen existierender Abschnitte der Randdarstellung durchführen, wie im Zusammenhang mit einer bevorzugten Ausführungsform deutlich wird.
Die Erfindung wird nachstehend anhand zeichnerisch dargestellter Ausführungsbeispiele näher erläutert, aus welchen sich weitere Vorteile und Merkmale ergeben. Hierbei bezeichnen gleiche Bezugszeichen gleiche Elemente. Es zeigt:
Fig. 1a eine Perspektivansicht einer Darstellung der, Subtraktion eines Zylinder-Grundelements von einem Kubus-Grundelement nach dem Stand der Technik;
Fig. 1b eine graphische Darstellung einer Baumstruktur, wie sie bei einer CSG-Darstellung im Stand der Technik bei dem Massivmodell von Fig. 1a verwendet wird;
Fig. 2a eine Perspektivansicht zur Erläuterung einer mannigfaltigen geometrischen Konstruktion;
Fig. 2b eine vergrößerte Ansicht des Abschnitts IIb von Fig. 2a, nachdem der Abschnitt flach gedrückt wurde, entsprechend einem Test bezüglich Mannigfaltigkeits-Geometrie angewendet auf die Geometrie von Fig. 2a;
Fig. 3a eine Perspektivansicht mit einer Darstellung einer Nicht-Mannigfaltigkeits-geometrischen Konstruktion;
Fig. 3b eine vergrößerte Darstellung des Abschnitts IIIb von Fig. 3a, nachdem der Abschnitt flach gedrückt wurde, entsprechend einem Test bezüglich Mannigfaltigkeits-Geometrie, angewendet auf die Geometrie von Fig. 3a;
Fig. 4 ein Blockdiagramm eines Informationsbearbeitungssystems, welches bei der vorliegenden Erfindung verwendbar ist;
Fig. 5 ein detaillierteres Blockdiagramm des Informationsbearbeitungssystems von Fig. 4;
Fig. 6a und 6b schematische Ansichten der Datenstruktur einer Ausführungsform der vorliegenden Erfindung;
Fig. 7 ein Blockdiagramm einer Randbewertungsvorrichtung gemäß der vorliegenden Erfindung;
Fig. 8 ein detaillierteres Blockdiagramm eines in Fig. 7 gezeigten Auswahlelements;
Fig. 9 ein vereinfachtes Flußdiagramm eines Verfahrens zur Randbewertung gemäß der vorliegenden Erfindung;
Fig. 10 eine Perspektivansicht mit einer Darstellung des Schnittes eines Kubus mit einem Zylinder in der Zylinderranddarstellung;
Fig. 11 eine Perspektivansicht mit einer Darstellung des Schnittes eines Kubus mit einem Zylinder in der Kubus -Randdarstellung;
Fig. 12 eine Perspektivansicht mit einer Darstellung einer vereinigten Randdarstellung, welche die Bereiche zeigt, die durch die geschnittenen Kubus- und Zylinder-Grundelemente festgelegt werden;
Fig. 13A bis 13C Perspektivansichten mit einer Dar­ stellung des Editierens einer ver­ einigten Randdarstellung einschließlich geschnittener Kubus-, Zylinder- und Kegel-Grundelemente; und
Fig. 14A bis 14H Perspektivansichten mit einer Darstellung eines Verfahrens der Trennung eines Grundelements von einer vereinigten Menge.
Im Anhang zur Beschreibung ist ein vereinfachtes Flußdiagramm eines Verfahrens zur Trennung vorher vereinigter Grundelemente gemäß der vorliegenden Erfindung angegeben.
Allgemein gesagt verwendet die bevorzugte Ausführungsform der vorliegenden Erfindung ein Softwareprogramm, welches in einem Allzweck-Informationsbearbeitungssystem ausgeführt wird, wie in Fig. 4 und 5 dargestellt. Das Informationsbearbeitungssystem gemäß der bevorzugten Ausführungsform weist ein Endgerät 401 auf, welches an eine zentrale Bearbeitungseinheit (CPU) 407 angeschlossen ist, obwohl andere geeignete Einrichtungen zum Empfang von Eingangsgrößen von einer Bedienungsperson und zur Anzeige von Ausgangsgrößen an eine Bedienungsperson verwendet werden können. Das Endgerät 401 bei der bevorzugten Ausführungsform ist mit einer Kathodenstrahlröhrenanzeige 402 (CRT) versehen, um der Bedienungsperson sowohl Text- als auch Bilddaten zur Verfügung zu stellen. Im Stand der Technik sind zahlreiche geeignete CRT-Anzeige-Endgeräte und andere geeignete Videoanzeige-Endgeräte bekannt. Das Informationsbearbeitungssystem kann wahlweise mit anderen Peripheriegeräten versehen sein, beispielsweise Hartkopieausgabegeräten 403, Speichergeräten 405 und Kommunikationsgeräten (nicht gezeigt), wie es für bestimmte Zwecke erforderlich sein kann. Beispielsweise können in einer CAD/CAM-Umgebung Kommunikationsgeräte dazu vorgesehen sein, fertige Modellinformation an rechnergesteuerte Herstellungseinrichtungen zu übertragen.
Wie in Fig. 5 gezeigt weist das Informationsbearbeitungssystem einen Speicher 501 auf, um Softwareprogramminformation und Daten zu speichern. Zwar ist der Speicher zum Speichern von Daten bei dieser bevorzugten Ausführungsform ein Festkörperspeicher (RAM) 503 mit wahlfreiem Zugriff, jedoch können auch andere Speicher- und Aufbewahrungsverfahren geeignet sein, die im Stand der Technik bekannt sind. In dem RAM 503 gespeicherte Daten werden durch ein Softwareprogramm oder ein andere Größe strukturiert, welche Daten in einem geeigneten Format für die mit den Daten durchzuführenden Operationen speichert. Nachstehend wird eine bevorzugte Datenstruktur zur Verwendung bei der vorliegenden Erfindung im einzelnen beschrieben. Jedoch wird die Erfindung zuerst anhand allgemeinerer Begriffe erläutert.
Ein System, welches die vorliegende Erfindung verwendet, ist gut für den Einsatz bei einem Designer mechanischer Teile geeignet. Ein Design kann interaktiv erzeugt und geändert werden, beispielsweise unter Verwendung des Endgerätes 401. Während der interaktiven Schöpfung eines Designs können Daten, die ein Festkörpermodell des Designs repräsentieren, in dem RAM 503, in einem Speicheruntersystem 405 oder jeweils teilweise in einem der beiden Systeme gespeichert werden, wie es gerade für einen wirkungsvollen Betriebsablauf des Systems nützlich ist.
Bei einer bevorzugten Ausführungsform der vorliegenden Erfindung wird die Art und Weise, auf welche der Designer sich entschlossen hat, Grundelemente zu kombinieren, als ein Bool′scher Logikbaum gespeichert. Parameter, welche die tatsächlichen Eigenschaften jedes Grundelements definieren, werden ursprünglich als individuelle Randdarstellungen gespeichert. Während interaktiver Designaktivitäten wird eine Randbewertung durchgeführt, um eine einzige, vereinigte Randdarstellung zur Verfügung zu stellen, welche korrekt den momentanen Zustand des Bool′schen Logikbaums wiedergibt. Wie nachstehend erläutert ist, stellt die vereinigte Randdarstellung eine korrekte Darstellung eines Bool′schen Logikbaums zur Verfügung, ohne eine erneute Bewertung der gesamten Randdarstellung für jede Änderung der Darstellung in Bool′scher Logik.
Unter Bezug auf die Fig. 6a und 6b wird nunmehr die Datenstruktur gemäß der vorliegenden Erfindung beschrieben. Diese Datenstruktur weist zwei Teile auf, einen Bool′schen Logikbaum 1201, gezeigt in Fig. 6a, und eine BREP 1203, gezeigt in Fig. 6b. Eine BREP 1203 kann ein einfaches Grundelement darstellen, oder eine vereinigte Randdarstellung einer komplexen Kombination von Grundelementen sein. Der Bool′sche Logikbaum 1201 legt fest, welche Operationen mit den Randdarstellungen durchgeführt werden sollen, welche eine vereinigte Randdarstellung bilden. Der Bool′sche Logikbaum 1201 kann als eine vernetzte Liste von Zeigern und Bool′schen Operatoren gespeichert werden, während die BREP 1203 als eine vernetzte Liste von Dateien gespeichert werden kann.
Der Bool′sche Logikbaumabschnitt 1201 dieser Datenstruktur umfaßt innere Knoten 1205 (a-c), und Blattknoten 1207 (a-d). Die Blattknoten 1207 enthalten jeweils eine Auszeichnung, die einen Grundelementen-Festkörper identifiziert, der ein Teil des vorliegenden Modells ist. Jeder innere Knoten 1205 legt eine Bool′sche Operation fest, die mit den Grundelementen durchgeführt werden soll, die in einem oder mehreren Blattknoten 1205 festgelegt sind, und umfaßt Datenzeiger 1209 auf Operanden, mit welchen die Bool′sche Operation durchgeführt wird. Wenn ein Operand eines ersten inneren Knotens 1205a ein zweiter innerer Knoten 1205b ist, dann soll die Bool′sche Operation des ersten inneren Knotens 1205a mit dem Ergebnis der Bewertung des zweiten inneren Knotens 1205b durchgeführt werden. Da jedoch der Bool′sche Logikbaumabschnitt der Struktur nur Auszeichnungen enthält, welche die Grundelemente angeben, mit denen Operationen durchgeführt werden sollen, wird eine Randbewertung der angegebenen Grundelemente durchgeführt, um ein gewünschtes Modell zu erzeugen.
Der BREP-Abschnitt 1203 der Datenstruktur umfaßt Randbeschreibungen 1211 und eine Liste 1213 von Bereichen und anderen unabhängigen Größen, welche durch die Randbeschreibungen 1211 festgelegt werden. Zur Vereinfachung werden hier nur Bereiche erwähnt, jedoch werden andere unabhängige topologische Größen entsprechend behandelt. Für jeden Bereich R0, R1, R2, . . ., umfaßt die Liste der Bereiche weiterhin eine Umschließungsvorgeschichte 1215 (a-b), welche eine Liste von Grundelementen darstellt, die diesen Bereich umschließen, sowie einen Ort zum Speichern einer Markierung 1217 (a-b), welcher angibt, daß dieser Bereich als ein Ergebnis der Operationen ausgewählt wurde, die in dem Bool′schen Logikbaumabschnitt 1201 angegeben sind. Eine vereinigte Randdarstellung ergibt sich aus der Randbewertung eines Bool′schen Logikbaums, der mehrere Grundelemente und zumindest eine Bool′sche Operation enthält.
Unter Bezug auf Fig. 7 wird nunmehr ein vereinfachtes Blockdiagramm der Randbewertung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung beschrieben. Die Randbewertung arbeitet auf zwei oder mehreren Randdarstellungen, beispielsweise den Darstellungen 601a und 601b, um eine komplexere Randdarstellung zu erzeugen, beispielsweise 603. Die Randdarstellungen, die bei 601a und 601b bearbeitet werden, werden "Grundelemente" genannt, unabhängig davon, ob sie einfache geometrische Größen repräsentieren, beispielsweise den Kubus A und den Zylinder B in Fig. 7, oder komplexere Randdarstellungen, die bereits aus einfachen geometrischen Größen aufgebaut wurden. Die durchzuführenden Operationen sind die, die in einem Bool′schen Logikbaum gespeichert sind, wie voranstehend unter Bezug auf Fig. 6 erläutert. Bei der vorliegenden Erläuterung werden Bereiche oder Volumina im Raum, die durch die Ränder begrenzt sind, die in einer Randdarstellung definiert sind, als innerhalb oder außerhalb des Grundelements klassifiziert.
Randdarstellungen werden durch eine Einrichtung 605 zum Schneiden kombiniert, welche getrennte Randdarstellungsdatenstrukturen im RAM 503 kombiniert, zu einer vereinigten Randdarstellung. Daher wird eine vereinigte Randdarstellung 607 erzeugt, welche in einer Datenstruktur sämtliche Information enthält, die in den zwei getrennten Randdarstellungen vorher enthalten war. Die vereinigte Darstellung kann durch Schaffung von Zeigern in dem RAM 503 erzeugt werden, welche auf die gewünschten Datenstrukturen zeigen, oder durch Bewegung von Daten innerhalb des RAM 503 zur Ausbildung einer einzigen, vereinigten Datenstruktur. Zusätzlich enthält die vereinigte Randdarstellung 607 Information, welche alle neuen Ränder identifiziert, die durch Schnitte zwischen Grundelementen erzeugt wurden.
Die neuen Ränder in der vereinigten Randdarstellung 607 definieren neue Bereiche, die entsprechend der Umschließungsvorgeschichteninformation klassifiziert werden, in Bezug auf die Grundelemente, in deren Inneren sie liegen. Auch können neue unabhängige Größen, die ihre eigene Umschließungsvorgeschichteninformation aufweisen, in der vereinigten Randdarstellung definiert werden.
Da es in dem Beispiel keine unabhängigen Größen in der vereinigten Randdarstellung 607 gibt, werden in der vereinigten Randdarstellung definierte Bereiche beispielsweise für eine weitere Bearbeitung oder eine Anzeige ausgewählt (609). Wie voranstehend im Zusammenhang mit Fig. 6 erwähnt, werden ausgewählte Bereiche in einem Teil der Datenstruktur markiert, um Markierungsinformation 1217 (a-b) durch ein Softwareprogramm zu halten, welches in dem Datenbearbeitungssystem arbeitet. Bei dem in Fig. 7 dargestellten Beispiel wurde der Abschnitt des Kubus A ausgewählt, der nicht innerhalb des Zylinders B enthalten ist; dies bedeutet, daß eine Bool′sche Volumensubtraktion des Zylinders von dem Kubus durchgeführt wurde.
Die Auswahlvorrichtung wird nachstehend mit weiteren Einzelheiten unter Bezug auf Fig. 8 beschrieben. Eine gewünschte Bool′sche Operation 701 mit den Grundelementen, die zur Ausbildung der vereinigten Randdarstellung kombiniert wurden, wird von einem Eingabegerät 703 empfangen, beispielsweise einem Computerendgerät 401. Dieser Eingang wird in geeigneten Orten des Bool′schen Logikbaums gespeichert, beispielsweise in den Knoten 1250 (a-c), wie voranstehend unter Bezug auf Fig. 6 beschrieben. Eine Auswahleinrichtung 705 ordnet eine Markierung in der vereinigten Randdarstellung 607 an, wie ebenfalls voranstehend unter Bezug auf Fig. 6 und 7 beschrieben wurde, und zeigt so für jeden Bereich an, ob dieser Bereich ausgewählt wurde oder nicht. Die Bereiche werden auf der Grundlage des Vergleichs ihrer Umschließungsvorgeschichte mit der gewünschten Bool′schen Operation ausgewählt. Daher werden in dem dargestellten Beispiel, in welchem die gewünschte Bool′sche Operation A-B ist, sämtliche Bereiche in dem Grundelement A markiert, jedoch nicht im Grundelement B. Die sich ergebende Randdarstellung 603 ist in Fig. 8 gezeigt, wie sie beispielsweise erscheinen würde, wenn sie zur Anzeige ausgegeben wird.
Zusammengefaßt weist die bislang beschriebene Ausführungsform der vorliegenden Erfindung eine Datenstruktur auf, welche vollständige Information bezüglich der Grundelemente und Operationen speichert, welche ein Modell bilden, eine Vorrichtung zum Kombinieren der Information, welche zwei oder mehr Grundelemente in der Datenstruktur umfaßt, und eine Vorrichtung zum Auswählen von Abschnitten der gespeicherten Information auf der Grundlage der Operationen. Die ausgewählten Abschnitte können dann angezeigt oder auf andere Weise bearbeitet werden. Die Datenstruktur, die Vorrichtung zum Kombinieren und die Vorrichtung zum Auswählen können als Kombination einer Datenverarbeitungshardware und -software für allgemeine Zwecke verwirklicht werden, zum Beispiel.
Die Schritte eines Verfahrens gemäß einer Ausführungsform der vorliegenden Erfindung, die auf der voranstehend beschriebenen Vorrichtung durchgeführt werden, sind in dem Flußdiagramm von Fig. 9 gezeigt. Fachleute auf diesem Gebiet werden erkennen, daß die Schritte dieses Verfahrens durch Software ausgeführt werden können, die in einem allgemein verwendbaren Datenverarbeitungssystem abläuft, durch speziell ausgebildete Hardware, oder durch eine Kombination von Hardware und Software, wie dies für verschiedene bestimmte Zwecke vorgezogen werden kann. Jeder Schritt des beschriebenen Verfahrens wird nunmehr mit weiteren Einzelheiten beschrieben, unter Verwendung des selben Beispiels, welches unter Bezug auf die Fig. 6 bis 8 beschrieben wurde. Das Verfahren läßt sich besser verstehen, wenn man sich zusätzlich auf die Datenstrukturen von Fig. 6 bezieht. Zur Vereinfachung erfolgt die nachstehende Beschreibung unter Bezugnahme auf Bereiche, in welchen eine Größe manipuliert wird, die ihre eigene Umschließungsvorgeschichte aufweist. Wenn andere Größen speziell behandelt werden sollen, wird dies im einzelnen angegeben.
Die bereitgestellten Grundelemente sind Randdarstellungen eines Kubus 601a und eines Zylinders 601b. Diese sind im Raum so angeordnet, daß sie sich schneiden, wie beispielsweise in Fig. 1a gezeigt ist. Der Bereich innerhalb des Kubus weist eine Umschließungsvorgeschichte A auf, wogegen der Bereich außerhalb des Kubus eine Umschließungsgeschichte von Null aufweist. Entsprechend weist der Bereich innerhalb des Zylinders eine Umschließungsvorgeschichte B auf, wogegen der Bereich außerhalb des Zylinders eine Umschließungsvorgeschichte Null hat. Diese Umschließungsvorgeschichten 1215 werden an Orten innerhalb der Randdarstellung 1203 der Grundelemente gehalten, wie in Fig. 6 gezeigt ist.
Die bereitgestellten Grundelemente werden im Schritt 801 geschnitten, so daß sämtliche Schnitte des einen Grundelements in dem anderen identifiziert und erzeugt werden. Dies modifiziert die Randbeschreibung 1211 in den Grundelementen. Im allgemeinen erzeugen Oberflächen-Oberflächen-Schnitte Kurven und Punkte. Bei dem vorliegenden Beispiel erzeugt der Schnitt zwischen dem Zylinder 103 und dem Kubus 101 kreisförmige Kurven 1001 und 1003 (Fig. 10), wenn die obere und untere Oberfläche des Kubus 101 durch eine Wand des Zylinders 103 geschnitten werden, wie in Fig. 10 und 11 gezeigt ist. Der Schnitt, nämlich die Kurven 1001 und 1003, der in einem der Grundelemente erzeugt wird, beispielsweise in dem Zylinder 103, wie in Fig. 10 gezeigt, wird zur Grundlage des nächsten Schrittes. Weiterhin wird darauf hingewiesen, daß die Kurven 1001 und 1003 die obere und untere Vorderseite des Kubus 101 jeweils in zwei Vorderseiten unterteilen. Dies bedeutet, daß die obere Vorderseite in eine Außenkurve 1001 der oberen Vorderseite und eine Innenkurve der oberen Vorderseite unterteilt wird. Die Kurven 1001 und 1003 werden den Randbeschreibungen 1211 der Randdarstellung 1203 jedes Grundelements hinzugefügt.
Zuerst hilft die Tabelle dabei, den Umfang der Bearbeitung zu verringern, der zur Bewertung eines Modells erforderlich ist. Die Schnitte unterteilen das Objekt in Netzwerke topologischer Größen, von denen jede gemeinsame Einschließungsvorgeschichten aufweist. Durch einen vollständigen Durchlauf durch jedes der Netzwerke, bevor man zu dem nächsten Netzwerk übergeht, wie in dem Schritt der Konstruktion nachstehend beschrieben ist, wird die Bearbeitung verringert, da die Umschließung sämtlicher Elemente eines gegebenen Netzwerks einmal ermittelt werden kann, statt daß eine erneute Bewertung jedesmal dann erforderlich ist, wenn man während des Durchgangs in das gegebene Netzwerk eintritt oder dieses verläßt. Unter Bezugnahme auf die Beziehungstabelle kann ein Netzwerk mit Elementen in beiden Grundelementen vollständig durchlaufen werden, wie voranstehend beschrieben, anstatt sämtliche Netzwerke in einem Grundelement durchlaufen zu müssen, bevor die in dem anderen durchlaufen werden.
Zweitens werden die Beziehungen in der Beziehungstabelle später verwendet, während der Vorderseitenerzeugung und der Klassifizierung. Unter Bezugnahme auf die Beziehungstabelle legt der Konstruktionsschritt fest, wo neue Vorderseiten erforderlich sind, beispielsweise dann, wenn Kurven 1001 und 1003 die obere und untere Vorderseite des Kubus 101 jeweils in zwei Vorderseiten unterteilen.
Ein Beispiel für die in der Beziehungstabelle gespeicherten Beziehungen wird nunmehr unter Bezugnahme auf Fig. 10 und 11 beschrieben. In Fig. 10 wird eine Vorderseite des Zylinders 103 als Vorderseite f1 identifiziert. Eine Kante des Zylinders e1 und eine Kante e2, die durch den Schnitt des Zylinders 103 und des Kubus 101 erzeugt wurden, und Kurve 1001 entsprechen, sind ebenfalls gezeigt. In Fig. 11 gibt es eine Vorderseite f1′ sowie Kanten e1′ und e′′. Die Beziehungstabelle vernetzt jede Kante und Vorderseite, die in einer Randdarstellung konstruiert wurden, mit der korrespondierenden Kante und Vorderseite, die in der anderen Randdarstellung konstruiert wurden. Daher vernetzt die Beziehungstabelle die Vorderseite f1 mit der Vorderseite f1′, die Kante e1 mit der Kante e1′, und die Kante e2 mit der Kante e2′. Entsprechend werden die Vorderseite f2 und die Kante e3 des Kubus 101 in Fig. 11 mit der Vorderseite f2′ und der Kante e3′ in Fig. 10 vernetzt. Diese Vernetzungen oder Beziehungen werden für sämtliche topologischen Größen erzeugt und gespeichert, welche die Grundelemente bilden.
Nunmehr wird eine vereinigte Randdarstellung im Schritt 803 dadurch konstruiert, daß ein Grundelement in dem anderen konstruiert wird. In diesem Beispiel wird der Kubus 101 in den Zylinder 103 konstruiert. Zuerst werden Drahtkanten des Kubus-Grundelements in der Datenbank des Zylinder-Grundelements konstruiert. Dann werden Vorderseiten des Kubus-Grundelements in der Zylinder-Grundelement-Randdarstellung konstruiert. Diese Konstruktionen bilden weitere Modifikationen der Randbeschreibungen 1211 der Zylinder-Grundelement-Randdarstellung. Wie aus Fig. 12 hervorgeht, hat das Zufügen von Schnitten und Rändern von dem Kubus-Grundelement zu der Zylinder-Grundelement-Randdarstellung den Raum in zusätzliche Bereiche unterteilt. Zwar umfaßte die ursprüngliche Zylinder-Grundelement-Randdarstellung nur einen Bereich innerhalb des Zylinders und einen Bereich außerhalb des Zylinders, jedoch umfaßt die vereinigte Randdarstellung fünf Bereiche, die als R0, R1, R2, R3 und R4 bezeichnet sind. Die Zylinder-Grundelement-Randdarstellung wurde in eine vereinigte Randdarstellung transformiert, welche vereinigte Daten von dem Zylinder-Grundelement, dem Kubus-Grundelement und dem Schnitt der Grundelemente enthält.
Bereiche der vereinigten Randdarstellung werden nunmehr im Schritt 805 entsprechend den Grundelementen klassifiziert, welche sie enthalten. Diese Klassifizierung (Schritt 805) eines Bereiches aktualisiert die Umschließungsvorgeschichte 1215 des Bereiches innerhalb der Datenstruktur.
Vor der Klassifizierung (Schritt 805) weisen die Bereiche Umschließungsvorgeschichten 1215 auf, die sich nur auf den Zylinder 103 beziehen, da die Randdarstellung, welche dieses Grundelement definiert, die Grundlage für die vereinigte Randdarstellung bildete. Daher gibt es vor der Klassifizierung (Schritt 805) folgende Umschließungsvorgeschichten 1215 der Bereiche, wie aus der nachstehenden Tabelle hervorgeht.
Tabelle 1
Alle Vorderseiten des Kubus 101 wurden nunmehr durchlaufen, einschließlich der zusätzlichen Vorderseiten, die durch den Schritt des Schneidens 801 und den Schritt der Konstruktion 803 erzeugt wurden. Dies bedeutet, daß eine Liste sämtlicher Vorderseiten des Kubus 101 und der zusätzlichen Vorderseiten gebildet wird, die durch den Schnittschritt 801 erzeugt wurden, so daß benachbarte Vorderseiten in der Liste in der Topologie des Modells benachbart sind. Die Konstruktion dieser Liste wird, wie voranstehend erwähnt, durch die Beziehungstabelle erleichtert, welche dabei geholfen hat, die Nachbarschaft neuer Vorderseiten aufrecht zu erhalten, die durch Schnitte erzeugt wurden.
Umschließungsvorgeschichten 1215 von dem Kubus-Grundelement, wie sie für die Bereiche auf beiden Seiten jeder Vorderseite von der Liste erhalten wurden, werden wiederum in die vereinigte Randdarstellung übertragen. Wenn irgendwelche inneren Bereiche, nicht begrenzt durch irgendeine Vorderseite des durchlaufenden Grundelements, bei der vereinigten Randdarstellung erzeugt wurden, so würde sich die Umschließungsvorgeschichteninformation in diese Bereiche ausbreiten, nachdem der Durchlauf fertig ist. Daher ergeben sich bei dem vorliegenden Beispiel die Umschließungsvorgeschichten 1215 in den Bereichen der vereinigten Randdarstellung wie bei der nachstehenden aktualisierten Tabelle nach der Klassifizierung.
Tabelle 2
Sobald die Bereiche im Schritt 805 anhand ihrer Umschließungsvorgeschichten 1215 klassifiziert wurden, kann eine gewünschte Bool′sche Operation angewendet werden.
Die Auswahl von Bereichen im Schritt 807 für eine Anzeige oder als Gegenstand einer weiteren Bearbeitung im Schritt 809 gibt als ein Ergebnis eine markierte Datenbasis, welche eine Randdarstellung der gewünschten Konstruktion enthält. Im vorliegenden Beispiel ist die gewünschte Bool′sche Operation 701 A-B. Dies entspricht der Anforderung, sämtliche Raumbereiche zu markieren, die von dem Kubus-Grundelement 101 eingenommen werden, abgesehen von den Bereichen, die ebenfalls von dem Zylinder-Grundelement 103 eingenommen werden. Vorderseiten, Kanten und Scheitelpunkte können ebenfalls durch diesen Vorgang markiert werden, wie nachstehend erläutert wird.
Die Umschließungsvorgeschichte 1215 jedes Bereiches legt fest, ob der Bereich ausgewählt werden soll. Diese Festlegung erfolgt durch einen Vergleich der Umschließungsvorgeschichte 1215 jedes Bereiches mit der gewünschten Bool′schen Operation 701. Die gewünschte Bool′sche Operation 701, die zwischen irgendwelchen zwei Grundelementen durchgeführt werden soll, wird dadurch aufgefunden, daß eine Umstellungs-Speicherdarstellung des CSG-Baums untersucht wird. Die Umstellungs-Zeichenkettendarstellung wird dadurch erzeugt, daß ein Umstellungs-Durchlauf des CSG-Baums durchgeführt wird, um logische Darstellungen der Grundelemente und der Bool′schen Operationen zu sammeln.
Ausgewählte Bereiche, nämlich solche, die einen Teil des Ergebnisses der gewünschten Bool′schen Operation 701 bilden, werden dann in dem bereitgestellten Ort 1217 in der vereinigten Randdarstellung markiert. Im vorliegenden Beispiel werden Bereiche ausgewählt, die A in ihrer Umschließungsvorgeschichte 1215 enthalten, die jedoch nicht B in ihrer Umschließungsvorgeschichte 1215 enthalten. Sobald die Auswahl für sämtliche Bereiche festgelegt wurde, werden Vorderseiten ausgesucht.
Die Vorderseitenauswahl hängt zuerst von den Bereichen ab, die durch diese Vorderseite begrenzt werden. Wenn eine Vorderseite exakt einen ausgewählten Bereich begrenzt, dann wird auch sie ausgewählt. Anderenfalls wird die Vorderseite ausgewählt, wenn sie ihre eigene Umschließungsvorgeschichte aufweist, welche zu der gewünschten Bool′schen Operation paßt. Nachdem ausgewählte Vorderseiten markiert wurden, werden Kanten ausgewählt und markiert.
Die Kantenauswahl und dann die Scheitelwertauswahl geht ähnlich vor wie die Vorderseitenauswahl, wobei jedoch Kanten Vorderseiten begrenzen und Scheitelwerte Kanten begrenzen. Eine Kante, die keine eigene Umschließungsvorgeschichte aufweist, wird ausgewählt, wenn sie irgendeine ausgewählte Vorderseite begrenzt, und ein Scheitelwert, der keine eigene Vorgeschichte aufweist, wird ausgewählt, wenn er irgendeine ausgewählte Kante begrenzt. Kanten und Scheitelwerte mit eigenen Vorgeschichten werden auf ähnliche Weise wie Bereiche ausgewählt.
Die auf diese Weise markierte, vereinigte Randdarstellung kann dann weiterbearbeitet oder angezeigt werden (Schritt 809). Wenn die vereinigte Randdarstellung angezeigt werden soll (Schritt 809), dann werden alle markierten Größen zur Anzeige auf einem Endgerätegerät 401 oder auf einer Hardkopieausgabevorrichtung 403 sichtbar gemacht, im Schritt 809.
Änderungen einer existierenden vereinigten Randdarstellung lassen sich bei einem System gemäß der vorliegenden Erfindung einfach durchführen. Beispielsweise umfaßt die Änderung einer Bool′schen Operation irgendwo in dem Modell nur eine Ummarkierung von Bereichen in der Datenstruktur der vereinigten Randdarstellung entsprechend dem neuen Kriterium. Ein Verfahren zum Ummarkieren beginnt mit dem Entfernen der Markierungen an den bereitgestellten Orten 1217 in den vereinigten Randdarstellungen bei all solchen Größen, welche die ursprüngliche Bool′sche Operation erfüllen. Dann werden, wie voranstehend beschrieben, Größen markiert, welche die neue Bool′sche Operation erfüllen, die ausgeführt werden soll. Zwar werden die Umschließungsvorgeschichten sämtlicher Größen untersucht, jedoch beeinflussen beide Abschnitte dieses Verfahrens nur die Größen, deren Umschließungsvorgeschichten entweder die ursprüngliche Bool′sche Operation oder aber die neue Bool′sche Operation erfüllen. Eine vollständige Neubewertung des Modells, wie dies beim Stand der Technik erforderlich wäre, ist nicht erforderlich, und daher wird die Zeit gespart, die bei Systemen nach dem Stand der Technik zur erneuten Bewertung von Größen erforderlich ist, die nicht durch die Änderung beeinflußt werden.
Bei dem Kubus/Zylinderbeispiel, welches voranstehend verwendet wurde, kann die ursprüngliche Bool′sche Operation A-B beispielsweise auf A + B geändert werden. In diesem Beispiel werden nur die Bereiche behandelt, obwohl das Verfahren sämtliche Größen betrifft, die eine eigene Umschließungsvorgeschichte aufweisen. Es wird die Umschließungsvorgeschichte jedes Bereiches (oder im allgemeinen jeder Größe) untersucht. Unter Bezugnahme auf die Bereiche von Tabelle 2 erfüllte R4 die ursprüngliche Bool′sche Operation. Daher wurde es markiert. Nunmehr ist es unmarkiert, da es die ursprüngliche Bool′sche Operation erfüllt. Als nächstes würde R3 markiert werden, da es die neue Bool′sche Operation erfüllt. Wie aus diesem Beispiel hervorgeht, werden die nicht betroffenen Bereiche R0, R1 und R2 nicht erneut bewertet, sondern es wurden nur ihre Umschließungsvorgeschichten mit der ursprüngliche Bool′schen Operation und der neuen Bool′schen Operation verglichen. Es ist nicht erforderlich, erneut die Schnitt-, Konstruktions- und Klassifizierungsschritte durchzuführen, da die Ergebnisse dieser Operationen das sind, was momentan in der Datenstruktur enthalten ist.
Durch Einsatz der vorliegenden Erfindung ist es weiterhin einfach, Änderungen vorzunehmen, oder eine existierende, vereinigte Randdarstellung dadurch zu editieren, daß eines oder mehrere der ursprünglichen Grundelemente geändert oder entfernt werden. Es gibt keine Beeinträchtigung der Leistung bei der Vornahme von Abänderungen bei Elementen, die zu irgendeinem Zeitraum bei der Entwicklung eines bestimmten Modells eingeführt werden. Beispielsweise kann, wie in Fig. 13A bis C gezeigt ist, eine Bedienungsperson den Radius des Zylinders 1501 ändern, ohne den Kubus 1503 oder den Kegel 1505 zu stören, einfach durch Abtrennen des Zylinders 1501 wie nachstehend beschrieben und erneute Einführung eines neuen Zylinders 1507, der einen unterschiedlichen Radius aufweist. Wenn die Vereinigungsmenge viele einzelne Grundelement-Festkörper umfaßt, so zeigt die vorliegende Erfindung eine wesentliche Leistungsverbesserung gegenüber dem Stand der Technik, da es nicht erforderlich ist, den gesamten CSG-Raum zu überarbeiten. Statt dessen müssen nur die betroffenen Elemente überarbeitet werden. Die hier erreichten Einsparungen sind ähnlich wie die voranstehend beschriebenen, im Zusammenhang mit der Änderung einer Bool′schen Operation, da Größen nicht vollständig neu bewertet werden; statt dessen werden nur Umschließungsvorgeschichten untersucht, um festzulegen, ob eine Größe durch eine Änderung beeinflußt wird. Wiederum ist es nicht erforderlich, erneut die Schritte des Schneidens, Konstruierens und Klassifizierens der Elemente der nicht betroffenen Grundelemente durchzuführen, da die Datenstruktur bereits die Ergebnisse dieser Schritte enthält.
Nunmehr werden in Verbindung mit dem Anhang und Fig. 14A-14H die Schritte eines Verfahrens gemäß einer Ausführungsform der vorliegenden Erfindung beschrieben, bei denen es um das Abtrennen eines Grundelements von einer vereinigten Menge geht, und welches geeignet zum Editieren einer vereinigten Randdarstellung wie voranstehend beschrieben ist. Wie aus den voranstehenden Ausführungen deutlich wird, beginnen zahlreiche Änderungen einer vereinigten Menge damit, daß ein oder mehrere Grundelemente von der vereinigten Menge abgetrennt werden.
Das beschriebene Verfahren zum Abtrennen beginnt mit dem Schritt der Entfernung der Vorderseiten des abzutrennenden Grundelements, und geht dann mit den Schritten der Entfernung von Kanten und Entfernung von Scheitelpunkten des abzutrennenden Grundelements weiter. Schließlich wird ein Schritt durchgeführt, bei welchem Bereiche entfernt werden, die dem abzutrennenden Grundelement zugeordnet sind.
Für jede Vorderseite, beispielsweise f3 und f4, in der vereinigten Menge wird eine Absolutdifferenz der Vorderseitenumschließungsvorgeschichte untersucht (13 01). Wenn daher die Umschließungsvorgeschichte eines Bereiches auf einer Seite der Vorderseite sich von der Umschließungsvorgeschichte eines Bereiches auf der anderen Seite der Vorderseite nur durch die Umschließungsvorgeschichte des zu entfernenden Grundelements unterscheidet, dann wird diese Vorderseite dem zu entfernenden Grundelement zugeordnet, beispielsweise f4. Daher würde diese Vorderseite (f4) dann gelöscht (13 03). Eine Entfernung sämtlicher Vorderseiten, die dem zu entfernenden Grundelement zugeordnet sind, läßt die Kanten, Scheitelpunkte und Bereiche des zu entfernenden Grundelements übrig.
Als nächstes wird mit jeder Kante in der vereinigten Menge eine Reihe von Versuchen unternommen, um zu ermitteln, ob diese Kante entfernt werden sollte. Jede Kante, beispielsweise e4, die keine benachbarten Vorderseiten 1305 aufweist, wird gelöscht (13 07). Jede verbleibende Kante, beispielsweise e5, die eine oder mehrere benachbarte Vorderseiten aufweist, wird untersucht, um zu ermitteln, ob sie zwei benachbarte Vorderseiten hat, die beide auf derselben Oberfläche 1309 liegen. Ist dies der Fall, dann wird diese Kante e5 gelöscht (13 11). Schließlich wird jede übrigbleibende Kante, beispielsweise e6, daraufhin untersucht, ob sie nur eine benachbarte Vorderseite 1313 aufweist. Ist dies der Fall, dann wird sie (e6) gelöscht. Zu diesem Zeitpunkt wurden sämtliche Kanten gelöscht, die nicht dem nicht entfernten Abschnitt der vereinigten Menge zugeordnet sind.
Scheitelpunkte werden nach ähnlichen Regeln bearbeitet. Liegt ein Scheitelpunkt, beispielsweise v1, neben keinen Kanten und keinen Vorderseiten 1317, dann wird er (v1) gelöscht (13 19). Ist ein Scheitelpunkt, beispielsweise v2, der noch nicht gelöscht wurde, neben keinen Kanten angeordnet, sondern neben einer Vorderseite 1321 angeordnet, dann wird er (v2) gelöscht (13 23). Schließlich werden die übrigbleibenden Scheitelpunkte gelöscht, beispielsweise v3, die neben sowohl zwei Kanten auf derselben Oberfläche als auch neben zwei Vorderseiten liegen (13 25). Nunmehr ist alles, was von dem entfernten Grundelement übrigbleibt, eine Bezugnahme auf es in den Umschließungsvorgeschichten von Bereichen, die es früher eingenommen hat (in den Fig. 14A-H nicht sichtbar).
Der Abschlußschritt beim Abtrennen eines Grundelements aus einer vereinigten Menge besteht darin, aus der Umschließungsvorgeschichte jedes Bereiches jede Bezugnahme auf dieses Grundelement zu entfernen.
Zur Erläuterung des voranstehenden Verfahrens werden nunmehr die Fig. 14A bis 14H kurz beschrieben.
In Fig. 14A ist eine vereinigte Menge dargestellt, die aus einem Zylinder C und einem Kubus D besteht. Der Zylinder C wird von dem Kubus D getrennt. Wie in Fig. 14B gezeigt ist, sind sämtliche Vorderseiten, beispielsweise f4, die nur dem Zylinder C zugeordnet sind, entfernt worden. Als nächstes zeigt Fig. 14C das Ergebnis des Entfernens sämtlicher Kanten, die neben keinen Vorderseiten liegen (beispielsweise e5). Daraufhin werden Kanten neben zwei Vorderseiten entfernt, die auf derselben Oberfläche liegen (beispielsweise e5), was zu dem in Fig. 14D gezeigten Zustand führt. Das Entfernen der Kanten ist in Fig. 14E beendet, mit der Entfernung von Kanten, die nur eine benachbarte Vorderseite aufweisen (beispielsweise e6). In Fig. 14F wurden Scheitelpunkte entfernt, die keine benachbarten Kanten und keine benachbarten Vorderseiten aufweisen (beispielsweise v1). Daraufhin werden Scheitelpunkte entfernt, die keine benachbarten Kanten und eine benachbarte Vorderseite aufweisen (beispielsweise v2), was zu dem in Fig. 14G gezeigten Zustand führt. Schließlich zeigt Fig. 14H das Ergebnis der Entfernung von Scheitelpunkten, die zwei benachbarte Kanten haben, die auf derselben Kurve liegen, und darüber hinaus zwei benachbarte Vorderseiten (beispielsweise v3). In dieser Darstellung führt die Aktualisierung der Umschließungsvorgeschichten der Bereiche zu keiner sichtbaren Änderung, und daher stellt Fig. 14H das Endresultat dar.
Die vorliegende Erfindung wurde im Zusammenhang mit einer bevorzugten Ausführungsform beschrieben. Allerdings ist diese Ausführungsform nur beispielhaft zu verstehen.
Unterschiedliche Abänderungen und Ausweitungen, die nunmehr Fachleuten auf diesem Gebiet einfallen werden, sollen in den Umfang der vorliegenden Erfindung eingeschlossen sein, der sich aus der Gesamtheit der vorliegenden Anmeldeunterlagen ergibt.
Anhang Zur Trennung eines Unter-Objekts von einer vereinigten Menge
Für jede Vorderseite in der vereinigten Menge:
(Unterscheidet sich die Umschließungsvorgeschichte des Bereichs auf einer Seite der Vorderseite von der Umschließungsvorgeschichte des Bereichs auf einer Seite der Vorderseite von der Umschließungsvorgeschichte auf der anderen Seite der Vorderseite nur durch das zu entflammende Unter-Objekt, dann lösche die Vorderseite).
Für jede Kante der vereinigten Menge:
(Hat die Kante keine angrenzenden Vorderseiten, dann lösche die Kante;
Hat die Kante benachbarte Vorderseiten auf einer einzigen Oberfläche, dann lösche die Kante;
Hat die Kante eine benachbarte Vorderseite, dann lösche die Kanten).
Für jeden Scheitelpunkt der vereinigten Menge:
(Hat der Scheitelpunkt keine benachbarten Kanten und keine benachbarten Vorderseiten, dann lösche den Scheitelpunkt;
Hat der Scheitelpunkt keine benachbarten Kanten und eine benachbarte Vorderseite, dann lösche den Scheitelpunkt;
Hat der Scheitelpunkt zwei benachbarte Kanten und zwei benachbarte Vorderseiten, dann lösche den Scheitelpunkt).
Für jeden Bereich der vereinigten Menge:
(Entferne das Unter-Objekt aus der Umschließungs-Vor­ geschichte des Bereiches).

Claims (12)

1. Informationsbearbeitungssystem zur Darstellung eines Objekts in einem dreidimensionalen Koordinatenraum als mehrere Randdarstellungen (BREPs), wobei die BREPs Ränder aufweisen, welche den Koordinatenraum in mehrere topologische Größen unterteilen, die Umschließungsvorgeschichten aufweisen, mit:
  • a) einer Einrichtung zur Vereinigung der mehreren BREPs zur Ausbildung einer vereinigten BREP, welche vereinigte Ränder einschließlich der Ränder der mehreren BREPs aufweist, wobei die vereinigten Ränder vereinigte topologische Größen festlegen, die Vorgeschichten aufweisen, die von den Umschließungsvorgeschichten der mehreren topologischen Größen der mehreren BREPs abgeleitet sind; und
  • b) einer Einrichtung zur Auswahl, unter den vereinigten topologischen Größen, eines Satzes topologischer Größen entsprechend dem repräsentierten Objekt, in Reaktion auf die Einrichtung zur Vereinigung.
2. Informationsbearbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß weiterhin eine Einrichtung zum Abtrennen der vereinigten BREP durch Entfernen einer in dieser enthaltenen BREP daraus vorgesehen ist.
3. Informationsbearbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß die Auswahleinrichtung weiterhin aufweist:
  • a) eine Einrichtung zum Empfangen einer Darstellung einer Bool′schen Operation, die unter Verwendung der mehreren BREPs als Operanden ausgeführt werden soll; und
  • b) eine Einrichtung zum Markieren, in der vereinigten BREP, der vereinigten Bereiche, welche ein Ergebnis der empfangenen Bool′schen Operation repräsentieren.
4. Informationsbearbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß weiterhin eine Einrichtung vorgesehen ist, die auf die Auswahleinrichtung reagiert, um Bilder der ausgewählten, vereinigten Bereiche anzuzeigen.
5. Randbewertungssystem zur Bearbeitung mehrerer Grundelemente, von denen jedes zumindest eine durch Ränder definierte topologische Größe enthält, wobei eine Datenspeichervorrichtung zum Speichern von Information, welche jede der topologischen Größen repräsentiert, aufweist:
eine Einrichtung zum Speichern der mehreren Grundelemente ohne Weglassen der Information, welche jede der topologischen Größen jedes der mehreren Grundelemente repräsentiert; und
eine Einrichtung zum Halten einer Markierung, die jeder topologischen Größe zugeordnet ist und zur Anzeige der Auswahl der topologischen Größe dient.
6. Datenspeichervorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die Information einer Randbeschreibung jeder der topologischen Größen jedes der mehreren Grundelemente umfaßt, wobei die Speichereinrichtung weiterhin aufweist:
eine Einrichtung zum Halten der Randbeschreibungen in drei Dimensionen der topologischen Größen; und
eine Einrichtung zum Halten einer Umschließungsvorgeschichte, welche Information umfaßt, die repräsentiert, welches der mehreren Grundelemente durch jede der topologischen Größen gebildet wird, wobei jede Vorgeschichte mit den Darstellungen der Ränder der topologischen Größen vernetzt ist.
7. Verfahren zur Anzeige eines graphischen Bildes eines Objektes in einem Datenverarbeitungssystem, einschließlich der Anzeige mehrerer Unterobjekte, die durch Randdarstellungen repräsentiert werden, mit folgenden Schritten:
  • a) Identifizieren von Schnitten zwischen den Unterobjekten in jeder der Randdarstellungen;
  • b) Konstruieren einer vereinigten Randdarstellung aus den Randdarstellungen und den Schnitten, die in dem Identifizierungsschritt identifiziert wurden, um hierdurch mehrere topologische Größen zu bilden, welche Umschließungsvorgeschichten aufweisen, die repräsentieren, aus welchem der mehreren Grundelemente jede topologische Größe gebildet wurde;
  • c) Klassifizieren der topologischen Größen der vereinigten Randdarstellung entsprechend den Umschließungsvorgeschichten;
  • d) Auswahl topologischer Größen entsprechend dem Objekt, unter der klassifizierten, vereinigten Randdarstellung für eine Anzeige, wobei die Auswahl in Reaktion auf die Klassifizierung vorgenommen wird; und
  • e) Anzeigen der ausgewählten topologischen Größen entsprechend dem Objekt, aus der klassifizierten, vereinigten Randdarstellung.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß weiterhin folgender Schritt vorgesehen ist:
  • f) Editieren der vereinigten Randdarstellung.
9. Verfahren nach Anspruch 8 zur Anzeige und zum Editieren von Objekten einschließlich Oberflächen, Vorderseiten, Kanten, Scheitelpunkten und Bereichen, die zu den mehreren Unterobjekten gehören, wobei der Schritt f) weiterhin folgende Schritte umfaßt:
Identifizieren eines zu entfernenden Unterobjekts;
Entfernen von Vorderseiten, für welche sich die klassifizierten Umschließungen auf jeder Seite jeder der Vorderseiten nur durch das zu entfernende Unterobjekt unterscheiden;
Entfernen jeder der Kanten, welche nicht benachbart einer Vorderseite ist;
Entfernen jeder der Kanten, welche neben zwei Vorderseiten liegt, die eine einzige Oberfläche festlegen;
Entfernen jeder der Kanten, welche neben genau einer Vorderseite liegt;
Entfernen jedes der Scheitelpunkte, die nicht neben einer Kante und nicht neben einer Vorderseite liegen;
Entfernen jedes der Scheitelpunkte, welche nicht neben einer Kante liegen, aber neben einer Vorderseite liegen;
Entfernen jedes der Scheitelpunkte, welche neben zwei Kanten auf einer Oberfläche und neben zwei Vorderseiten liegen; und
Entfernen des Unterobjekts von den verbleibenden klassifizierten Umschließungen.
10. Verfahren nach Anspruch 7, bei welchem der Schritt d) weiterhin folgende Schritte umfaßt:
Empfang eines Auswahlkriteriums; und
Identifizieren topologischer Größen, deren klassifizierte Umschließungen zu dem Auswahlkriterium passen.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß weiterhin folgende Schritte vorgesehen sind:
Empfang eines neuen Auswahlkriteriums;
Rückgängigmachung der Auswahl von Abschnitten der klassifizierten, vereinigten Randdarstellung, deren topologische Größen klassifizierte Umschließungen aufweisen, die zu dem Auswahlkriterium passen; und
Auswahl von Abschnitten der klassifizierten, vereinigten Randdarstellung, deren topologische Größen klassifizierte Umschließungen aufweisen, die zu dem neuen Auswahlkriterium passen.
12. Informationsbearbeitungssystem zur Bearbeitung von Daten, welche mehrere Randdarstellungen (BREPs) in einem dreidimensionalen Koordinatenraum repräsentieren, wobei die Randdarstellungen Ränder umfassen, welche den Koordinatenraum in mehrere topologische Größen unterteilen, jede topologische Größe eine Umschließungsvorgeschichte aufweist, welche identifiziert, welche der mehreren BREPs die topologische Größe enthält, wobei die bearbeiteten Daten eine Menge topologischer Größen umfassen, die einem darzustellenden Objekt entsprechen, wobei das System umfaßt:
  • a) eine Einrichtung zum Vereinigen der mehreren BREPs zur Ausbildung einer vereinigten BREP einschließlich vereinigter Ränder, die durch die Ränder der mehreren BREPs und irgendwelche Schnitte dazwischen festgelegt werden, wobei die vereinigten Ränder vereinigte topologische Größen festlegen, und jede vereinigte topologische Größe eine Umschließungsvorgeschichte aufweist, die von der Umschließungsvorgeschichte jeder topologischen Größe abgeleitet ist; und
  • b) eine Einrichtung zur Auswahl, unter den vereinigten topologischen Größen, der Menge topologischer Größen entsprechend dem repräsentierten Objekt, in Reaktion auf die Einrichtung zum Vereinigen und auf die Umschließungsvorgeschichten der vereinigten topologischen Größen.
DE4303071A 1992-02-03 1993-02-03 Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung Ceased DE4303071A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US82993492A 1992-02-03 1992-02-03

Publications (1)

Publication Number Publication Date
DE4303071A1 true DE4303071A1 (de) 1993-10-28

Family

ID=25255952

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4303071A Ceased DE4303071A1 (de) 1992-02-03 1993-02-03 Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung

Country Status (2)

Country Link
US (1) US5561747A (de)
DE (1) DE4303071A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359380A (zh) * 2018-10-16 2019-02-19 上海莉莉丝科技股份有限公司 缩放方法、装置、设备及介质

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243102B1 (en) 1994-05-16 2001-06-05 Apple Computer, Inc. Data-driven layout engine
US6404433B1 (en) * 1994-05-16 2002-06-11 Apple Computer, Inc. Data-driven layout engine
JP2981516B2 (ja) * 1995-03-10 1999-11-22 富士通株式会社 三次元形状編集装置
US6016153A (en) * 1996-07-30 2000-01-18 International Business Machines Corporation Method to convert non-manifold polyhedral surfaces into manifold surfaces
US6084587A (en) * 1996-08-02 2000-07-04 Sensable Technologies, Inc. Method and apparatus for generating and interfacing with a haptic virtual reality environment
AUPO206596A0 (en) * 1996-08-30 1996-09-26 Anca Pty Ltd Tool grinding simulation system
US5950160A (en) 1996-10-31 1999-09-07 Microsoft Corporation Method and system for displaying a variable number of alternative words during speech recognition
US5949429A (en) * 1996-11-14 1999-09-07 Microsoft Corporation Method for performing pixel addressing operations for a tiled image
US6154215A (en) * 1997-08-01 2000-11-28 Silicon Graphics, Inc. Method and apparatus for maintaining multiple representations of a same scene in computer generated graphics
KR19990054793A (ko) * 1997-12-26 1999-07-15 정선종 3차원 형상 데이터로부터 특징형상을 추출하는 방법
US6333749B1 (en) * 1998-04-17 2001-12-25 Adobe Systems, Inc. Method and apparatus for image assisted modeling of three-dimensional scenes
US6847384B1 (en) * 1998-05-14 2005-01-25 Autodesk, Inc. Translating objects between software applications which employ different data formats
US6552722B1 (en) * 1998-07-17 2003-04-22 Sensable Technologies, Inc. Systems and methods for sculpting virtual objects in a haptic virtual reality environment
US6421048B1 (en) * 1998-07-17 2002-07-16 Sensable Technologies, Inc. Systems and methods for interacting with virtual objects in a haptic virtual reality environment
US6119069A (en) * 1999-03-01 2000-09-12 Case Corporation System and method for deriving field boundaries using alpha shapes
US7990374B2 (en) 2004-06-29 2011-08-02 Sensable Technologies, Inc. Apparatus and methods for haptic rendering using data in a graphics pipeline
US7441230B2 (en) * 2005-10-07 2008-10-21 Lucasfilm Entertainment Company Ltd. Method of utilizing product proxies with a dependency graph
US7755621B2 (en) * 2006-06-16 2010-07-13 Autodesk, Inc. Fast interactive object manipulation
CN102495933A (zh) * 2011-12-14 2012-06-13 黄桂青 布尔运算构造几何二叉树结构系统化自动平衡等值转换方法
US20140136151A1 (en) * 2012-11-09 2014-05-15 Gary Arnold Crocker Methods and Systems for Generating Continuous Surfaces from Polygonal Data
FI20135001L (fi) 2013-01-02 2014-07-03 Tekla Corp Tietokoneavusteinen mallintaminen
US20150286801A1 (en) * 2014-04-02 2015-10-08 International Business Machines Corporation Representing Inclusion and Exclusion Criteria for Identifying Clinical Cohorts
WO2017078797A1 (en) * 2015-11-04 2017-05-11 Illusio, Inc. Augmented reality imaging system for cosmetic surgical procedures
GB2595443A (en) * 2020-05-01 2021-12-01 Hackrod Virtual engineering

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4208719A (en) * 1978-08-10 1980-06-17 The Singer Company Edge smoothing for real-time simulation of a polygon face object system as viewed by a moving observer
DE3401060A1 (de) * 1984-01-13 1986-01-23 Dr. Johannes Heidenhain Gmbh, 8225 Traunreut Verfahren zum grafischen darstellen eines gebildes
US4809201A (en) * 1985-12-02 1989-02-28 Schlumberger Systems, Inc. Graphic display region defining technique
US4785399A (en) * 1987-03-03 1988-11-15 International Business Machines Corporation Shaping geometric objects by cumulative translational sweeps
JPH0752366B2 (ja) * 1987-09-21 1995-06-05 株式会社日立製作所 防去加工シミュレータ装置
US5179644A (en) * 1988-03-11 1993-01-12 Ricoh Company, Ltd. Solid modeling method
US5278983A (en) * 1988-09-30 1994-01-11 International Business Machines Corporation Boundary representation solid modeling system
US5027292A (en) * 1989-04-19 1991-06-25 International Business Machines Corporation Multiple depth buffers for graphics and solid modelling

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Cary A. Crocker, William F. Reinke: An Editable NONmanifold Boundary Representation, in: IEEE CG&A, March 1991, S. 39-51 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359380A (zh) * 2018-10-16 2019-02-19 上海莉莉丝科技股份有限公司 缩放方法、装置、设备及介质
CN109359380B (zh) * 2018-10-16 2020-06-09 上海莉莉丝科技股份有限公司 缩放方法、装置、设备及介质
US11636574B2 (en) 2018-10-16 2023-04-25 Shanghai Lilith Technology Corporation Scaling method and apparatus, device and medium

Also Published As

Publication number Publication date
US5561747A (en) 1996-10-01

Similar Documents

Publication Publication Date Title
DE4303071A1 (de) Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung
DE69233037T2 (de) Automatisiertes neues Layout mit dimensionaler Verknüpfung
DE19612016A1 (de) Verfahren zur rechnergestützten Geometriemodellierung
DE3608438A1 (de) Verfahren zum berechnen von freien gekruemmten flaechen mittels computergestuetztem design cad und computergestuetzter herstellung cam und numerischer steuerung nc
DE69726479T2 (de) Selektive Verfeinerung von Gitternetzen
DE60031664T2 (de) Computerverfahren und vorrichtung zum schaffen von sichtbarer graphik unter verwendung von graph algebra
DE10025583A1 (de) Verfahren zur Optimierung integrierter Schaltungen, Vorrichtung zum Entwurf von Halbleitern und Programmobjekt zum Entwerfen integrierter Schaltungen
DE10106023A1 (de) Verfahren und Vorrichtung zur Kollisionserkennung von Objekten
DE19806985A1 (de) Organisationsverfahren für volumetrische Daten, das effiziente Cache-Aufbereitungsbeschleunigungen und einen effizienten Graphik-Hardwareentwurf ermöglicht
DE19817584A1 (de) Verfahren und System zur Objektsuche
DE102007050615A1 (de) Brick-basierter Fusionsrenderer
DE69817107T2 (de) System und Verfahren zur polyhedral Kollisiondetektion
DE69830766T2 (de) Verfahren und Vorrichtung zum Bestimmen des Anwendungsumfangs geschichteter synthetischer graphischer Filter
DE102011076878A1 (de) Verfahren und Vorrichtung zur effizienten Editierung eines dreidimensionalen Volumens mittels Ray Casting
DE19947892A1 (de) Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafür
DE19817583B4 (de) Verfahren und System zur Datenverarbeitung für dreidimensionale Objekte
DE112010005294T5 (de) Bildanzeigevorrichtung
WO2006061185A1 (de) Verfahren zur ableitung von technischen zeichnungen aus 3d modellen mit mindestens zwei kollidierenden 3d körpern
DE112014002120T5 (de) System und Verfahren zur Durchführung von Operationen zum Rückgängigmachen und Wiederherstellen während der Bearbeitungssimulation
DE60008201T2 (de) Übersetzung von Daten mit elektronischen Bildern
DE102018217114A1 (de) Verfahren und Anordnung zur Speicherbedarfsermittlung, um mittels einer Grafikprozessoreinheit auf FEM-Knotennetzen basierte Simulationen durchzuführen
EP1316051B1 (de) Verfahren zur veränderung der konstruktion eines bauteils
DE19818991B4 (de) Verfahren und System zum Auswählen und Anzeigen von in einem Betrachtungsvolumen enthaltenen Objekten
EP0960390B1 (de) Verfahren und anordnung zur kodierung eines digitalisierten bildes
EP0960388B1 (de) Verfahren und anordnung zur codierung eines digitalisierten bildes

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection