-
Betreffende Anmeldung
-
Diese
Anmeldung beansprucht die Priorität einer US-Provisional-Anmeldung, welche betitelt
ist "System and
Method for Analyzing Modeling Accuracy While Performing Reverse
Engineering With 3D scan data", Anmeldung
Nummer 60/767,517, eingereicht am 9. Mai 2006.
-
Gebiet der Erfindung
-
Die
Ausführungsformen
der vorliegenden Erfindung betreffen im Allgemeinen CAD (computerunterstützte Konstruktion)
und insbesondere die Messung eines Genauigkeitsverlustes während reverser
Konstruktionsprozesse.
-
Hintergrund
-
Anwendungen
der computerunterstützten
Konstruktion (CAD) werden benutzt, um Computermodelle von zwei-
oder dreidimensionalen Objekten als Teil des Produktionsprozesses
für das
tatsächliche
physikalische Objekt, welches modelliert wird, zu erzeugen. Die
Modelle umfassen oft mehrere Teile, welche individuell entworfen
werden müssen.
Ein CAD-Teilkörper
ist ein Computermodell, welches durch eine CAD-Anwendung benutzt
wird, um eine Raum- oder Schicht- (sheet) (offener Körper mit
einer Dicke von Null)-Geometrie aufzunehmen. Wenn der Entwerfer
mit dem Entwurf zufrieden ist, kann das tatsächliche physikalische Objekt
unter Benutzung des CAD-Modells produziert werden.
-
3D-Abtasten
erfasst physikalische Geometrieinformation für ein dreidimensionales Objekt
durch Erfassen von hochaufgelösten
Punkten, welche die Form des abgetasteten dreidimensionalen Objektes
repräsentieren.
Die 3D-Abtastdaten
können
entweder durch einen Satz von Punkten oder dichten triangularen
(oder anders geformten) Gittern repräsentiert werden, welche kumulativ
ein Modell des abgetasteten Objekts bilden. Das Modell kann in mehrere
Gruppen segmentiert werden, welche Bereiche genannt werden. In einem
Gittermodell ist der Bereich ein Gitterbereich, d.h. ein Satz von
triangularen (oder anders geformten) Facetten, welche willkürlich durch
den Benutzer definiert werden können
oder automatisch durch ein Computerprogramm identifiziert werden
können.
Das Computerprogramm kann auch dazu ausgelegt sein, um ebene, zylindrische, kreisförmige, kegelförmige, toroidale
oder Freiformgitterregionen durch Schätzen und Verfolgen der Krümmungsinformation
zu detektieren. Wenn die Roh-3D-Abtastdaten erfasst sind, können sie
in ein CAD-Teilmodell konvertiert werden für eine weitere Verarbeitung,
den Entwurf des dreidimensionalen Objektes zu replizieren oder zu
modifizieren. Dieser Prozess eines Erfassens von 3D-Abtastdaten für ein dreidimensionales
Objekt, um es einer CAD-Anwendung bereitzustellen, so dass das Objekt
repliziert oder erneut entworfen werden kann, wird reverse Konstruktion
genannt.
-
Während des
reversen Konstruktionsprozesses gibt es zwei hauptsächliche
Möglichkeiten,
die ursprüngliche
Abtastdatengenauigkeit zu verlieren. Die erste Möglichkeit kann während der
Editierprozesse für die
Roh-3D-Abtastdaten erfolgen. 3D-Abtastdaten sind anfällig, verrauscht
zu sein, so dass der Benutzer Glättungsoperationen
auf den Daten durchführen
muss, um es leichter zu machen, direkt NC-Werkzeugpfade zu berechnen, ein RP (Rapid
Prototyping)-Modell
zu bauen oder einen CAD-Teil zu remodellieren. Eine Glättungsoperation
bewegt jedoch Punkte in den Abtastdaten mit dem Ergebnis, dass ein
Genauigkeitsverlust verglichen mit den ursprünglichen Daten geschieht. Ein
weiterer Typ einer Operation, welche zu dem Genauigkeitsverlust
führt,
ist Dezimierung (oder Simplifizierung). Dezimierung ist ein Prozess,
die Zahl von Gitterfacetten zu reduzieren, indem größere Gitter
benutzt werden, wenn mehr ebene (flache) Bereich repräsentiert
werden. Dezimierung modifiziert auch Punktkoordinaten von den ursprünglich Abtastdaten.
-
Der
zweite Teil des reversen Konstruktionsprozesses, wo es eine beträchtliche
Gefahr eines Verlustes der ursprünglichen
Abtastdatengenauigkeit gibt, ist während der Konstruktion eines
CAD-Modells, welches die Roh-3D-Abtastdatengeometrie
nachbildet. Ein CAD-Teilmodell wird durch einen Satz von parametrischen Oberflächen repräsentiert,
wohingegen 3D-Abtastdaten durch Punkte oder ein Satz von triangularen
(quadratischen oder anders geformten) Gittern repräsentiert
werden. Als ein Ergebnis gibt es immer eine Ungleichheit zwischen
dem Roh-3D-Abtastmodell
und dem revers konstruierten CAD-Modell. Der Genauigkeitsverlust
kann als die Abweichung zwischen den beiden Modellen interpretiert
werden. Idealerweise sollte der Benutzer in der Lage sein, den Genauigkeitsverlust
zu verfolgen und zu verwalten über
die gesamten reversen Konstruktionsprozesse von einem Editieren
der Roh-Abtastdaten
bis zu einem CAD-Remodellieren. Unglücklicherweise ist das Verfolgen
und Verwalten von dem Genauigkeitsverlust keine einfache Aufgabe,
da der Benutzer den Genauigkeitsverlust überprüfen muss, immer wenn der Benutzer
die Roh-Abtastdaten editiert und/oder CAD-Merkmale hinzufügt.
-
Kurze Zusammenfassung
-
Die
Ausführungsformen
der vorliegenden Erfindung stellen dem Benutzer einen automatischen
und wirkungsvollen Weg zur Verfügung,
den Grad eines Genauigkeitsverlustes, welcher den reversen Konstruktionsprozessen
zuzuordnen sind, welche 3D-Abtastdaten benutzen, zu messen. Die
Ausführungsformen
stellen einen Mechanismus bereit, welcher den Benutzer kontinuierlich
darüber
informiert, welchen Effekt ablaufende reverse Konstruktionsprozeduren
auf Abtastdatengenauigkeit hat. Die vorliegende Erfindung öffnet Roh-3D-Abtastdaten,
so dass der Benutzer damit beginnen kann, Abtastdaten zu editieren
oder CAD zu remodellieren. In einer Ausführungsform kann der Ausdruck "remodellieren" im Sinne von "erneut modellieren" benutzt sein. Der
Benutzer kann einen Parameter setzen, welcher das gesamte Aufmaß, das Ausmaß eines erlaubten
Fehlers, steuert. Das Aufmaß zeigt
die maximale Abstandsabweichung zwischen den ursprünglichen
Roh-Abtastdaten und dem finalen revers konstruierten CAD-Modell
oder den editierten Abtastdaten an. Der Benutzer kann auch auswählen, auf
welche Weise die grafische Anzeige die Fehlerverteilung auf dem
Modell illustriert, wie etwa durch Farbabbildung und Whiskerabbildung
(whisker mapping). Die vorliegende Erfindung aktualisiert automatisch
die Genauigkeitverlustinformation, welche für einen Benutzer verfügbar ist
durch Illustration des Verlustes auf einer benutzerspezifizierten
Fehleranzeige auf dem Modell. Der Fehler kann dem Benutzer nach
Beendigung eines Editier-/Modellierungsbefehls oder während der
Vorschau des Befehls angezeigt werden. Eine Genauigkeitsanalyseeinrichtung
zeigt automatisch den Bereich in einer benutzerspezifizierten Farbe
an, wo der Genauigkeitsverlust das Gesamtaufmaß überschreitet. Die Fehleranzeige
informiert den Benutzer grafisch über unerwünschte Editierungs- oder Modellierungsparameter.
-
In
einer Ausführungsform
der vorliegenden Erfindung umfasst ein Verfahren zum Analysieren
einer 3D-Modellierungsgenauigkeit
beim Verarbeiten von 3D-Abtastdaten
den Schritt eines Bereitstellens einer Kollektion von 3D-Abtastdaten,
welche ein Modell bilden, welches die Form eines dreidimensionalen
Objektes repräsentiert.
Ein CAD-System, welches dazu benutzt wird, zumindest einen CAD-Teilkörper, welcher
von den 3D-Abtastdaten
gebildet ist, zu remodellieren, wird auch bereitgestellt. Das Verfahren
wählt eine
Operation aus, welche dazu ausgelegt ist, entweder zumindest einen
Teil der 3D-Abtastdaten oder zumindest einen Teil des CAD-Teilkörpers zu
manipulieren. Das Verfahren bestimmt auch ein Maß eines Genauigkeitsverlustes, welcher
der ausgewählten
Operation zuzuordnen ist. Der gemessene Genauigkeitsverlust, welcher
der ausgewählten
Operation zuzuordnen ist, wird einem Benutzer präsentiert.
-
In
einer weiteren Ausführungsform
umfasst ein System zum Analysieren von 3D-Modellierungsgenauigkeit
beim Verarbeiten von 3D-Abtastdaten eine Kollektion von 3D-Abtastdaten, welche
ein Modell bilden, welches die Form eines dreidimensionalen Objektes
repräsentiert.
Das System umfasst auch eine CAD-Anwendung, welche dazu benutzt
wird, zumindest einen CAD-Teilkörper
zu remodellieren, welcher von den 3D-Abtastdaten gebildet ist. Zusätzlich ermöglicht eine
Benutzerschnittstelle die Auswahl einer Operation. Die auswählbare Operation
ist entweder eine Operation zum Editieren von Abtastdaten oder eine
Operation zum CAD-Remodellieren.
Das System umfasst auch eine Genauigkeitsanalyseeinrichtung, welche
einen Genauigkeitsverlust misst, welcher der ausgewählten Operation
zuzuordnen ist.
-
Kurze Beschreibung der
Zeichnungen
-
Die
Erfindung wird insbesondere in den angehängten Ansprüchen aufgezeigt. Die Vorteile
der Erfindung, welche oben beschrieben sind, wie auch weitere Vorteile
der Erfindung, können
besser durch Bezug auf die folgende Beschreibung verstanden werden,
welche in Verbindung mit den begleitenden Zeichnungen genommen ist,
in welchen:
-
1 eine
Umgebung darstellt, welche geeignet ist, eine Ausführungsform
der Erfindung zu praktizieren;
-
2 ein
Flussdiagramm einer Folge von Schritten ist, welche durch eine Ausführungsform
der vorliegenden Erfindung verfolgt wird, um Genauigkeitsverlust
in 3D-Abtastdaten zu messen;
-
3A ursprüngliche
Abtastdaten darstellt;
-
3B die
Abtastdaten der 3A nach Dezimierung darstellt;
-
3C eine
Anzeige der Abweichungsberechnung darstellt, welche durch die Genauigkeitsanalyseeinrichtung
bestimmt ist;
-
4A die
Einstellung eines Abweichungstoleranzwertes darstellt;
-
4B die
Anwendung einer Dezimierungsoperation mit den Bereichen außerhalb
der Toleranzeinstellung, welche einem Benutzer angezeigt ist, darstellt;
-
5 die
angezeigten Fehlerergebnisse darstellt, welche nach Anwenden einer
Operation auf ein Modell erzeugt sind und welche eine Toleranzeinstellung
wesentlich überschreiten;
-
6 eine
Benutzerschnittstelle für
die vorliegende Erfindung darstellt, welche dazu benutzt ist, die Krümmungsgenauigkeit
zu verfolgen;
-
7A und 7B die
Anzeige einer Genauigkeitsinformation für Krümmung darstellen mit einer
Toleranzeinstellung für
eine Kurve, welche auf einem Gitter gezeichnet ist;
-
8 eine
Raumkurve mit einer Torsionsfarbkarte;
-
9 eine
Benutzerschnittstelle darstellt, welche benutzt wird, um die Genauigkeit
von disjunkten Enden zu verfolgen;
-
10 eine
Umgebungsabbildung darstellt, welche durch die Genauigkeitsanalyseeinrichtung
durchgeführt
ist;
-
11A bis 11C das
Verfolgen einer Genauigkeit für
einen CAD-Remodellierungsbefehl
(automatische Oberflächenoperation)
darstellen;
-
12A und 12B die
Anzeige von Abweichungswerten für
eine Kurve, welche auf Abtastdaten gezeichnet ist, darstellen;
-
13A bis 13C die
Anzeige von Genauigkeitsinformation für ein CAD-Raummodell darstellen, welches
von Abtastdaten erzeugt ist;
-
14A bis 14C die
Sequenz der 13A bis 13C darstellen,
welche mit Benutzung einer Optimierungsroutine eingestellt sind.
-
Detaillierte Beschreibung
-
Die
Ausführungsformen
der vorliegenden Erfindung stellen einem Benutzer, welcher reverse
Konstruktion unter Benutzung von 3D-Abtastdaten durchführt, Genauigkeitsverlustinformation
bereit. Die Genauigkeitsverlustinformation zeigt an, welchen Effekt
Abtastdateneditierungsoperationen oder Operationen eines CAD-Remodellierens
auf 3D-Abtastdaten haben. Genauigkeitsverlust zeigt die Abstandsabweichung
zwischen gewählten
Referenz-3D-Abtastdaten (z.B. die ursprünglichen Abtastdaten oder der
vorherige Zustand der 3D-Abtastdaten vor einer Modifikation) und
den modifizierten Roh-3D-Abtastdaten
oder einem Derivativ der 3D-Abtastdaten, wie etwa einer Oberfläche oder
einem Raumkörper
an. Änderungen
der abgetasteten Referenzdaten, welche durch eine Operation eines
Editierens der Abtastdaten oder eine Operation eines CAD-Remodellierens
bewirkt sind oder bewirkt werden, werden von einen Benutzer bemerkt.
In einer Implementation wird die Wirkung einer vorgeschlagenen Operation
dem Benutzer in einer Vorschauebene präsentiert, bevor die Operation
vollendet ist.
-
1 stellt
eine Umgebung dar, welche geeignet ist, eine Ausführungsform
der vorliegenden Erfindung zu praktizieren. Ein Rechengerät 2 umfasst
eine Kollektion von Roh-3D-Abtastdaten 4 für ein abgetastetes
dreidimensionales Objekt. Die Roh-3D-Abtastdaten 4 können von
einem dreidimensionalen Abtaster 3 in Kommunikation mit
dem Rechengerät 2 gesammelt
werden, oder können
eine gespeicherte Kollektion von Abtastdaten sein. Das Rechengerät 2 beinhaltet
auch eine Genauigkeitsanalyseeinrichtung 5 und eine CAD-Anwendung 6.
Das Rechengerät 2 kann
eine Arbeitsstation, ein Server, ein Laptop, ein Mainframe-Computer,
ein PDA, ein Cluster von Geräten,
welche zusammenarbeiten, ein virtuelles Gerät oder ein anderes Rechengerät sein,
welches dazu in der Lage ist, die Genauigkeitsanalyseeinrichtung 5 und
die CAD-Anwendung 6, zu unterstützen, wie hierin diskutiert.
Die Genauigkeitsanalyseeinrichtung 5 ist in Software implementiert
und identifiziert das Ausmaß eines
Genauigkeitsverlustes, welcher einer ausgewählten Operation zuzuordnen
ist, welche unter Benutzung von 3D-Abtastdaten durchgeführt ist.
Die Genauigkeitsanalyseeinrichtung 5 kann als ein oder
mehrere Prozesse, Threads, Aufgaben (tasks), Anwendungs-Plug-Ins,
alleinstehenden Anwendungen oder anderen ausführbaren Prozessen implementiert
sein. In einer Implementation der vorliegenden Erfindung ist die
Genauigkeitsanalyseeinrichtung 5 in die CAD-Anwendung 6 als
ein Werkzeug integriert. In einer anderen Implementation ist die
Genauigkeitsanalyseeinrichtung 5 in Kommunikation mit der
CAD-Anwendung 6, aber ist nicht Teil der CAD-Anwendung. Die CAD-Anwendung 6 kann
umfassen oder Zugang zumindest zu einer CAD-Remodellierungsoperation 8 haben
und zumindest zu einer Operation 10 zum Editieren von Abtastdaten.
Die Operation 8 zum CAD-Remodellieren und die Operation 10 zum
Editieren von Abtastdaten werden im weiteren Detail unten diskutiert.
-
Die
Rohabtastdaten 4 sind eine Kollektion von hochaufgelösten Punkten
in drei Dimensionen, welche die
-
Form
eines abgetasteten dreidimensionalen Objekts repräsentiert.
In einer Implementierung sind die Rohabtastdaten 4 ein
Satz von dreieckigen Gittern, aber die Benutzung von anderen Formen
von Abtastdaten wird auch als innerhalb des Geltungsbereichs der
vorliegenden Erfindung angesehen. Zum Beispiel können die Rohabtastdaten 4 Punkte,
dreieckige Gitter, viereckige Gitter, Tetraeder-Gitter oder Hexaeder-Gitter
sein. Kollektiv bildet der Satz von Gittern ein Gittermodell, welches
die Oberfläche
des abgetasteten dreidimensionalen Objekts repräsentiert. In einer Ausführungsform
kann der Ausdruck "Gitter" im Sinne von "Netz" oder "Masche" benutzt sein. Alternativ
können
die Roh-Abtastdaten in ein Punktwolkemodell gebildet sein, welches die
Oberfläche
des abgetasteten dreidimensionalen Objekts repräsentiert. Das Modell 12 kann
einen oder mehrere Bereiche 14, 16, 18 haben.
Die Genauigkeitsanalyseeinrichtung 5 erzeugt eine GUI 32 auf
einer Anzeige 30, welche einem Benutzer 20 erlaubt,
verschiedene Typen von Genauigkeitsmaßen zu verfolgen, welche der
Ausführung
einer Operation 8 zum CAD-Remodellieren oder einer Operation 10 zum
Editieren von Abtastdaten zuzuordnen sind. Die Genauigkeitsanalyseeinrichtung 5 vergleicht
die ursprünglichen
Roh-Abtastdaten 4 mit den Werten, welche von den Operationen,
welche weiter unten ausgeführt
werden, resultieren und identifiziert das Ausmaß einer Änderung, welches der Ausführung der
Operationen zuzuordnen ist. Der berechnete Genauigkeitsverlust gegenübergestellt
mit den Werten der ursprünglichen
Abtastdaten wird dem Benutzer angezeigt. Der Benutzer kann zusätzliche
Befehle über
die GUI 32 oder einen anderen Mechanismus basierend auf
der angezeigten Information eingeben.
-
2 ist
ein Flussdiagramm einer Sequenz von Schritten, welche durch eine
Ausführungsform
der vorliegenden Erfindung verfolgt wird, um einen Genauigkeitsverlust
in 3D-Abtastdaten zu messen, welcher Operationen zum CAD-Remodellieren oder
zum Editieren von Abtastdaten zugeordnet ist. Die Folge von Schritten
beginnt mit der Bereitstellung einer Kollektion von Roh-3D-Abtastdaten 4,
welche ein Modell 12 bilden, welches ein dreidimensionales
Objekt repräsentiert
(Schritt 110). Die Roh-3D-Abtastdaten 4 können unmittelbar
vor einer Durchführung
einer Operation 8 zum CAD-Remodellieren oder einer Operation 10 zum
Editieren von Abtastdaten erfasst worden sein. Alternativ können die
Roh-3D-Abtastdaten vorher gespeicherte Abtastdaten sein. Die Genauigkeitsanalyseeinrichtung 5 speichert
die ursprünglichen
3D-Abtastdaten in dem Computerspeicherbereich (oder puffert die
Daten in einer temporären
Datei). Eine CAD-Anwendung 6, welche dazu benutzt ist,
zumindest einen CAD-Teilkörper
zu remodellieren, welcher von den 3D-Abtastdaten gebildet ist, ist
auch bereitgestellt (Schritt 112). Ein Benutzer wählt eine
Operation aus, welche dazu ausgelegt ist, entweder einen Teil der
3D-Abtastdaten oder einen Teil des CAD-Teilkörpers zu manipulieren (Schritt 114).
Die Operation kann eine Operation 8 zum CAD-Remodellieren
oder eine Operation 10 zum Editieren von Abtastdaten sein.
Eine GUI 32 ist bereitgestellt, welche dem Benutzer 20 erlaubt,
den Wert des Gesamtaufmaßes (Ausmaß eines
erlaubten Fehlers), den Typ eines Fehlers, und die Fehleranzeigemethode,
welche steuert, auf welche Weise der Benutzer über den Fehler informiert wird,
zu spezifizieren. Die Genauigkeitsanalyseeinrichtung 5 misst
den Genauigkeitsverlust, welcher der ausgewählten Operation zuzuordnen
ist (Schritt 116). Die Genauigkeitsanalyseeinrichtung 5 präsentiert
dann grafisch dem Benutzer das Maß eines Genauigkeitsverlustes
(Schritt 118). Die Ergebnisse können einem Benutzer in einer
Vorschauebene in der grafischen Benutzeroberfläche angezeigt werden, bevor
die Operation ausgeführt
wird. Alternativ können
die Resultate eines Genauigkeitsverlustes einem Benutzer über die
grafische Benutzerschnittstelle präsentiert werden, nachdem die Operation
vollendet ist. Die Genauigkeitsanalyseeinrichtung 5 kann
dann eine Bestätigung
von dem Benutzer über
einen gewünschten
Verlauf einer Aktion erhalten, wie etwa ein Fortfahren mit der Operation,
ein Justieren der Operation oder ein Abbrechen der Operation. Das
Mittel, das Maße
ines Genauigkeitsverlusts und Optionen, welche einem Benutzer zugänglich sind,
um auf die Anzeige des Maßes
eines Genauigkeitsverlustes zu reagieren, werden weiter unten diskutiert.
-
In
einer Ausführungsform
erlaubt die Genauigkeitsanalyseeinrichtung 5 einem Benutzer,
einen Genauigkeitsverlust, welcher durch das Ausführen von
Operationen zum Editieren von Abtastdaten auf Abtastdaten bewirkt
ist, zu verfolgen. Wenn der Benutzer Befehle ablaufen lässt, welche
die ursprünglichen
Punktkoordinaten bewegen, analysiert die Genauigkeitsanalyseeinrichtung 5 die
Operation. Die GUI 32 kann ein Befehlsdialogfenster umfassen,
in welchem ein grafischer Vorschaubefehl dem Benutzer erlaubt, das
erwartete Ergebnis eines Befehls vor einer Ausführung des Befehls vorab anzuschauen.
Wenn das Ergebnis im Voraus angeschaut wird, kann der Benutzer vorab
einen Genauigkeitsverlust betrachten, welcher dem Ausführen des Befehls
zuzuordnen ist. Der Genauigkeitsverlust kann durch Fehlerkarten
illustriert sein und Benutzer können Parameter
einstellen, um den Genauigkeitsverlust zu minimieren. In einer Ausführungsform
stellt die Genauigkeitsanalyseeinrichtung 5 automatisch
die Parameter ein. Die Fehlerkarten können in vielen Formen ausgeführt sein
und können "Heatmaps" oder andere Farbkarten
umfassen, wobei ein Farbspektrum benutzt wird, um verschiedene Werte
in den Ergebnissen zu repräsentieren.
-
3A-3C stellen
die Benutzung der Genauigkeitsanalyseeinrichtung 5 dar. 3A stellt
ursprüngliche
Abtastdaten dar, welche in ein Punktwolkemodell 300 gebildet
sind, welches ein dreidimensionales Objekt, eine Computermaus, repräsentiert.
Das Punktwolkemodell 300 umfasst viele kleine Polygone
(Dreiecke in dem dargestellten Beispiel) 310. 3B stellt
die Abtastdaten dar, nachdem das Punktwolkemodell 300 durch
Ausführen
einer Dezimierungs-/Simplifikationsoperation modifiziert worden
ist, welche viele kleine Polygone (Dreiecke in dem dargestellten
Beispiel) in weniger aber größere Polygone
(Dreiecke in dem dargestellten Beispiel) 320 kombiniert. 3C zeigt
eine Abweichungsanalyse, welche durch die Genauigkeitsanalyseeinrichtung 5 bereitgestellt
ist. Die Abweichungsanalyse wird einem Benutzer als eine Fehlerkarte
bereitgestellt, welche die Änderung
zwischen den ursprünglichen
Abtastdaten/Startabtastdaten, welche in 3A dargestellt
sind, und der Punktwolke nach Modifikation, welche in 3B dargestellt
ist, zeigt. Die Fehlerkarte kann eine Legende 335 umfassen,
welche einen Index für
das Ausmaß einer
Abweichung oder einen anderen Genauigkeitsverlust bereitstellt,
welcher für
die verschiedenen Bereiche des Modells bestimmt wird. Zum Beispiel
läuft in 3C das
Ausmaß einer
angezeigten Abweichung von 0,00 bis 0,03022 mm. In 3C zeigt die
Fehlerkarte die Genauigkeitsverlustwerte durch Verändern des
angezeigten Musters für
verschiedene Bereiche des Modells von vollschwarz 330,
was keinen Genauigkeitsverlust repräsentiert bis zu einer diagonalen Schraffur 340,
welche die größte Abweichung
(eine Abweichung von mindestens 0,03022) repräsentiert. Es wird anerkannt
werden, dass die Fehlerkarte auch Information übermitteln kann unter Benutzung
von Farben und Farbspektren anstatt unter Benutzung von verschiedenen
Mustern.
-
Abweichung
kann unter Benutzung verschiedener Verfahren berechnet werden. Das
einfachste Verfahren arbeitet mit dem Referenzgitter/Referenzmodell
und pro Polygon, findet das nächstliegende
Polygonzentrum, Kante oder Vertex des anderen Gitters/Modells. Dieses
Abstandsergebnis repräsentiert
die Abweichung. Ein komplizierterer Zugang arbeitet auf einer Basis
pro Polygon, wobei die Normalenrichtung des Polygons bestimmt wird
und eine Suche in dieser Richtung nach dem nächstliegenden Polygon in dem
anderen Gitter/Modell durchgeführt
wird, wobei das Abstandsergebnis die Abweichung repräsentiert.
-
4A-4B stellen
die Benutzung der Genauigkeitsanalyseeinrichtung 5 der
vorliegenden Erfindung mit einem Toleranzbereich dar. 4A stellt
eine exemplarische Benutzerschnittstelle 400 dar, welche dazu
benutzt werden kann, um ein Maß eines
Genauigkeitsverlustes für
eine ausgewählte
Operation zu bestimmen, welche unter Benutzung von 3D-Abtastdaten
ausgeführt
werden soll. Die Benutzerschnittstelle 400 kann einem Benutzer
erlauben, den Typ eines Genauigkeitsverlustes auszuwählen, welcher
durch die Genauigkeitsanalyseeinrichtung 5 bestimmt wird.
Zum Beispiel kann die Benutzerschnittstelle 400 dem Benutzer
zu erlauben, anzufragen, dass die Genauigkeitsanalyseeinrichtung
das Ausmaß einer
Krümmung 402,
einer Abweichung 404, disjunkter Enden 406, eines
Umgebungsabbildens (environment mapping) 408, eines Vertexgleichgewichts
(vertex balance) 410 und einer Torsion 412, welches
einer ausgewählten
Operation zuzuordnen sind, verfolgt. Mit anderen Worten bestimmt
die Genauigkeitsanalyseeinrichtung 5 den Genauigkeitsverlust
für jeden
Typ von Genauigkeitsmaß,
welches geschieht/geschehen wird zwischen den Startabtastdaten und
den modifizierten Abtastdaten. In 4A ist
Abweichung 404 gewählt
worden.
-
Die
grafische Benutzerschnittstelle 400 umfasst auch einen
Toleranzparameter 420, welcher durch einen Benutzer ausgewählt und/oder
eingestellt werden kann, welcher anzeigt, wie viel eine Messung
von einem Basislinienwert variieren kann, bevor sie ein Problem
wird. Der Toleranzparameter kann als ein Bereich mit einem unteren 422 und
oberen 424 Parameter ausgedrückt werden. Messungen, welche
außerhalb
des gekennzeichneten Bereichs fallen, können in ihren entsprechenden
Modellbereichen durch die Anzeige einer gekennzeichneten Farbe oder
eines Musters 426 ausgedrückt werden.
-
In 4A sind,
bevor eine Dezimierungsoperation (die benutzerausgewählte Operation)
durchgeführt worden
ist, keine Vertizes geändert
worden, so dass die Abweichung (von dem Ursprünglichen) überall Null ist. Die Toleranz
ist auf [–0,005,
0,005] gesetzt und diese Toleranzen tauchen auf der dargestellten
Indexleiste 440 als Punkte auf einem weißen Hintergrund 442 auf.
Es wird anerkannt werden, dass die Indexleiste 440 auch
Benutzerfarben oder ein anderes Format anstatt Muster benutzen könnte. Die
grafische Benutzerschnittstelle 400 zeigt ein Modell 430 an,
welches ausschließlich
aus Punkten auf einem weißen
Hintergrund besteht, weil die Abweichung überall Null ist (und daher
innerhalb der Toleranz).
-
Die
Anwendung des Befehls zum Editieren von Abtastdaten (Gittereditierbefehl) "dezimiere (decimate)" beeinflusst das
Gitter und so verfolgt die Genauigkeitsanalyseeinrichtung die Änderungen
zu den originalen Abtastdaten/Startabtastdaten. Wie in 4B gezeigt,
ist das dezimierte Gitter nun außerhalb der Toleranz in einigen
Bereichen 450, welche mit verschiedenen Mustern dargestellt
sind. Obwohl viel des Modells in den ursprünglichen Punkten auf weißem Hintergrund
verbleibt, zeigen Flecken anderer Muster, dass es einige Bereiche
gibt, welche außerhalb
der Toleranz liegen. Die Bereiche außerhalb der Toleranz werden
auf das geeignete Muster abgebildet, welches auf der Indexleiste 440 gezeigt
ist. Diese grafischen Änderungen
fungieren als eine Warnung um zu zeigen, dass der Prozess eines
Editierens der Abtastdaten zu einer Abweichung in einigen Bereichen geführt hat,
welche außerhalb
der vorbestimmten Toleranz von [–0,005, 0,005] liegen.
-
In
einer Ausführungsform
ist dem Benutzer erlaubt, eine Option auszuwählen, um den Toleranzbereich zu
zeigen. Das Zeigen der Toleranz ändert
die Farbkarte (oder einen anderen Typ einer benutzten Kennzeichnung)
der Abweichung oder eines anderen gewählten Typs (umfassend Krümmung, Torsion,
etc.). Es berührt nicht
die Toleranz, sondern nur das Anzeigeverfahren. Der Benutzer hat
auch die Möglichkeit,
andere Toleranzeinstellungen zu ändern
und kann auswählen,
andere Maße
zu kontrollieren, welche von den Abtastdaten berechnet sind, wie
etwa Krümmung,
Abweichung, Vertexgleichgewicht, etc., wie es geeignet für eine bestimmte Stufe
eines Editierens von Abtastdaten ist. Zum Beispiel stellt 5 ein
Modell 500 dar, auf welches eine benutzerausgewählte Glättungsfunktion
angewendet worden ist, was zu einer erheblichen Deformation führt. Die Wirkung
der Glättungsoperation
ist, dass alle Punkte des Modells nun weit außerhalb der Toleranz liegen
und das Modell ist daher mit dem entsprechenden Muster auf der Indexleiste 502 dargestellt,
hier ein schwarzes Muster aus diagonalen Linien 504. In
alternativen Ausführungsformen
können
auch Farben oder andere Kennzeichnungen benutzt werden anstatt von
Mustern, um den Bereich zu bezeichnen, welcher außerhalb
der Toleranz ist.
-
Die
Genauigkeitsanalyseeinrichtung 5 ermöglicht die Anzeige von Genauigkeitsverlust,
welcher benutzerausgewählten
(oder programmtechnisch gewählten)
Operationen zuzuordnen ist, welch unter Benutzung von 3D-Abtastdaten
durchgeführt
werden. Die Genauigkeitsanalyseeinrichtung 5 zeigt die Abweichung (oder
ein anderes Maß,
welches durch die Abtastdaten impliziert ist, wie etwa Krümmung) für viele
Typen von Operationen eines Editierens von Abtastdaten an. Beispielhafte
Operationen zum Editieren von Abtastdaten umfassen Dezimieren, Unterteilen,
Glätten,
Bereinigen, Auflegen eines neuen Gitters, Entfernen von Merkmalen,
Ausfüllen
von Löchern,
Glätten
einer Begrenzung, etc. Eine Indexkarte, wie etwa eine Farbkarte,
wird auf das Modell angewendet, um das Ausmaß der bestimmten Abweichung
(oder ein anderes Maß)
zu zeigen. Wenn eine Einstellung ausgewählt worden ist, den Toleranzbereich
zu zeigen, dann werden den Abweichungen (oder ein anderen Maß) innerhalb
des vorher gesetzten Toleranzbereichs die Toleranzfarbe, das Muster oder
ein anderer Kennzeichner gegeben. Wenn das angezeigte Modell nicht
so angezeigt ist, um der Toleranzfarbe, dem Muster oder einem anderen
Kennzeichner zu entsprechen, fungiert die Anzeige als eine visuelle Warnung,
um anzuzeigen, dass Teil des Modells außerhalb einer Toleranz liegt.
-
Unterteilen
bricht ein einzelnes Polygon in viele Polygone und ist das Gegenteil
einer Dezimierung. Glätten
in seiner einfachsten Form schaut nach einem kleinen Bereich des
Modells (z.B. in einem Gittermodell nach einem Dreieck, welches
durch drei Dreiecke umgeben ist, insgesamt nach vier Dreiecken)
und mittelt die Position des mittleren Dreiecks und die Größe basierend
auf den umliegenden Dreiecken. Glätten entfernt hochfrequentes
Rauschen und hochfrequente Wellen in dem Gitter. Bereinigen bezieht
sich auf Fehler in dem Gitter. Fehler umfassen Kanten, welche sich
nicht entsprechen, kreuzende Polygonflächen, oder Kanten, welche nicht
eins-zu-eins sind. Bereinigen ist ein automatischer Prozess. Füllen von
Löchern
erkennt Randpolygonkanten und füllt
das Loch flach über
das Loch oder basierend auf einer Krümmung oder basierend auf einer Kombination
einer Krümmung
und einem flachen Füllen
eines Loches. Neuauflegen eines Gitters reorganisiert die Vertizes
des Polygons, um die Dreiecke in Form (gleichschenklig) und Größe auszugleichen.
Entfernen von Merkmalen entfernt Logos oder andere Merkmale, welche
in eine abgetastete Platte eingeschrieben sind, von den Polygondaten
automatisch. Die Genauigkeitsanalyseeinrichtung kann auch bestimmte
außerhalb-einer-Toleranz-Information
benutzen, um den Benutzer darüber
zu unterrichten, dass ein Gitter außerhalb einer Toleranz ist.
Die Benachrichtigung kann über
eine Dialogbox, ein Pop-Up-Menü,
eine Liste oder ein anderes Mittel durchgeführt werden.
-
Der
Benutzer und/oder die Genauigkeitsanalyseeinrichtung 5 können die
Abweichungsinformation, welche durch die Genauigkeitsanalyseeinrichtung
bestimmt worden ist, benutzen, um Steuerungen und Parameter zum
Editieren von Abtastdaten einzustellen, um so den Genauigkeitsverlust
zu minimieren, welcher dem Ausführen
der gewünschten
Funktionen zum Editieren von Abtastdaten zuzuordnen ist. Diese Parametereinstellungen
könnten
automatisch oder manuell gewählt
werden. Zum Beispiel kann Software automatisch die Dezimierungsparameter
einstellen, um Dezimierungseffekte zu maximieren (kleinere Datengröße), während eine
Toleranz über
das gesamte Modell erhalten bleibt (Modellabweichung über das
gesamte Modell oder einen Bereich des Modells) derart, dass die
Abweichung nicht die Toleranz überschreitet.
-
In
einem Beispiel eines Einstellens von Abtastdateneditierparametern
könnte
ein Benutzer eine Zielzahl von Polygonen wünschen, welche ziemlich klein
ist. X-Levelglättung
kann angewendet werden, um hochfrequentes Rauschen zu vermindern.
Eine Y-Level-Dezimierung kann angewendet werden, um die Zahl von Polygonen
zu erniedrigen. Der Benutzer kann wünschen, die Genauigkeit eines
Levels ZZ beizubehalten (ein Anteil (das ist 100 %) innerhalb der
Toleranz). Der Benutzer kann eine variable DATA VALUE definieren,
eine Funktion sowohl von X als auch von Y zu sein. Der Benutzer
kann die kleinste Menge an Polygonen wünschen, während das Ausmaß einer
Glättung
erhöht
wird. Der Benutzer würde
daher versuchen, DATA VALUE durch Einstellen von X & Y mit der Toleranznebenbedingung
ZZ zu maximieren. Eine einfachere Version dieses Beispiels kann
mit der Benutzung von nur einer Operation, das ist Glätten, gesehen
werden. DATA VALUE wird X, so dass der Benutzer versuchen würde, so
viele Glättungsoperationen
wie möglich
durchzuführen,
während er
innerhalb der Toleranznebenbedingung ZZ bleibt.
-
Wie
oben bemerkt, gibt es andere Typen von Genauigkeitsmessungen neben
einer Abweichung, welche durch die Genauigkeitsanalyseeinrichtung 5 bestimmt
werden können.
Beispielhafte zusätzliche
Typen von Genauigkeitsmessungen, welche durch die Genauigkeitsanalyseeinrichtung 5 bestimmt
werden können, umfassen
Krümmung,
Umgebungsabbildung, Vertexgleichgewicht und Torsion.
-
Krümmung ist
berechenbar für
Gitter/Oberflächen
und Kurven. Für
Gitter/Oberflächen,
ist es im wesentlichen die zweite diskrete Raumableitung des Gitters
oder die zweite kontinuierliche Raumableitung einer Oberfläche. Für Kurven
ist es die zweite kontinuierliche Kurvenableitung der Kurve. Die
Unterscheidung zwischen diskret und kontinuierlich ist, dass Kurven
(interpoliert/spline) und Oberflächen
mathematische Repräsentationen
sind. Gitter haben keine mathematische Repräsentation, außer dass
jedes Polygon ein Dreieck und eben ist. Die mathematische Repräsentation
von Oberflächen
bedeutet, dass die Genauigkeitsanalyseeinrichtung 5 kontinuierliche
erste, zweite, etc. Ableitungen des Gitters auswerten kann. Diese
sind kontinuierlich im Gegensatz zu diskret. Um die Krümmung eines
Gitters zu bestimmen, nimmt die Genauigkeitsanalyseeinrichtung 5 einige
Polygone als Stichprobe. Die Stichprobe wird dann in ein Krümmungsmaß übersetzt,
welches repräsentativ
für den
lokalen Gitterbereich ist.
-
In
einer Ausführungsform
ist eine Benutzerschnittstelle für
Krümmung
fast identisch mit der Benutzerschnittstelle welche oben diskutiert
wurde, wenn das Ausmaß einer
Abweichung bestimmt wird, welche durch eine ausgewählte Operation
herbeigeführt
ist. Der Benutzer kann Toleranzen einer erlaubten Krümmung einstellen,
und die Farbkarte (oder ein anderer Typ eines Kennzeichners/einer
Fehlerkarte) würde
angewendet abhängig
von den Krümmungstoleranzeinstellungen.
Krümmung
kann auf einem Modell gezeigt werden. Toleranzparameter ähnlich zu
denen welche für
Abweichung diskutiert sind, können
ausgewählt werden
und beeinflussen die Farbe oder einen anderen Typ eines Kennzeichners,
welcher auf dem Modell angezeigt ist.
-
6 stellt
eine exemplarische Benutzerschnittstelle 600 dar, welche
durch die Genauigkeitsanalyseeinrichtung 5 erzeugt ist,
welche einem Benutzer ermöglicht,
Krümmungsgenauigkeit
durch Auswählen
eines Toleranzbereichs 602 zu verfolgen. 7A und 7B stellen
Krümmung
dar, welche auf Kurven angewendet ist. 7A stellt
eine Kurve 702 dar, welche auf einem Gitter 700 gezeichnet
ist. 7B zeigt, dass Krümmung 712 durch einen
Benutzer in der Benutzeroberfläche 710 gewählt worden
ist zusammen mit einigen Toleranzeinstellungen 714. Die
Modellansicht 720 gibt wieder, wo die Krümmung innerhalb
der Toleranz von [–10, 10,0000]
(umkreiste Bereich 725) ist. Es wird anerkannt werden,
dass die Bereiche, welche bestimmt sind, innerhalb des spezifizierten
Toleranzbereiches zu sein, auch unter Benutzung von Farbe bezeichnet
werden können.
-
Ein
Benutzer kann auch die Genauigkeitsanalyseeinrichtung 5 benutzen,
um Toleranzen für
Torsion an Kurven einzustellen. Torsion ist eine mathematische Charakteristik
einer Kurve und quantifiziert, wie viel die Dreh-"Richtung" der Kurve sich bei
Orten um die Kurve verändert.
Torsion kann definiert werden als "die Änderungsrate
der oskulierenden Ebene einer Raumkurve". Die Torsion τ ist positiv für eine rechtshändige Kurve und
negativ für
eine linkshändige
Kurve. Eine Kurve mit einer Krümmung
K<>0 ist eben, wenn τ = 0 (From
Mathworld, http://mathworld.wolfram.com/Torsion.html). Eine Helix
hat eine große
Torsion, weil sie niemals in einer einzelnen Ebene ist. 8 zeigt
eine Raumkurve mit einer Torsionsmusterkarte 800. Toleranzparameter für Torsion,
welche auf Kurven angewendet werden, verhalten sich auf dieselbe
Weise wie für
Krümmung,
welche auf Kurven angewendet wird. Ähnlich zu Abweichungsberechnungen
eines Splines oder einer interpolierten Kurve werden die Krümmungs-
und Torsionsberechnungen an einem Spline oder einer interpolierten
Kurve dadurch berechnet, dass die Kurve in viele Teile zerlegt wird
und die Krümmung
oder Torsion in dem kleineren Teil berechnet wird. Je mehr die Kurve
unterteilt wird, desto mehr Krümmungs-
und Torsionsberechnungen sind erforderlich.
-
In
einer weiteren Ausführungsform
kann die Genauigkeitsanalyseeinrichtung 5 dazu benutzt
werden, um disjunkte Enden von Kurven zu identifizieren. Wenn sich
Kurven nicht treffen, sind sie disjunkt. 9 stellt die
Benutzung der Genauigkeitsanalyseeinrichtung dar, um disjunkte Kurvenenden
zu identifizieren. Eine grafische Benutzerschnittstelle 900 ist
bereitgestellt, in welcher der Benutzer einen "disjunkte Enden"-Befehl 902 ausgewählt hat
und eine annehmbare Toleranz 904 bereitgestellt hat.
-
Die
Genauigkeitsanalyseeinrichtung 5 bestimmt und identifiziert
die Kurvenendpunkte, welche innerhalb der Toleranz 906 fallen.
Diese Funktion kann eine besondere Verwendung haben, wenn es viele
Kurven gibt und die Endpunkte sehr nahe beieinander liegen (aber
noch disjunkt).
-
Die
Genauigkeitsanalyseeinrichtung 5 kann auch dazu benutzt
werden, eine Kontinuität
in einem CAD-Modell zu messen. Kontinuität misst die Positionsabweichung
oder Tangentenvektorabweichung zwischen benachbarten Begrenzungskanten
von angrenzenden Oberflächen.
Ein Benutzer kann ein Positionsverfahren (G0-Kontinuität) und/oder
ein Tangentenverfahren (G1-Kontinuität) von einer bereitgestellten
Benutzerschnittstelle auswählen.
-
10 stellt
die Benutzung der Genauigkeitsanalyseeinrichtung 5 dar,
um Umgebungsabbildung durchzuführen.
Umgebungsabbildung setzt eine Oberfläche in eine virtuelle Umgebung
(wie etwa einen Raum mit Streifen) und schaut nach der Reflexion
des Raumes von den Oberflächen 1000.
Weil die Oberflächen
kontinuierlich sind und mathematisch repräsentiert, ist die Reflexion
der Linien kontinuierlich, obwohl nicht immer sehr glatt.
-
Toleranzeinstellungen
sind nicht anwendbar in Umgebungsabbildungen. Bereiche, wo die Streifen nicht
glatt sind, zeigen ein Fehlen von Genauigkeit an. Umgebungsabbilden
ist anwendbar, nachdem Oberflächen
erzeugt worden sind, und würde
daher am besten anwendbar in einer Stufe einer Genauigkeitsanalyse eines
erneuten Entwurfs einer CAD-Oberfläche sein.
-
Wie
oben bemerkt, kann die Genauigkeitsanalyseeinrichtung 5 Abweichung
auf einem Gitter oder einem anderen Typ von Modell, wie etwa einem
Punktwolkemodell, bestimmen. Diese Operation vergleicht den Abstand
von einem Modell zu einem anderen Modell (welches als ein Ergebnis
einer ausgewählten
Operation erzeugt wurde) um das gesamte Modell herum, um die Abweichung
zu identifizieren. Weiterhin kann die vorliegende Erfindung die
Abweichung berechnen, welche durch nachfolgende Operationen verursacht
sind oder zwischen einem momentanen Zustand eines Modells und dem
designierten "ursprünglichen" oder "Referenz"-Modell.
-
-
Nachdem
der Dezimierungsbefehl ausgeführt
worden ist und der momentane Zustand (Modellzustand 4) erzeugt und
vorab betrachtet worden ist, kann ein Benutzer die Genauigkeitsanalyseeinrichtung 5 benutzen, um
die Abweichung zwischen dem momentanen Zustand des Modells und dem
letzten/vorherigen Zustand des Modells (Modellzustand 3) oder dem "Referenz"-Zustand (Modellzustand
1) analysieren.
-
Die
Genauigkeitsanalyseeinrichtung 5 kann auch eine grafische
Benutzerschnittstelle bereitstellen, welche einem Benutzer erlaubt,
die Benennung des Referenzzustands zu ändern. Der Benutzer könnte Modellzustand
2 dem Referenzzustand zuteilen. Solch eine Zuteilung würde Daten
des Modellzustands 2 in Speicher platzieren, so dass Abweichungen
berechnet werden können.
-
-
In
dem momentanen Zustand kann der Benutzer nun Abweichungen zwischen
dem letzten/vorherigen Zustand (Modellzustand 3) oder dem Referenzzustand
(Modellzustand 2) analysieren.
-
Eine
Ausführungsform
der vorliegenden Erfindung kann auch benutzt werden, Genauigkeitsverlust
zu verfolgen, welcher durch Ausführen
von Operationen zum CAD-Remodellieren bewirkt ist. Wenn der Benutzer irgend
welche CAD-Modellierungsbefehle
ablaufen lässt,
ist die Genauigkeitsanalyseeinrichtung 5 verfügbar. In
einer Ausführungsform
stellt das Befehlsdialogfenster einen grafischen Vorschaubefehl
bereit, welcher dem Benutzer erlaubt, das Ergebnis des Befehls vorab
anzuschauen. Wenn das Ergebnis vorab angeschaut wird, kann der Benutzer
auch einen Genauigkeitsverlust vorher anschauen, welche durch Fehlerkarten
illustriert sind, und Benutzer können
Parameter einstellen, um den Genauigkeitsverlust zu minimieren.
Die Parameter können
auch programmtechnisch ohne Benutzerintervention eingestellt werden.
-
Genauigkeitsverlust
in Operationen eines CAD-Remodellierens ist die Abstandsabweichung
zwischen den ursprünglichen
3D-Abtastdaten und
dem revers konstruierten CAD-Teil.
-
11A-11C zeigen die Benutzung der
Genauigkeitsanalyseeinrichtung 5 mit Operationen zum CAD-Remodellieren. Wenn
ein Kommando zum automatischen Erstellen einer Oberfläche durchgeführt wird, werden
Oberflächen
um das gesamte Modell angepasst. 11A zeigt
ein Startmodell 1100 und 11B zeigt
das Modell 1110 nach der Ausführung des Befehls zum automatischen
Erstellen von Oberflächen.
Der Befehl zum automatischen Erstellen von Oberflächen erzeugt
automatisch Oberflächen,
welche auf das Modell durch Minimieren eines Oberflächen/Modellfehlers
angepasst sind. Die Oberflächen
besitzen Übereinstimmung
in Position und Tangente.
-
11C zeigt eine Anzeige, welche durch die Genauigkeitsanalyseeinrichtung 5 erzeugt
ist, welche die Bereiche einer Abweichung 1120 zwischen
der Oberfläche
und dem Startmodell identifiziert, welche eine angezeigte Toleranz überschreiten.
Das Toleranzmuster in dem dargestellten Beispiel besteht aus weißen Punkten
auf einem schwarzen Hintergrund. Die anderen Muster zeigen an, dass
die Oberflächenabweichung die
benutzergewählte
Toleranz (das ist: [–0,005,
0,005]) für
diese gemusterten Bereiche überschritten
hat. Abweichung, welche Operationen zum CAD-Remodellieren zuzuordnen ist, kann durch
die Genauigkeitsanalyseeinrichtung 5 unter Benutzung verschiedener
Verfahren berechnet werden. Ähnlich
zu den Techniken, welche oben beschrieben worden sind für die Techniken
zum Editieren von Abtastdaten, kann die Genauigkeitsanalyseeinrichtung 5 von
dem Referenzmodell, pro Polygon, das Zentrum des nächsten Polygons,
Kante oder Vertex des anderen Modells finden. Dies ist der bestimmte
Abweichungswert. In einem weiteren Verfahren kann die Abweichung
pro Polygon berechnet werden durch Bestimmen der Normalenrichtung
des Polygons. Die Genauigkeitsanalyseeinrichtung sucht dann in dieser
Richtung nach dem nächstliegenden
Polygon in dem anderen Modell. Dies ist der bestimmte Abweichungswert.
-
Eine
weitere gewöhnliche
Operation beim CAD-Remodellieren ist, ein Setzen/Zeichnen von Kurven auf
die Abtastdaten. Die vorliegende Erfindung kann die Abweichung der
Kurve von den ursprünglichen
Abtastdaten in einer ähnlichen
Weise überwachen.
Eine interpolierte Kurve 1200 ist in 12A gezeigt. Sie ist auch als ein Spline bekannt.
Splines sind inhärent
glatt und erfordern nur Steuerungspunkte (und Endbedingungen), um
sie zu erstellen. Acht (8) Eingabepunkte sind notwendig, um die
dargestellte Kurve 1200 zu erzeugen. Die gezeichnete Kurve
weicht von den Abtastdaten ab und diese Abweichung wird identifiziert
wie durch die Musterleiste, welche in 12B gezeigt
ist, abgebildet ist. Wenn ein Toleranzbereich vorgeschrieben war
(das ist: [–0,01,
0,01]) und der Schalter "zeige
Toleranzbereich (show tolerance range)" angeschaltet war, dann könnte der
Benutzer erwarten, dass etwas dieser Kurve innerhalb der Toleranz 1210 ist
und daher geeignet gemustert ist (weiße Punkte auf schwarzem Hintergrund).
-
Kurvenabweichung
ist ein lokales Maß entlang
der Kurve. Die Kurve ist in viele kleine Teile unterteilt und die
Abweichung wird berechnet. Die Operation führt zu viel mehr unterteilten
Teilen als die ursprünglichen 8 Interpolationspunkte
der Kurve. Es gibt somit viele Abweichungsanalysepunkte. Kurvenabweichung
wird durch den kleinsten Abstand zwischen der Kurve (Teil der Kurve,
wo die Abweichung berechnet wird) und dem Gittermodell/Punktwolkemodell
berechnet.
-
13A-13C zeigen die Benutzung der
Genauigkeitsanalyseeinrichtung 5 mit einem CAD-Teil, während 14A-14C den Prozess zeigen, CAD-Parameter
einzustellen, um Genauigkeitsverlust zu minimieren. Die Abweichung
des CAD-Raummodells von den ursprünglichen Abtastdaten/Startabtastdaten
ist häufig
ziemlich groß.
-
13A stellt die ursprünglichen Abtastdaten/Startabtastdaten 1300 dar,
während 13B das Raummodell 1310 zeigt, welches
basierend auf den Abtastdaten erzeugt ist. 13C zeigt
eine angezeigte Fehlerkarte 1320, welche durch die Genauigkeitsanalyseeinrichtung 5 der
vorliegenden Erfindung erzeugt werden kann, um die Abweichung zwischen
den ursprünglichen
Abtastdaten 1300 und dem Raummodell 1310 zu zeigen.
-
Die
Genauigkeitsanalyseeinrichtung 5 kann eine Optimierungsroutine
ablaufen lassen, wie etwa eine Fehlerminimierungsroutine, um die
Parameter des CAD-Raummodells 1310 einzustellen
(zum Beispiel die Höhe,
Breite und Position des Entwurfsprofils 1400 für die Extrusion,
wie in 14A gezeigt). Die Dimensionen werden
eingestellt, um den Gesamtfehler zu minimieren und um die besten
Parameter für
das CAD-Modell zu erreichen. Die Optimierungsroutine führt zu einem
neuen Raummodell 1410 (14B),
für welches
die Gesamtabweichung vermindert ist 1420, wie in 14C gezeigt.
-
Laufen
lassen einer rechenintensiven Fehlerminimierungsroutine kann basierend
auf einer visuellen Kennzeichnung, welche durch die Genauigkeitsanalyseeinrichtung 5 bereitgestellt
ist, oder einem anderen Kennzeichner, dass die momentanen Daten
außerhalb
einer Toleranz liegen, sein. Die Genauigkeitsanalyseeinrichtung 5 kann
die Wirkung der Fehlerminimierungsroutine zeigen. Die Fehlerminimierungsroutine
kann innerhalb der Software durchgeführt werden oder kann manuell
durchgeführt
werden, um die Parameter einzustellen, um den Genauigkeitsverlust
zu minimieren. Einstellung der Dimensionen, um die Gesamtabweichung zu
minimieren, ist eine einer Anzahl von Optionen. Zum Beispiel könnte der
Benutzer auswählen,
die CAD-Parameter so einzustellen, um den Fehler über einen
ausgewählten
Bereich oder Bereiche zu minimieren anstatt über das gesamte Modell.
-
Ähnlich zu
den Techniken zum Editieren von Abtastdaten, welche oben diskutiert
sind, wobei der Benutzer versucht, eine variable CAD VALUE zu maximieren
durch Modifizieren von X & Y,
während
er innerhalb der Nebenbedingung von ZZ bleibt, kann der Benutzer
eine ähnliche
Maximierung einer Genauigkeit (oder Minimierung eines Fehlers) für Operationen
zum CAD-Remodellieren durch Einstellen von Parametern des Modells
durchführen.
In einer exemplarischen Ausführungsform:
- 1) Der Benutzer erzeugt eine Extrusion unter
Benutzung eines Basisentwurfs. Der Benutzer nennt die Dimensionen
eines Rechtecks X & Y
und den Extrudierabstand Z; X, Y & Z
sind die Breite, Tiefe und Höhe der
rechteckigen Box. Dieses sind die Parameter des Modells.
- 2) Der Benutzer zwingt inhärent
die Entwurfslinien senkrecht zueinander zu sein, wobei andere Nebenbedingungen
hinzugefügt
werden könnten.
- 3) Der Benutzer kann wünschen,
den Fehler über
das gesamte Modell zu minimieren (die Abweichung zu minimieren).
Alternativ kann der Benutzer auswählen, den Fehler stattdessen über Bereiche
des Modells zu minimieren. Fehlerminimierung ist ähnlich zu
CAD VALUE.
- 4) Der Benutzer kann Parameter X, Y, Z einstellen unter Benutzung
eines multivariablen Optimierungsprozesses, um die Abweichung zu
minimieren (oder den CAD VALUE zu maximieren).
- 5) Eine multivariable Optimierung wird in verschiedenen nummerischen
Einstellungen gesehen.
a. Anpassen einer geraden Linie an Daten:
i.
Geradengleichung: y = m·x
+ b, wobei b und m Variablen sind, und y und x die zwei Datensätze des
Benutzers sind.
ii. Der Benutzer kann Startwerte für m & b wählen. Fehler
ist die Differenz (oder "quadratischer" Abstand; Summe von
quadratischen Abständen) zwischen
den y-Werten des Datensatzes und den berechneten y-Werten unter
Benutzung der Startwerte für
m & b und x.
iii.
Der Benutzer stellt m & b
ein, bis der Fehler minimiert ist.
iv. Dies ist die kleinste-Quadrate-Minimierung
des Fehlers oder eine multivariable Optimierung.
-
Die
Techniken, welche durch die Genauigkeitsanalyseeinrichtung 5 benutzt
werden, um Operationen zum CAD-Remodelllieren (Abweichung von Oberflächen und
Kurven) durchzuführen,
sind ähnlich
in Konzept zu den Beispielen zum Editieren von Abtastdaten (Abweichung
vor und nach Anwendung von Funktionen zum Editieren von Abtastdaten),
welche oben diskutiert sind.
-
Die
vorliegende Erfindung kann als ein oder mehrere computerlesbare
Programme bereitgestellt sein, welche auf oder in einem oder mehreren
Medien umfasst sind. Die Medien können eine Floppy-Disk, eine
Festplatte, eine Kompakt-Disk,
eine vielfältige
digitale Platte, ein Flash Memory Card, ein PROM, ein RAM, ein ROM,
oder ein Magnetband sein. Im Allgemeinen können die computerlesbaren Programme
in irgend einer Programmiersprache implementiert sein. Einige Beispiele
von Sprachen, welche benutzt werden können, umfassen FORTRAN, C,
C++, C#, oder JAVA. Die Software-Programme
können
auf oder in einem oder mehreren Medien als Objektcode gespeichert
sein. Hardwarebeschleunigung kann benutzt werden und alle oder ein
Teil des Codes kann auf einem FPGA oder auf einem ASIC laufen. Der
Code kann in einer virtuellen Umgebung, wie etwa einer virtuellen
Maschine, laufen. Mehrere virtuelle Maschinen, welche den Code ablaufen
lassen, können
auf einem einzelnen Prozessor ansässig sein.
-
Da
gewisse Änderungen
gemacht werden können,
ohne von dem Geltungsbereich der vorliegenden Erfindung abzuweichen,
ist es beabsichtigt, dass der gesamte Inhalt, welche in der obigen
Beschreibung oder in den begleitenden Zeichnungen gezeigt ist, als
illustrativ interpretiert wird und nicht in einem wörtlichen
Sinne. Fachleute der Technik werden realisieren, dass die Folge
von Schritten und Architekturen, welche in den Figuren illustriert
ist, verändert
werden kann, ohne von dem Geltungsbereich der vorliegenden Erfindung
abzuweichen und dass die Illustrationen, welche hierin enthalten
sind, einzelne Beispiele einer Vielzahl von möglichen Darstellungen der vorliegenden
Erfindung sind.
-
Bedeutung
englischer Begriffe in den Figuren
-
- Decimate Dezimieren
- Model View Modellansicht
- Index Bar Indexleiste
- Accuracy Analyzer Genauigkeitsanalyst
- None Nichts
- Curvature Krümmung
- Deviation Abweichung
- Disjoint Ends Disjunkte Enden
- Environment Mapping Umgebungsabbilden
- Vertex Balance Vertexgleichgewicht
- Torsion Torsion
- Tolerance Toleranz
- Low niedrig
- High hoch
- Color Farbe
- Show Tolerance Range Zeige Toleranzbereich
- Vector Multiplier Vektormultiplikator
- Value Wert
- Smooth Glätten