DE60008201T2 - Übersetzung von Daten mit elektronischen Bildern - Google Patents

Übersetzung von Daten mit elektronischen Bildern Download PDF

Info

Publication number
DE60008201T2
DE60008201T2 DE2000608201 DE60008201T DE60008201T2 DE 60008201 T2 DE60008201 T2 DE 60008201T2 DE 2000608201 DE2000608201 DE 2000608201 DE 60008201 T DE60008201 T DE 60008201T DE 60008201 T2 DE60008201 T2 DE 60008201T2
Authority
DE
Germany
Prior art keywords
views
view
data
dimensional
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE2000608201
Other languages
English (en)
Other versions
DE60008201D1 (de
Inventor
Ilya Baran
Christopher Ryan
Ricardo Chin
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.)
Dassault Systemes SolidWorks Corp
Original Assignee
SolidWorks 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 SolidWorks Corp filed Critical SolidWorks Corp
Publication of DE60008201D1 publication Critical patent/DE60008201D1/de
Application granted granted Critical
Publication of DE60008201T2 publication Critical patent/DE60008201T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/422Technical drawings; Geographical maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

  • Diese Anmeldung ist eine continuation-in-part (Ausscheidungsanmeldung) der US-Patentanmeldung Nr. 09/394 824 (anhängig), angemeldet am 13. September 1999.
  • Hintergrund der Erfindung
  • 1. Gebiet der Erfindung
  • Diese Anwendung bezieht sich auf das Gebiet von computergestützter Konstruktion und insbesondere auf das Gebiet einer computer- bzw. rechnergestützten Modellerstellung.
  • 2. Beschreibung des Standes der Technik
  • Software für computergestützte Konstruktion kann dazu eingesetzt bzw. verwendet werden, um Computerzeichnungen von Gegenständen bzw. Objekten, auf welche als "Modelle" bezug genommen wird, zu konstruieren und zu manipulieren bzw. handzuhaben. Dem Anwender wird eine Anzeige des Modells auf dem Computerbildschirm vorgelegt und er manipuliert das Modell unter Benützung von Tastaturbefehlen, einer Kombination von Maus/Cursor- bzw. Eingabezeiger und anderer verschiedenartiger Eingabemittel. Veränderungen an dem Modell spiegeln sich in der Bildschirmanzeige des Modells wieder, sobald der Anwender die Veränderungen vornimmt, oder alternativ in Beantwortung eines durch den Anwender eingegebenen spezifischen Befehls zur Aktualisierung der Bildschirmansicht bzw. -anzeige des Modells. In jedem Fall dient die Bildschirmanzeige des Modells als die Hauptquelle für die Modellinformation an den Anwender bzw. Benutzer und als Anwenderreferenz für ein Eingeben und Verändern von Eigenschaften des Modells.
  • Obwohl auf dreidimensionalen Modellen basierende computergestützte Konstruktion sich zunehmend verbreitet, fahren Ingenieure und andere Konstrukteure damit fort, konventionelle, zweidimensionale Konstruktionszeichnungen in vielen Fällen einzusetzen bzw. zu verwenden. Zweidimensionale Konstruktionszeichnungen weisen eine Anzahl von Schwierigkeiten auf, von welchen eine jene ist, daß diese selbst für Experten schwierig zu lesen sind. Als zweidimensionale Wiedergaben von verschiedenen Ansichten von dreidimensionalen Objekten trennen die Zeichnungen notwendigerweise relevante Information über ein vereinheitlichtes Objekt in eine Vielzahl von verschiedenen Ansichten. Diese Teilung bzw. Trennung macht es für den Anwender notwendig, die vielfachen Ansichten zu verstehen, anstatt das Objekt als Ganzes zu betrachten. Zusätzlich können einige Ansichten, wie z. B. Teilschnitte, nicht jeder Ansicht entsprechen, welche tatsächlich durch einen Betrachter eines realen Objekts gesehen würde, so daß diese von der Seite des Anwenders eine beträchtliche Vorstellungskraft erfordern. Da bzw. wenn die Komplexität eines modellierten Objekts zunimmt und da bzw. wenn die Anzahl von Ansichten zunimmt, kann es sehr schwierig sein, die Beziehung von unterschiedlichen Ansichten und die Beziehung von unterschiedlichen Komponenten innerhalb unterschiedlicher Ansichten zu verfolgen.
  • US-A-4 933 865 ist auf ein automatisches Erkennen von Gestalten bzw. Formen in einer zweidimensionalen Zeichnung gerichtet, so daß diese Gestalten automatisch als 2D CAD System-Objekte eingegeben werden können. Dieses Dokument offenbart, wie man die Gestalten in einer 2D Zeichnung erkennen und diese in ein entsprechendes CAD System-Objekt konvertieren kann. Es macht dies durch ein Analysieren eines Bilds, ein Erkennen von Vektorformen, ein Bestimmen einer Symmetrie und dadurch ein Erkennen einer Figur. Das Ziel ist es, eine Konversion bzw. Umwandlung einer existierenden Zeichnung in eine CAD Datei zu automatisieren, um diese weiterzuverarbeiten.
  • Trotz dieser Probleme bleiben zweidimensionale Zeichnungen eine Standardmodelltechnik für einen weiten Bereich von Objekten in vielen Gebieten. Demgemäß besteht ein Bedarf für eine Vereinfachung eines rechnergestützten Modellierens von zweidimensionalen Zeichnungen.
  • Zusammenfassung der Erfindung
  • Gemäß der vorliegenden Erfindung, wie diese in den angeschlossenen Ansprüchen definiert wird, beinhaltet die Verarbeitung von Datenobjekten einer zweidimensionalen Zeichnung ein Markieren von Datenobjekten entsprechend einer Notierung bzw. Anmerkung, ein Trennen bzw. Teilen der Zeichnung in eine Vielzahl von Ansichten und ein Zuordnen von jedem dieser Datenobjekte entsprechend einer Notierung zu einer der Ansichten. Ein Aufteilen bzw. Trennen der Zeichnung in eine Vielzahl von Ansichten kann ein Konstruieren von einer Vielzahl von Schnittflächen bzw. Schnitten und Annäherungsgraphen bzw. Annäherungskurven und ein Benützen der Kurven bzw. Graphen einschließen, um eine Vielzahl von verbundenen Sätzen zur Verfügung zu stellen, wo jeder Satz einer der Ansichten entsprechen kann. Die Grenzansichten bzw. Randansichten können dadurch identifiziert werden, indem bestimmt wird, welche der Ansichten weniger als eine vorbestimmte Anzahl von Elementen beinhalten, wenigstens zwei andere Ansichten beinhalten und nicht in anderen Ansichten beinhaltet sind.
  • Das Markieren von Datenobjekten entsprechend einer Notierung kann identifizierende bzw. Identifikationspfeile, Trennlinien, Detailkreise und Text beinhalten. Identifikationspfeile können beinhalten ein Detektieren bzw. Erfassen von drei Linien, welche ein Dreieck und dreiseitige Polygone bilden. Gleichschenkelige Dreiecke und dreiseitige Polygone entsprechend gleichschenkeligen Dreiecken können als Pfeile identifiziert werden, wenn die eine Seite, welche eine unterschiedliche Länge als zwei andere Seiten hat, kürzer ist als die beiden anderen Seiten. Vor einem Markieren von Datenobjekten entsprechend einer Notierung können degenerierte Objekte entfernt werden.
  • Kurze Beschreibung der Zeichnungen
  • 1 stellt die Systemkomponenten eines computer- bzw. rechnergestützten Modelliersystems dar.
  • 2 stellt einen Computerbildschirm mit einem Modellierfenster zum Darstellen bzw. Anzeigen eines zu betrachtenden Objekts dar.
  • 3 und 4 stellen eine Vielzahl von Ansichten eines Beispiels einer Konstruktionszeichnung in einem Modellierfenster eines Computersystems dar, wie z. B. jenes von 1.
  • 5 stellt ein vereinfachtes Schema einer Konstruktionszeichnung in dem Modellierfenster eines Computerbildschirms dar.
  • 6 stellt die Vorderansicht von 3 und eine Schnittansicht von 4 nach einem Komplettieren eines virtuellen Faltprozesses der vorliegenden Systeme und Verfahren dar.
  • 7 stellt Ansichten eines Objekts bzw. Gegenstands in einem Modellierfenster eines Computerbildschirms bzw. Rechnerbildschirms dar, um einen Hyperlink-Prozessor der vorliegenden Systeme und Verfahren zu illustrieren bzw. zu erläutern.
  • 8 stellt ein Objekt in einem Modellierfenster eines Computerbildschirms dar, um einen Zeigerprozeß der vorliegenden Systeme und Verfahren zu illustrieren.
  • 9 stellt ein vereinfachtes solides bzw. starres Objekt in einem Modellierfenster eines Computerbildschirms dar.
  • 10 stellt ein schematisches Diagramm mit drei zweidimensionalen Ansichten des Objekts von 9 dar.
  • 11 stellt eine einzelne, hervorgehobene Ansicht nach Drehung des Objekts von 9 dar.
  • 12 und 13 präsentieren jeweils eine dreidimensionale Ansicht eines Pumpengehäuses während einer Drehung und eine zweidimensionale Ansicht, welche entsprechend der Verarbeitung der vorliegenden Erfindung hervorgehoben ist.
  • 14 stellt ein System zum Bereitstellen der Funktionalität der Systeme und Verfahren dar, welche hierin geoffenbart wurden, einschließend eine elektronische Zeichnungsdatei und ein Anzeigeprogramm.
  • 15 stellt eine elektronische Zeichnungsdatei entsprechend der vorliegenden Erfindung dar.
  • 16 ist ein Flußdiagramm, welches die Schritte illustriert, die in Verbindung mit einem Implementieren des Zeigerprozesses werden, welcher in Verbindung mit 10 geoffenbart wurde.
  • 17 ist ein Flußdiagramm, welches die Schritte für ein Implementieren der virtuellen Falteigenschaft anzeigt, welche in Verbindung mit 6, 7 und 8 beschrieben wurde.
  • 18 ist ein Flußdiagramm, welches die Schritte für ein Hyperlinken einer Trennlinie oder eines Detailkreises von einer Ansicht zu einer anderen Ansicht entsprechend der Trennlinie oder dem Detailkreis illustriert.
  • 19 ist ein Flußdiagramm, welches die Schritte illustriert, welche in Verbindung mit dem weiter oben besprochenen Animationsmerkmal durchgeführt werden.
  • 20 ist ein schematisches Diagramm, welches einen Prozeß illustriert, in welchem ein Transformationsprogramm die elektronische Zeichnungsdatei unter Benützung einer zweidimensionalen Datei und gegebenenfalls einer dreidimensionalen Datei erstellt.
  • 21 ist ein Datenflußdiagramm, welches eine Konversion bzw. Umwandlung einer zweidimensionalen Datei in eine Zeichnungsdatei entsprechend der vorliegenden Erfindung illustriert.
  • 22 ist ein Flußdiagramm, welches Schritte illustriert, welche in Verbindung mit der Konversion bzw. Umwandlung einer zweidimensionalen Datei in eine Zeichnungsdatei entsprechend der vorliegenden Erfindung durchgeführt werden.
  • 23 ist ein Flußdiagramm, welches Initialisierungsoperationen bzw. -vorgänge illustriert, welche in Verbindung mit der Konversion einer zweidimensionalen Datei in eine Zeichnungsdatei entsprechend einem Aspekt der vorliegenden Erfindung durchgeführt werden.
  • 24 ist ein schematisches Diagramm, welches einen Schnittflächen/Annäherungsgraphen illustriert, welcher durch das entsprechend eines Aspekts der vorliegenden Erfindung zur Verfügung gestellte System eingesetzt wird.
  • 25 ist ein Flußdiagramm, welches Schritte illustriert, welche in Verbindung mit einem Trennen bzw. Teilen von graphischen Einheiten entsprechend einem Aspekt der vorliegenden Erfindung durchgeführt werden.
  • 26 ist ein Flußdiagramm, welches Schritte illustriert, welche in Verbindung mit einem Detektieren bzw. Erfassen von Randansichten durchgeführt werden.
  • 27 ist ein Flußdiagramm, welches Schritte illustriert, welche in Verbindung mit einem Konstruieren von verbundenen Sätzen durchgeführt werden.
  • 28 ist ein Flußdiagramm, welches Schritte illustriert, welche in Verbindung mit einer übereinstimmenden Notierung durchgeführt werden.
  • 29 ist ein Flußdiagramm, welches Schritte illustriert, welche in Verbindung mit einer Ansichtstypenerkennung durchgeführt werden.
  • 30 ist ein Flußdiagramm, welches Schritte illustriert, die in Verbindung mit einem Detektieren bzw. Erfassen von Pfeilköpfen bzw. Pfeilspitzen durchgeführt werden.
  • 31 ist ein Flußdiagramm, welches Schritte illustriert, die in Verbindung mit einem Erfassen bzw. Detektieren von Schäften von linearen Pfeilen durchgeführt werden.
  • 32 ist ein Flußdiagramm, welches Schritte illustriert, die in Verbindung mit einem Erfassen von Beschriftungen für lineare Pfeile, einem Erfassen von Paaren von beschrifteten bzw. markierten Pfeilen und einem Erfassen von Trennlinien durchgeführt werden.
  • Detaillierte Beschreibung der bevorzugten Ausführungsform(en)
  • Bezugnehmend auf 1 beinhaltet ein rechnergestütztes bzw. computerisiertes Modelliersystem 30 eine CPU 31, einen Computerbildschirm 32, eine Tastatur-Eingabeeinrichtung 33, eine Maus-Eingabeeinrichtung 34 und eine Speichereinrichtung 35. Die CPU 31, der Computerbildschirm 32, die Tastatur 33, die Maus 34 und die Speichereinrichtung 35 sind konventionelle, üblicherweise verfügbare bzw. erhältliche, Computer-Hardwareeinrichtungen, wie z. B. eine Workstation oder ein Personal Computer, welche einen Mikroprozessor, wie z. B. einen auf Pentium oder Pentium II basierenden Prozessor oder einen anderen konventionellen Prozessor verwenden. Die Maus 34 hat konventionelle, vom Anwender zu betätigende, linke und rechte Tasten bzw. Knöpfe. Andere geeignete Computer-Hardware-Plattformen sind geeignet, wie dies aus der folgenden Diskussion augenscheinlich bzw. ersichtlich werden wird. Derartige Computer-Hardware-Plattformen sind vorzugsweise dazu geeignet bzw. fähig, ein Softwarebetriebssystem zu betreiben, welches für eine graphische Anwenderschnittstelle geeignet ist, wie z. B. das Microsoft Windows NT, Windows 95, oder Windows 98 Betriebssystem, oder ein Macintosh Betriebssystem von Apple Computer.
  • Software für eine rechnergestützte Konstruktion wird in der Speichereinrichtung 35 gespeichert und in die CPU 31 geladen und von ihr ausgeführt. Die Software gestattet es dem Anwender, ein Modell eines Objekts bzw. Gegenstands zu erstellen und zu modifizieren.
  • Bezugnehmend auf 2 nützt bzw. verwendet die CPU 31 den Computerbildschirm 32 zum Anzeigen eines dreidimensionalen Modells in einem Modellfenster bzw. Modellierfenster 40. Das in 2 dargestellte Objekt ist eine dreidimensionale Wiedergabe eines allgemeinen mechanischen Objekts, des Gehäuses 37 für eine Pumpe. Andere Aspekte davon werden detaillierter im Nachfolgenden beschrieben werden.
  • Erneut auf 1 bezugnehmend, betätigt ein Anwender die Tastatur 33 und die Maus 34, um Daten für das Modell einzugeben und zu modifizieren. Die CPU 31 akzeptiert und verar beitet eine Eingabe von der Tastatur 33 und der Maus 34. Unter Verwendung der Modelliersoftware be- bzw. verarbeitet die CPU 31 die Eingabe gemeinsam mit den Daten, welche dem Modell zugeordnet sind und macht entsprechende und geeignete Veränderungen an der Anzeige des Computerbildschirms 32. Zusätzlich können Daten entsprechend dem durch den Verwender erstellten Modell von der CPU 31 in die Speichereinrichtung 35 geschrieben werden. Es wird von Fachleuten geschätzt bzw. verstanden werden, daß die Erfindung in Verbindung mit jeder Software für computergestützte Konstruktion eingesetzt werden könnte, einschließlich Software, welche zur Erzeugung eines dreidimensionalen oder eines zweidimensionalen Modells benützt wird, wie z. B. Modelliersoftware, welche von SolidWorks Corporation aus Concord, Massachusetts zur Verfügung gestellt wird.
  • Bezugnehmend auf 3 und 4 wird eine zweidimensionale Konstruktionszeichnung dargestellt, welche eine Anzahl von zweidimensionalen Ansichten in diesem Beispiel des Pumpengehäuses 37 von 2 zeigt. Der Computerbildschirm 32 beinhaltet das Modellierfenster 40, welches eine Anzahl von Ansichten des Pumpengehäuses 37 beinhaltet. Unterschiedliche Ansichten beinhalten eine Vorderansicht 44, eine Draufsicht 48, eine Anzahl von Schnittansichten und eine Detailansicht. Wie aus der Zeichnung von 3 und 4 beobachtet werden kann, ist sogar eine Zeichnung für eine einfache mechanische Einrichtung, wie beispielsweise ein Pumpengehäuse, sehr komplex, was es ziemlich schwierig macht, diese zu lesen. Beispielsweise macht es das Niveau der Details erforderlich, daß das Modell ausreichend groß zum Lesen der Dimensionsangaben bzw. -daten ist, wobei es jedoch die Anzahl der Ansichten schwierig macht, alle Ansichten einer ausreichend großen Größe auf einem einzelnen Bildschirm einzupassen. Als ein Ergebnis davon zeigt der Bildschirm 32 typischerweise nur ein Teil des Modellierfensters 40 zu einer beliebigen gegebenen Zeit, wobei es für den Anwender erforderlich ist, einen Prozeß zu benützen, wie z. B. einen Pfeilbalken oder eine andere konventionelle Einrichtung (nicht gezeigt), um sich über das Modellierfenster 40 zwischen den verschiedenen Ansichten zu bewegen.
  • Ein vereinfachtes Schema vom typischen Konstruktionszeichen wie beispielsweise jene aus 3 und 4, ist in 5 dargestellt, welche ein reduziertes Niveau von Entwurfsdetails enthalten, wie diese zur Illustration der hierin geoffenbarten Verfahren bzw. Methoden und Systeme notwendig sind. In 5 wurden bestimmte Schattierungs- und Hintergrundelemente eingeschlossen, welche nicht notwendigerweise auf dem Computerbildschirm 32 erscheinen, welche jedoch die Fähigkeit zur Ansicht der unten besprochenen Elemente verbessern.
  • Bezugnehmend auf 5 besteht ein Modell 42 in einer Ausführungsform aus einer Vielzahl von zweidimensionalen Ansichten eines Pumpengehäuseobjekts, wie beispielsweise der Vorderansicht 44, der Draufsicht 48, einer Schnittansicht 50, einer ersten Detailansicht 52 und einer zweiten Detailansicht 54. Die Schnittansicht 50 ist eine zweidimensionale Ansicht eines Querschnitts, welchen man erhalten würde, wenn man das in der Vorderansicht 44 dargestellte Objekt entlang der Linie A-A schneiden würde, welche in der Vorderansicht 44 dargestellt ist. Es sollte beachtet werden, daß eine Seitenansicht erhalten werden kann, indem man eine Schnittansicht nimmt, während die Schnittlinie eher angrenzend an als durch ein zu betrachtendes Objekt plaziert wird. Die Draufsicht 48 stellt die Ansicht dar, welche je mand erhalten würde, indem er auf das Oberteil bzw. Oberseite des in der Vorderansicht 44 dargestellten Objekts blickt, wobei das Oberteil des Objekts auf dem Oberteil bzw. der Oberseite des Computerschirms 32 positioniert ist. Die Detailansicht 52 ist eine Darstellung eines detaillierteren Elements B, wie dies in der Schnittansicht 50 angezeigt wird. Die Detailansicht 54 ist eine detailliertere Ansicht der eingekreisten Einzelheit C der Vorderansicht 44.
  • Hierin wird ein computerbasiertes System zur Verfügung gestellt, um eine verbesserte Betrachtung einer zweidimensionalen elektronischen Zeichnung zur Verfügung zu stellen, welche eine Vielzahl von Ansichten hat. Bezugnehmend auf 3, 4 und 6 beinhaltet das computerbasierte System einen virtuellen Faltprozeß, um es einem Betrachter zu gestatten, Ansichten, welche aus einer Vielzahl von möglichen Ansichten ausgewählt wurden, in jeweiliger Nachbarschaft zueinander auf dem Computerbildschirm zu plazieren. 3 stellt ein Schema eines Modells 42 mit der Vorderansicht 44 im Computerbildschirm 32 dar. 4 stellt eine Schnittansicht D-D dar, welche ein Schnitt ist, der sich durch Schneiden des Pumpengehäuses 37 entlang einer Achse D-D ergeben würde. Somit sind, während die Vorderansicht 44 und die Schnittansicht 49 auf demselben Bildschirm 32 sind, sie ausreichend voneinander entfernt, daß es schwierig ist, beide auf dem Bildschirm 32 zur selben Zeit zu sehen, während eine ausreichend nahe Ansicht erhalten wird, um wichtige Details, wie z. B. Dimensionsbezeichnungen bzw. -daten, zu sehen.
  • Die in 3 und 4 dargestellte Situation ist analog zu einer Situation, welche bei zweidimensionalen Zeichnungen in Papierform entsteht, wie sie beispielsweise von Architekten oder Maschinenbauingenieuren benützt werden. Verschiedenen Ansichten befinden sich oft weit voneinander entfernt auf dem Papier, so daß es schwierig ist, zwei miteinander in Verbindung stehende Ansichten zur selben Zeit zu behandeln bzw. zu untersuchen bzw. zu überprüfen. Das konventionelle Verfahren zur Handhabung einer großen Papierzeichnung ist es, die Zeichnung so zu falten, daß interessierende Einzelheiten bzw. Elemente in naher Nachbarschaft zueinander sind, wobei andere Einzelheiten durch die Faltung der Zeichnung versteckt bzw. verborgen bleiben.
  • Die hierin offenbarten Verfahren und Systeme stellen einen virtuellen Faltprozeß zur Verfügung, welcher es dem Ver- bzw. Anwender gestattet, ausgewählte bzw. ausgesuchte Ansichten nahe zueinander auf dem Bildschirm zu plazieren, während Ansichten, welche nicht ausgewählt wurden, versteckt werden. Somit gestattet es der virtuelle Faltprozeß dem Anwender, die Vorderansicht 44 und die Schnittansicht 49 auszuwählen und die beiden Ansichten in Nachbarschaft zueinander zu bewegen, wie dies in 6 dargestellt wird. Eine Ausführung eines virtuellen Faltprozesses kann durch jeden beliebigen konventionellen Mechanismus ausgeführt werden, wie z. B. ein Pull-Down-Menü bzw. Herabziehmenü, ein Icon bzw. ein Symbol in einer graphischen Benutzeroberfläche, eine Mausbetätigung oder dgl. Beispielsweise könnte ein Anwender einen virtuellen Faltprozeß aus einem Werkzeugverzeichnis auswählen, indem er auf einen Werkzeugmenübalken an der Oberseite des Computerbildschirms 32 klickt. Der Anwender könnte dann Ansichten unter jenen auf dem Computerbildschirm 32 auswählen, indem der Cursor- bzw. Eingabezeigerpfeil auf einer bestimmten Ansicht angeordnet wird und eine der Tasten der Maus geklickt bzw. gedrückt wird.
  • Alternativ könnte der virtuelle Faltprozeß ein Ziehen und Ablegen einer ausgewählten Ansicht in eine nähere Nachbarschaft mit einer anderen Ansicht bedingen. Weitere Details bzw. Einzelheiten über den virtuellen Faltprozeß werden weiter unten zur Verfügung gestellt.
  • Ebenfalls wird hierin als ein Teil des computerbasierten Systems ein Hyperlinkprozeß für ein gleichzeitige Hervorheben der Koordinaten eines betrachteten Objekts und einer entsprechenden anderen Ansicht auf einem Computerbildschirm zur Verfügung gestellt. Bezugnehmend auf 7 beinhalten die Vorderansicht 44 und die Schnittansicht 50 die Koordinaten A-A, welche die Lage eines Schnitts durch das in dem Modellierfenster 40 des Computerbildschirms 32 modellierte Objekt repräsentieren. Der Hyperlinkprozeß identifiziert Koordinaten und die jeweiligen Ansichten, welche in dem Computerbildschirm 32 erscheinen, und wenn der Pfeil über einer bestimmten Koordinate positioniert ist bzw. wird, wird die entsprechende Ansicht hervorgehoben. Beispielsweise wird, wenn die Maus über den Koordinaten A-A in der Vorderansicht 44 an der Stelle 52 positioniert ist bzw. wird, dann auch die Schnittansicht 50 hervorgehoben. Ein Hervorheben kann durch eine Veränderung der Farbe, durch eine Benützung einer Schattierung oder andere konventionelle Verfahren zum Hervorheben einer interessierenden Einzelheit auf einem Computerbildschirm 32 durchgeführt werden.
  • Ebenso zur Verfügung gestellt wird als ein Teil des computerbasierten Systems ein Zeiger zum gleichzeitigen Zeigen auf denselben Punkt eines betrachteten Objekts, sobald der Punkt in mehr als einer Ansicht auf einem Computerbildschirm erscheint. Bezugnehmend auf 8 kann ein Zeiger 56 in einer oder mehreren Ansicht(en) eines im dem Model lierfenster 40 des Computerbildschirms 32 modellierten Objekts erscheinen. Beispielsweise kann sich der Zeiger 56 an der Stelle 55 in der Vorderansicht 44 befinden, welche der Stelle 58 in der Draufsicht 48 und der Stelle 60 in der Detailansicht 54 entspricht. Wenn der Zeiger 56 bewegt wird, wie beispielsweise durch ein Klicken und Halten der Maus auf dem Zeiger 56, bewegt sich der Zeiger 56 in jeder der Ansichten an eine Stelle, welche in jeder der Ansichten entspricht. Beispielsweise würde sich, wenn der Zeiger 56 entlang einer horizontalen Linie in der Ansicht 44 an eine Stelle 61 bewegt wird, dann der Zeiger 56 in der Draufsicht 48 an eine neue Stelle 62 in der Schnittansicht 54 bewegen. In ähnlicher Weise könnte sich der Zeiger 56 an eine neue Stelle in der Schnittansicht 54 bewegen, wobei jedoch in diesem Fall, da die Bewegung entlang der Sichtachse des Betrachters ist, keine Bewegung erkennbar sein würde. Abhängig von der Beziehung der Ansichten könnte sich der Zeiger 56 ganz unterschiedlich in unterschiedlichen Ansichten bewegen. Beispielsweise könnte, wenn die Ansichten schräg zueinander sind, dann eine horizontale Bewegung in einer Ansicht möglicherweise nicht in einer beliebigen Bewegung des Zeigers in einer anderen Ansicht resultieren, da die horizontale Bewegung möglicherweise entlang einer Betrachtungsachse in einer der Ansichten sein könnte. Der Zeigerprozeß gestattet eine schnelle Erkennung von ähnlichen Komponenten in unterschiedlichen Ansichten. Ein Zeiger kann einen Ort bzw. Punkt durch eine Farbe, Schattierung oder andere konventionelle Mittel hervorheben. In der 8 wird ein Fadenkreuz als ein Beispiel für einen Zeiger dargestellt.
  • Weiters wird hier als ein Teil des computerbasierten Systems ein Zeichnungsanimator zum Drehen einer dreidimensionalen Darstellung eines Modells um eine Drehachse und zum Hervorheben einer zweidimensionalen Ansicht zur Verfügung gestellt, wenn die Ansicht mit der Ebene der Zeichnung übereinstimmt bzw. zusammenfällt. Bezugnehmend auf 9 wird ein vereinfachtes solides bzw. festes Objekt in dem Modellierfenster 40 des Computerbildschirms 32 dargestellt. Verfahren und Systeme für ein Drehen eines derartigen Objekts um eine oder mehrere Drehachse(n) sind in dem Gebiet der computergestützten Konstruktion bekannt, wie z. B. jene, welche in dem SolidWorks 99 Produkt zur Verfügung gestellt werden, erhältlich vom SolidWorks Corporation von Concord, Massachusetts. Bei einem Animator- bzw. Animationsprozeß, welcher mit einer zweidimensionalen Zeichnung verbunden ist, welche eine Vielzahl von Ansichten hat, kann der Prozeß eine Ansicht hervorheben, wenn diese dem Anwender präsentiert bzw. dargestellt wird. Beispielsweise bezugnehmend auf 9, wird eine einfache Stufe 74 dargestellt, welche eine Vorderseite 68 und eine Oberseite 70 und eine rechte Seite 72 hat. Die Stufe 74 wird in 9 als teilweise gedreht dargestellt, um diese drei Seiten zu zeigen, wobei Schattierungen die unterschiedlichen Seiten repräsentieren.
  • 10 stellt eine zweidimensionale Zeichnung dar, welche eine Vorderseitenansicht 78 und eine seitliche Draufsicht 80 und eine rechte Seitenansicht 82 entsprechend einer zweidimensionalen Ansicht einer jeden der Seiten der Stufe 74 zeigt.
  • Bezugnehmend auf 11 wird, wenn die Stufe 74 durch das Modellierprogramm gedreht wird, eine bestimmte Ansicht hervorgehoben, wenn diese direkt dem Anwender präsentiert bzw. dargestellt wird; d. h. wenn die Seite planparallel bzw. koplanar mit dem Bildschirm und im rechten Winkel zu der Sichtlinie des Betrachters des Computerbildschirms 32 ist.
  • Somit werden die Vorderseitenansicht 78, die seitliche Draufsicht 80 und die rechte Seitenansicht 82 hervorgehoben, wenn die Drehung diese dem Anwender präsentiert. 11 stellt die rechte Seitenansicht 72 nach einer Drehung der Stufe nach rechts von der Position der 9 dar. Die Animationseigenschaft ermöglicht es dem Anwender, die Stelle von verschiedenen Ansichten zu erkennen, wenn diese in dem Objekt erscheinen. Wenn ein Objekt komplizierte Querschnitte hat, gestattet es die Animation dem Anwender, die Orientierung von verschiedenen zweidimensionalen Ansichten relativ zueinander zu bestimmen.
  • 12 und 13 präsentieren jeweils eine dreidimensionale Ansicht eines Pumpengehäuses 37 während einer Drehung und eine zweidimensionalen Ansicht, welche entsprechend dem Prozeß der vorliegenden Erfindung hervorgehoben ist. Besonders repräsentiert 13 eine Draufsicht 48, welche hervorgehoben werden würde, wenn das Pumpengehäuse 37 so gedreht wird, daß die Oberseite zu dem Betrachter des Computerbildschirms 32 gerichtet ist.
  • Bezugnehmend auf 14 beinhaltet ein System 100, um die oben besprochene bzw. diskutierte und in 113 gezeigte Funktionalität zur Verfügung zu stellen, eine elektronische Zeichnungsdatei 122 und ein Anzeigeprogramm 124 ein. Das Anzeigeprogramm benützt bzw. verwendet die elektronische Zeichnungsdatei 122 und Anwenderbefehle, um Anzeigedaten zur Verfügung zu stellen, welche auf dem Computerbildschirm 32 gezeigt oder auf konventionelle Weise ausgedruckt werden können. Die elektronische Zeichnungsdatei 122 und das Anzeigeprogramm 124 werden detaillierter nachfolgend besprochen bzw. diskutiert.
  • Bei einer Ausführungsform werden die elektronische Zeichnungsdatei 122 und das Anzeigeprogramm 124 gemeinsam in einer komprimierten Metadatei 126 gespeichert. Die einzelne, komprimierte Metadatei 126 kann dann als einzelne Datei bzw. einzelnes File einem Anwender zur Verfügung gestellt werden, welche(s) unkomprimiert sowohl das Anzeigeprogramm 124 als auch die elektronische Zeichnungsdatei 122 beinhaltet. Wenn das Anzeigeprogramm 124 nicht zu groß ist, kann es möglich sein, eine beträchtliche Anzahl von elektronischen Zeichnungen auf diese Weise zu senden, so daß der Empfänger/die Empfänger immer das Anzeigeprogramm 124 zur Anzeige bzw. Darstellung der elektronischen Zeichnungsdatei 122 hat/haben. Ein Komprimieren der elektronischen Zeichnungsdatei 122 und des Anzeigeprogramms 124 in eine einzelne komprimierte Datei 126 kann auf jede beliebige aus einer beliebigen Anzahl von konventionellen Arten durchgeführt werden, welche eine konventionelle Software einsetzen, wie sie für solche Zwecke verfügbar ist. In einigen Fällen wird eine Ausführung der einzelnen Datei eine automatische Dekompression und Ausführung des Anzeigeprogramms 124 verursachen bzw. bewirken.
  • Bezugnehmend auf 15 wird die elektronische Zeichnungsdatei 122 gezeigt, daß sie eine Vielzahl von Ansichtsdatenaufzeichnungen 134136 und eine tessellierte bzw. schachbrettartige Modelldatenaufzeichnung 138 enthält. Die Ansichtsdatenaufzeichnung 134, welche im Detail gezeigt ist, beinhaltet zweidimensionale Zeichnungsdaten 142, eine Transformationsmatrix 144 und Hyperlinks 146. Andere Ansichtsaufzeichnungen 135, 136 beinhalten Daten, welche analog zu jenen sind, welche im Detail für die Ansichtsaufzeichnung 134 gezeigt sind. Die tessellierte Modelldatenaufzeichnung 138 schließt Daten ein, welche einer dreidi mensionalen tessellierten Ansicht entsprechen, welche auf konventionelle Art und Weise aus dem dreidimensionalen Modell auf eine Art und Weise erzeugt wird, die detaillierter nachfolgend in Verbindung mit der Besprechung bzw. Diskussion bezüglich einer Erzeugung der elektronischen Zeichnungsdatei 122 beschrieben ist.
  • Eine jede der Ansichtsaufzeichnungen 134136 entspricht einer der zweidimensionalen Ansichten, einschließlich jener Ansichten, welche den Ausschnittsansichten und Detailkreisen entsprechen. Die zweidimensionalen Daten 142 beinhalten konventionelle zweidimensionale Zeichnungsobjekte ein, welche dazu benützt werden, die Ansicht entsprechend der Aufzeichnung 134 anzuzeigen. Diese Objekte beinhalten Befehle, um Linien, Kreise, Bögen, usw. zu zeichnen. Eine jede der Ansichtsaufzeichnungen 134136 beinhalten entsprechende zweidimensionale Daten für die entsprechende Ansicht.
  • Verbunden mit dem Modell, welches durch die verschiedenen Ansichtsaufzeichnungen 134136 repräsentiert wird, ist ein absolutes Basiskoordinatensystem, welches die Orientierung bzw. Ausrichtung, Translation bzw. Verschiebung und Maßstabsfaktor für das Modell beinhalten, wie es durch die verschiedenen Ansichtsaufzeichnungen 134136 dargestellt wird. Dementsprechend beinhaltet die Transformationsmatrix 144 Information, welche die Translation, den Maßstab und Drehung der Ansichtsaufzeichnungen 134 in bezug auf die absolute Basis für das Modell, welches durch die Ansichtsaufzeichnungen 134136 repräsentiert wird. Wie in der Technik bekannt ist, ist die Transformationsmatrix eine Vier-mal-Vier Anordnung, welche bestimmte Zahlen beinhaltet, welche Angaben über die Translation, den Maßstab und die Drehung anzeigen. Eine Besprechung von derartigen Transformations matrizen kann gefunden werden in Computer Graphics Principles and Practice, von Foley, VanDam, Feiner, und Hughes, veröffentlicht von Addison-Wesley, New York, New York.
  • Die Hyperlinkdaten 146 beinhalten Daten, welche Bereiche der zweidimensionalen Daten 142 von einigen der Aufzeichnungen 134136 mit anderen der Aufzeichnungen koppeln bzw. verknüpfen. Im Fall einer Schnittansicht würden die Hyperlinkdaten 146 eine Identifizierung der speziellen Schnittlinie beinhalten, welche in den zweidimensionalen Daten 142 gespeichert ist, und diese Information mit einer anderen der Ansichten 135, 136 verbinden, welche der speziellen Schnittlinie in den zweidimensionalen Daten 142 entspricht. In ähnlicher Weise würden für Detailkreise die Hyperlinkdaten 146 eine spezielle Einzelheit oder Einzelheiten der zweidimensionalen Daten 142 identifizieren, welche den Kreis in der Ansicht entsprechend der Aufzeichnung 134 zeigen, und verknüpft diese Information mit einer anderen der Ansichten 135, 136, welche dem Detailkreis entspricht. Eine Erzeugung der Hyperlinkdaten 146 wird nachfolgend in Verbindung mit der Besprechung bezüglich einer Erzeugung der elektronischen Zeichnungsdatei 122 detaillierter besprochen.
  • Bezugnehmend auf 16 illustriert ein Flußdiagramm 150 Schritte, welche in Verbindung mit einer Implementierung des Zeigers 56 benützt werden. An einem ersten Schritt 152 wird ein Startpunkt für den Zeiger 56 ausgewählt. Der Startpunkt für den Zeiger könnte jeder Punkt im dreidimensionalen Raum sein, wie beispielsweise der Ursprung des absoluten Koordinatensystems. Jedoch kann bei einer Ausführungsform der Startpunkt gewählt werden, indem ein sichtbarer Punkt auf einer angezeigten bzw. dargestellten Ansicht für zwei der drei Koordinaten ausgewählt wird und dann dieser Punkt benützt wird, um die dritte Koordinate entsprechend einem sichtbaren Punkt auf einer zweiten, orthogonalen bzw. rechtwinkeligen Ansicht zur ersten ausgewählten Ansicht zu berechnen.
  • Dem Schritt 152 folgend ist ein Schritt 154, wo die Lage des Zeigers 56 für alle Ansichten berechnet wird. Die Lage des Zeigers 56 wird als drei Werte entsprechend den X, Y und Z-Koordinaten im absoluten Koordinatensystem gespeichert. Dementsprechend wird bei Schritt 154 die relative Lage des Zeigers 56 für jede der Ansichten bestimmt, indem die Transformationsmatrix verwendet wird, welche jeder Ansicht zugeordnet ist, und die Transformationsmatrix auf die absoluten Koordinaten des Zeigers 56 angewendet wird. Somit stellt bei Schritt 154 die Anwendung der Transformationsmatrix auf die absoluten Koordinaten des Zeigers 56 eine relative Position des Zeigers 56 für jede der Ansichten zur Verfügung. Auf den Schritt 154 folgend ist ein Schritt 156, wo der Zeiger 56 in jeder der Ansichten eines Modellierfensters 40 des Bildschirms 32 angezeigt bzw. dargestellt wird. Ein Anzeigen des Zeigers 56 bei dem Schritt 156 wird auf konventionelle Art und Weise zur Verfügung gestellt, indem die relative Lageinformation benützt wird, welche bei Schritt 154 bestimmt wurde, und ein passendes Symbol, wie z. B. ein Punkt oder ein Fadenkreuz, auf jeder der Ansichten zur Verfügung gestellt wird, um die Lage des Zeigers 56 in jeder der Ansichten anzuzeigen. In einigen Ausführungsformen kann der Zeiger 56 in einer anderen Farbe als der Zeichnungsbereich der Ansichten zur Verfügung gestellt werden.
  • Dem Schritt 156 folgend ist ein Test von 158, wobei bestimmt wird, ob der Zeiger 56 durch den Anwender bewegt wird. Es soll beachtet werden, daß der Anwender den Zeiger 56 in einer jeden der Ansichten bewegen kann, wo der Zeiger 56 sichtbar ist. Eine Bewegung wird auf konventionelle Art und Weise ausgeführt, wie beispielsweise durch Benützung der Maus, um den Zeiger 56 in einer der Ansichten zu ziehen und zu klicken. Wenn bei dem Schritt 158 bestimmt wird, daß der Anwender den Zeiger 56 bewegt hat, dann transferiert bzw. springt die Steuerung zurück zu dem Schritt 154, wo die Lage des Zeigers 56 in jeder Ansicht neu berechnet wird, wobei die Transformationsmatrizen und andere Schritte benützt werden, welche in Verbindung mit der Diskussion des Schritts 154 oben angezeigt bzw. angedeutet sind. Wenn der Anwender wählt, den Zeiger 56 in einer bestimmten Ansicht zu bewegen, dann kann somit die absolute Lage des Zeigers 56 berechnet werden, indem zuerst die inverse Transformationsmatrix für diese Ansicht auf die relative Position des Zeigers 56 in der Ansicht angewendet wird, um eine absolute Lage des Zeigers 56 zur Verfügung zu stellen. Sobald die absolute Lage des Zeigers 56 bekannt ist, ist es dann möglich, die Transformationsmatrix für jede Ansicht anzuwenden, um die relative Position des Zeigers 56 in jeder Ansicht zu bestimmen, wie dies oben besprochen wurde.
  • Bezugnehmend auf 17 zeigt ein Flußdiagramm 160 die Schritte für ein Implementieren der virtuellen Falteigenschaft an, wie dies in Verbindung mit 6, 7 und 8 oben beschrieben wurde. An einem ersten Schritt 162 wird eine erste Ansicht ausgewählt. Eine Auswahl einer Ansicht kann beinhalten bzw. einschließen, daß ein Anwender spezifisch auf eine Ansicht klickt, nachdem die virtuelle Falteigenschaft betätigt wurde. Dem Schritt 162 folgend ist ein Schritt 164, an welchem eine zweite Ansicht ausgewählt wird. Gerade so wie bei der ersten Ansicht, welche in Schritt 162 ausgewählt ist, kann ein Auswählen der zweiten Ansicht beinhalten, daß ein Verwender auf die Maus klickt, um die zweite Ansicht hervorzuheben, nachdem die virtuelle Falteigenschaft betätigt bzw. aktiviert wurde. Dem Schritt 164 folgend ist ein Schritt 166, wo das System die Ansichten gemeinsam darstellt bzw. anzeigt. Der Schritt 166 kann auf konventionelle Weise implementiert werden, indem die zweidimensionalen Zeichnungsdaten für jede der Ansichten benützt werden und indem eine Transformationsmatrix auf wenigstens eine der Ansichten angewendet wird, so daß beide Ansichten zueinander benachbart auf dem Computerbildschirm erscheinen. Es soll auch beachtet werden, daß, wenn die beiden Ansichten Projektionen voneinander sind, die Ansichten in eine horizontale oder vertikale Anordnung bzw. Ausrichtung in Einklang mit konventionellen Zeichnungsstandards, wie z. B. ANSI oder ISO, eingeschnappt werden können.
  • Bezugnehmend auf 18 illustriert ein Flußdiagramm 170 Schritte zum Hyperlinken einer Schnittlinie oder eines Detailkreises von einer Ansicht zu einer anderen Ansicht entsprechend der Schnittlinie oder dem Detailkreis. Eine Verarbeitung beginnt an einem ersten Schritt 172, an welchem eine Einzelheit in der augenblicklichen bzw. gegenwärtigen Ansicht ausgewählt wird. Ein Auswählen der Einzelheit in dem Schritt 172 kann es mit sich bringen, daß der Anwender mit der Maus auf die Einzelheit zeigt und auf konventionelle Art darauf klickt. Dem Schritt 172 folgend ist ein Testschritt 174, wo bestimmt wird, ob das bei Schritt 172 ausgewählte Objekt ein Hyperlink-Objekt ist. Es soll beachtet werden, daß ein Hyperlink-Objekt Objekte beinhaltet, welche ein Hyperlinken zwischen zwei Ansichten, wie beispielsweise einer Schnittlinie oder einem Detailkreis verursachen. Wie oben diskutiert bzw. besprochen wurde, wird die Hyperlink-Information mit jeder der Ansichten gespeichert, so daß ein Bestimmen, ob das ausgewählte Objekt ein Hyperlink-Objekt ist, bei dem Schritt 174 eine Überprüfung der Hyperlink-Daten für eine Ansicht mit einbezieht, um zu bestimmen, ob das ausgewählte Objekt einem Hyperlink-Objekt entspricht. Wenn bei dem Schritt 174 bestimmt wird, daß das ausgewählte Objekt kein Hyperlink-Objekt ist, dann geht die Steuerung zu dem Schritt 172 zurück, um auf eine Auswahl eines anderen Objekts zu warten. Wenn andererseits bei dem Schritt 174 bestimmt wird, daß das ausgewählte Objekt ein Hyperlink-Objekt ist, dann geht die Steuerung von dem Schritt 174 zu einem Testschritt 176 über, wo bestimmt wird, ob die Ansicht entsprechend dem ausgewählten Objekt gegenwärtig sichtbar ist. Wenn dem so ist, geht die Steuerung von dem Testschritt 176 zu einem Schritt 178 über, wo die Ansicht auf konventionelle Art hervorgehoben wird. Alternativ geht, wenn bei dem Testschritt 176 bestimmt wird, daß die Ansicht entsprechend dem Hyperlink gegenwärtig nicht sichtbar ist, die Steuerung von dem Schritt 176 auf einen Schritt 179 über, wo die augenblickliche bzw. gegenwärtige Ansicht und die Ansicht entsprechend dem Hyperlink-Objekt virtuell gefaltet werden, so daß die Ansichten gemeinsam erscheinen. Ein virtuelles Falten wird oben in Verbindung mit 17 besprochen.
  • Bezugnehmend auf 19 illustriert ein Flußdiagramm 180 Schritte dar, welche in Verbindung mit der oben besprochenen Animationseigenschaft durchgeführt werden. An einem ersten Schritt 182 wird eine erste Ansicht ausgewählt, wie dies oben besprochen wurde. Die Animation iteriert bzw. wiederholt sich durch jede der Ansichten durch ein Drehen einer dreidimensionalen, tessellierten Darstellung des Modells in dem Modellierfenster 40. Es ist hierbei keine bestimmte Ordnung erforderlich betreffend die Auswahl einer Ansicht, außer bei Aufruf eines Hyperlinkens, wie dies unten besprochen wird.
  • Dem Schritt 182 folgend ist ein Schritt 184, wo das dreidimensionale Modell gedreht wird, um die ausgewählte Ansicht zu präsentieren. In dem Fall einer Schnittansicht wird der Bereich des Modells, welcher vor der Schnittansicht liegt, entfernt, so daß der innenliegende Bereich bzw. Abschnitt, wo die Schnittansicht genommen wird, gezeigt ist bzw. wird. Dem Schritt 184 folgend ist ein Schritt 186, wo das animierte Modell angehalten wird, um dem Anwender das Modell mit der ausgewählten Ansicht nach vorne zeigend bzw. gerichtet zu zeigen. Dem Schritt 186 folgend ist ein Testschritt 188, wo bestimmt wird, ob der Anwender einen Stopbefehl eingegeben hat. Der Anwender kann jederzeit einen Stopbefehl während der Animation eingeben, um den Animationsprozeß zu stoppen und eine bestimmte Ansicht zu sehen. Wenn an dem Testschritt 188 bestimmt wird, daß ein Stopbefehl nicht eingegeben wurde, geht die Steuerung von dem Schritt 188 zu einem Schritt 190 über, wo eine neue Ansicht ausgewählt wird. Dem Schritt 190 folgend geht die Steuerung zurück zu dem Schritt 184, an welchem das tessellierte Modell in die neuerlich ausgewählte Ansicht gedreht wird.
  • Es ist zu beachten, daß eine Drehung bzw. Rotation eines dreidimensionalen Modells, insbesondere eine Drehung einer tessellierten Version eines dreidimensionalen Modells in der Technik bekannt ist. Es ist weiters zu beachten, daß es möglich ist, die verschiedenen zweidimensionalen Ansichten mit einer bestimmten Ausrichtung des Modells zu korrelieren, indem die Transformationsmatrix benützt wird, welche jeder Ansicht zugeordnet ist.
  • Wenn bei dem Testschritt 188 bestimmt wird, daß ein Stopbefehl durch den Anwender eingegeben wurde, geht die Steuerung von einem Schritt 188 zu einem Schritt 192 über, an welchem die Animation stoppt bzw. anhält. Sobald die Animation stoppt, bleibt die Ansicht statisch und das dreidimensionale Modell bewegt sich nicht. Dem Schritt 192 folgend ist ein Testschritt 194, wo bestimmt wird, ob der Anwender auf die "Go"- bzw. "Los"-Taste geklickt hat. Wenn dem so ist, geht die Steuerung von einem Schritt 194 zurück zu einem Schritt 190, wo eine neue Ansicht ausgewählt wird, so daß die Animation fortgesetzt werden kann. Wie oben besprochen bzw. diskutiert wurde, ist dem Schritt 190 folgend der Schritt 184, an welchem das tessellierte bzw. mosaikartige Modell zu der ausgewählten Ansicht gedreht wird.
  • Wenn an dem Schritt 194 bestimmt wird, daß der Anwender die "Go"-Taste nicht ausgewählt hat, geht die Steuerung von einem Schritt 194 auf einen Schritt 196 über, wo bestimmt wird, ob der Anwender ein Objekt aus der präsentierten Ansicht ausgewählt hat. Wenn nicht, geht die Steuerung zurück zu dem Schritt 194, wie dies oben besprochen wurde. Andererseits geht, wenn an dem Test von 196 bestimmt wurde, daß ein Objekt ausgewählt wurde (während die Animation angehalten wurde, wie bei dem Schritt 188), dann die Steuerung von dem Schritt 196 zu dem Schritt 198 über, wo eine Hyperlink-Verarbeitung durchgeführt wird. Wie oben besprochen wurde, findet eine Hyperlink-Verarbeitung statt, wenn ein ausgewähltes Objekt mit einer Schnittansicht oder einem Detailkreis in einer Ansicht übereinstimmt, welche mit einer an deren Ansicht korreliert. Wenn der Anwender die Animation eines ausgewählten Objekts gestoppt hat, dann wird der Schritt 198 durchgeführt, um zu bestimmen, ob ein Hyperlinken und/oder eine virtuelle Faltansicht durchgeführt werden muß. Dementsprechend entspricht der Prozeß des Schritts 198 dem oben in Verbindung mit der Verarbeitung von 17 und 18 besprochenen Prozeß. Dem Schritt 198 folgend geht die Steuerung zurück zum Schritt 184, um das tessellierte Modell zum Präsentieren der Ansicht zu drehen, welche durch das Hyperlink an dem Schritt 198 angezeigt wird bzw. wurde.
  • Bezugnehmend auf 20 illustriert ein schematisches Diagramm 210 einen Prozeß, in welchem ein Transformierungsprogramm 212 die elektronische Zeichnungsdatei 122 erstellt, indem eine zweidimensionale Datei 214 und optional eine dreidimensionale Datei 216 benützt wird. Die zweidimensionale Datei 214 kann eine konventionelle zweidimensionale Datei sein, welche auf eine konventionelle Art und Weise erzeugt wird, indem ein solides Modellierprogramm benützt wird. Viele solide Modellierprogramme, wie z. B. das SolidWorks Programm, welches von der SolidWorks Corporation von Concord, Massachusetts, erhältlich ist, haben einen eingebauten Mechanismus, welcher es dem Anwender gestattet, automatisch eine zweidimensionale Zeichnungsdatei, wie beispielsweise eine Datei bzw. ein File 214 zu erzeugen, welches) eine Vielzahl von zweidimensionalen Ansichten entsprechend dem durch den Anwender erstellten soliden Modell enthält. Zusätzlich zu den konventionellen zweidimensionalen Zeichen- bzw. Zeichnungsbefehlen und der Vielzahl von Ansichten kann die zweidimensionale Datei 214 auch die Transformationsmatrix für jede der Ansichten beinhalten, welche jede der Ansichten mit dem soliden Modell ausrichtet. Somit werden wenigstens zwei der Komponenten, welche in 15 gezeigt und oben beschrieben wurden, die zweidimensionalen Daten 142 und die Transformationsmatrix 144 bereits in der zweidimensionalen Datei 214 zur Verfügung gestellt.
  • Einige der Ansichten in der konventionellen zweidimensionalen Darei 214 können Schnitte oder Detailkreise von anderen Ansichten sein. In diesem Fall würde Information auch in der zweidimensionalen Datei 214 beinhaltet sein, da eine derartige Information aus einem soliden Modell und von den Bereichen des soliden Modells erzeugt werden kann, welche durch den Anwender für ein Schneiden und für ein Bereitstellen von Details ausgewählt wurden. Somit wird die Hyperlink-Information oder Information, welche leicht in eine Hyperlink-Information konvertiert bzw. umgewandelt werden kann, ebenso in der zweidimensionalen Datei 214 zur Verfügung gestellt. D. h., die in 15 gezeigten Hyperlink-Daten 146 können in der Datei für eine zweidimensionale elektronische Zeichnung zur Verfügung gestellt werden oder alternativ kann Information, welche leicht auf konventionelle Weise in Hyperlink-Daten 146 konvertiert werden kann, in der zweidimensionalen Datei 214 gefunden werden.
  • Die Daten 138 der tessellierten Ansicht, welche in 15 gezeigt sind, können durch die dreidimensionale Datei 216 auf konventionelle Weise zur Verfügung gestellt werden. Es ist zu beachten, daß viele dreidimensionale oder solide Modellierprogramme eine solide tessellierte Ansicht des durch den Anwender erstellten Modells beinhalten. Andererseits kann, wenn die zweidimensionale Datei 214 durch das Modellierprogramm erstellt wurde, die tessellierte Ansicht sogar darin aufgenommen werden, obwohl die tesellierte Ansicht nicht Teil der zweidimensionalen Ansichten ist.
  • Das Transformationsprogramm 212 nimmt die Information von der zweidimensionalen Datei 214 und optional, wie oben besprochen, die Information von der dreidimensionalen Datei 216 und erstellt bzw. erzeugt die elektronische Zeichnungsdatei 122, welche ein Format analog zu jenem hat, welches in 15 gezeigt und oben besprochen wurde. Da das meiste der relevanten Information bereits in der zweidimensionalen Datei 214 und optional in der dreidimensionalen Datei 216 enthalten ist, konvertiert das Transformationsprogramm 212 einfach das Format der Daten auf einer konventionellen und geradlinigen Weise, um das passende Format für die elektronische Zeichnungsdatei 122 zur Verfügung zu stellen.
  • Andererseits kann eine zweidimensionale Repräsentation bzw. Darstellung in eine Zeichnungsdatei konvertiert werden. Bezugnehmend auf 21 illustriert ein Datenflußdiagramm 300 einen Prozeß, welcher eine zweidimensionale Datei 302 konvertiert, wie beispielsweise eine Datei, welche durch Benützung von AutoCad-Software erstellt wurde. Es ist zu beachten, daß bei einigen Ausführungsformen die Datei 302 andere Information enthalten kann, welche nicht durch das hierin beschriebene System benutzt wird, wie beispielsweise andere 3-D oder Pseudo-3-D Information. Ein Reformatierer bzw. Umformatierer 304 konvertiert Daten von einer zweidimensionalen Datei 302 und speichert die Daten in einer generischen bzw. allgemeinen Datei 306. Es ist zu beachten, daß die zweidimensionale Datei 302 Daten in einer beliebigen Anzahl von Formaten beinhalten kann, wie beispielsweise dem AutoCad-Format. Der Reformatierer 304 greift einfach auf das spezielle Format der zweidimensionalen Datei 302 zu und liest sie und konvertiert die Inhalte darauf in ein generisches Format, auf welches durch eine nachfolgende Ver arbeitung leichter zugegriffen werden kann. Die zweidimensionale Datei 302 kann erstellt bzw. erzeugt werden, indem eine beliebige von einer Anzahl von kommerziell verfügbaren zweidimensionalen Entwurfs- bzw. Zeichnungspaketen benützt wird, wie beispielsweise das AutoCad-Paket, zur Verfügung gestellt von AutoDesk, auf welches durch den Reformatierer 304 zugegriffen werden kann, um die generische Datei 306 zur Verfügung zu stellen.
  • Die generische Datei 306 beinhaltet eine generische Datenstruktur, welche die zweidimensionalen Objekte bzw. Gegenstände aus der zweidimensionalen Datei 302 beschreibt. Die generische Datenstruktur beinhaltet konventionelle Deskriptoren für jedes der Objekte (z. B. Objekttyp, Lage, Größe, etc.) ein. Zusätzlich beinhaltet für einige Objekte, wie z. B. Abmessungsbezeichnungen bzw. -indikatoren, die generische Datenstruktur einen Deskriptor eines "kritischen Punkts", welcher einen Punkt auf dem Objekt anzeigt, welcher benützt werden kann, um das Objekt mit einer bestimmten Ansicht zu verbinden bzw. dieser zuzuordnen, wie dies nachfolgend detaillierter beschrieben wird.
  • Die generische Datei 306 wird als eine Eingabe an einen Interpreter 308 zur Verfügung gestellt, welcher auf eine Weise, welche detaillierter unten besprochen werden wird, die Daten von der generischen Datei 306 in eine elektronische Zeichnungsdatei 310 konvertiert, welche auf eine Weise ähnlich zu der oben besprochenen benützt werden kann. In einigen Ausführungsformen mag die aus der zweidimensionalen Datei 302 erstellte elektronische Zeichnungsdatei 310 nicht entweder eine tessellierte Ansicht oder Transformationsmatrizen für jede der Ansichten haben, wie dies oben in Verbindung mit der Zeichnungsdatei 122 illustriert wurde, wel che aus der dreidimensionalen Datei 216 und der zweidimensionalen Datei 214 erstellt wurde, welche durch ein solides Modellierprogramm zur Verfügung gestellt wurde. Zusätzlich kann die elektronische Zeichnungsdatei 310 keine anderen Eigenschaften beinhalten, welche in der oben besprochenen elektronischen Zeichnungsdatei 122 vorliegen bzw. vorhanden sein.
  • Die zweidimensionale Datei 302 und die generische Datei 306 beinhalten konventionelle zweidimensionale graphische Objekte, wie beispielsweise Linienzeichnungsobjekte, Objekte, welche Kreise und Ellipsen repräsentieren, Objekte, welche Quadrate und Rechtecke repräsentieren, etc. Wie dies detaillierter unten diskutiert werden wird, kann der Interpreter 308 die zweidimensionalen Objekte mit bestimmten Ansichten einer Zeichnung verbinden bzw. assoziieren, wodurch es möglich gemacht wird, die elektronische Zeichnungsfunktionalität zur Verfügung zu stellen, die oben besprochen wurde. Es ist jedoch zu beachten, daß in Fällen, wo die Zeichnungsdatei 310 nicht alle der Eigenschaften bzw. Merkmale der Zeichnungsdatei 122 beinhaltet, welche aus der dreidimensionalen Datei 216 und der zweidimensionalen Datei 214 erstellt wurde, welche durch ein solides Modellierprogramm zur Verfügung gestellt wurde, dann alle der oben besprochenen Ansichtseigenschaften nicht für die Zeichnungsdatei 310 verfügbar sein können.
  • Bezugnehmend auf 22 illustriert ein Flußdiagramm 320 einen Betrieb durch den Interpreter 308 in Verbindung mit einem Konvertieren der generischen Datenstruktur, welche die in der generischen Datei 306 gespeicherte 2-D-Zeichnung beschreibt, in die elektronische Zeichnungsdatei 310. An einem ersten Schritt 322 wird eine Initialisierung durchge führt. An dem Initialisierungsschritt 322 werden die meisten der 2-D-Objekte aus Gruppen entfernt, degenerierte Objekte, wie beispielsweise Linien mit Null-Länge und Kreise mit einem Null-Radius werden gelöscht, konvexe Schalen (unten beschrieben) werden für jedes Objekt berechnet und Näherungs- und Schnittkurven bzw. -graphen (unten beschrieben) werden erstellt bzw. erzeugt. Operationen, welche an dem Initialisierungsschritt 322 durchgeführt werden, werden nachfolgend detaillierter beschrieben werden.
  • Dem Schritt 322 folgend ist ein Schritt 324, wo verschiedene Arten bzw. Typen von Geometrie von der Zeichnung getrennt werden. Insbesondere werden an dem Schritt 324 Pfeilköpfe bzw. -spitzen, Pfeilköpfe mit Linien, Pfeilköpfe mit Bögen, Detailkreise, Schnittlinien und eine offensichtliche Nicht-Kurve, Nicht-Polygon-Bezeichnung bzw. -Anmerkung von der Zeichnung getrennt, um eine Weiterverarbeitung zu ermöglichen. Operationen bzw. Vorgänge, welche an dem getrennten Geometrieschritt 324 durchgeführt werden, werden nachfolgend detaillierter beschrieben.
  • Dem Schritt 324 folgend ist ein Schritt 326, wo die Ansichten getrennt werden. Ein Trennen der Ansichten bedingt ein Auffinden eines Rahmens bzw. Rands für die Zeichnung (wenn es einen Rahmen gibt), ein Finden einer jeden der Ansichten und ein Zuordnen bzw. Assoziieren von graphischen Objekten von der Zeichnung mit bestimmten der Ansichten. Operationen, welche an dem getrennten Ansichtsschritt 326 durchgeführt werden, werden detaillierter nachfolgend besprochen werden.
  • Dem Schritt 326 folgend ist ein Schritt 328, wo eine Ansichtsnamensuche durchgeführt wird. Die Ansichtsnamensuche sucht in dem Text in der Zeichnung nach Zeichenfolgen bzw. -ketten, welche Worten entsprechen, wie z. B. "Schnitt" und "Detail" (und in einigen Ausführungsformen nach deren mehrsprachigen Äquivalenten), welche bestimmte Ansichten anzeigen, die bestimmte Charakteristika bzw. Merkmale aufweisen, wie beispielsweise ein Schnitt oder Detailansichten zu sein, welche Schnittlinien und Detailkreisen entsprechen, die in anderen Ansichten beinhaltet sind. Operationen, welche an dem Ansichtsnamenssuche-Schritt 328 durchgeführt werden, werden detaillierter nachfolgend beschrieben. Dem Schritt 328 folgend ist ein Schritt 330, wo eine Anmerkungs- bzw. Notierungsanpassung bzw. -übereinstimmung durchgeführt wird. Die Notierungsanpassung paßt eine Notierung bzw. Anmerkung an bestimmte Ansichten an. Operationen, welche an dem Notierungsabstimmungsschritt 330 durchgeführt werden, werden detaillierter nachfolgend beschrieben.
  • Dem Schritt 330 folgend ist ein Schritt 332, wo Ansichtstypen bzw. -arten abgeschätzt werden. Ein Abschätzen der Ansichtstypen bedingt ein Bestimmen, welche Ansichten Ränder bzw. Begrenzungen sind. Operationen, welche an dem Ansichtstypenabschätzschritt 332 durchgeführt werden, werden detaillierter nachfolgend beschrieben.
  • Dem Schritt 332 folgend ist ein Schritt 334, wo die abschließenden Feinarbeiten an den Daten durchgeführt werden. Die abschließenden Feinarbeiten beinhalten ein Einsetzen von Hyperlinks basierend auf vorher berechneten Detailkreisen und Schnittlinien. Ein Einsetzen der Hyperlinks ist ziemlich geradlinig, sobald die Detailkreise, Schnittlinien und entsprechenden Ansichtsbeziehungen bestimmt wurden, was detaillierter unten besprochen wird.
  • Bezugnehmend auf 23 illustriert ein Flußdiagramm 350 Operationen bzw. Vorgänge, welche an dem Initialisierungsschritt 322 von 22 durchgeführt werden. Eine Initialisierung beinhaltet ein Zugreifen auf die Daten in der generischen Datenstruktur, welche in der generischen Datei 306 gespeichert sind. Auf die generische Datenstruktur, welche eine Anordnung von Aufzeichnungen sein kann, wird zugegriffen und diese für eine nachfolgende Verarbeitung modifiziert, wie dies unten beschrieben wird.
  • Ein Be- bzw. Verarbeiten beginnt an einem ersten Schritt 352, wo das erste Objekt der generischen Datenstruktur erhalten wird. Ein Verarbeiten der Objekte in der generischen Datenstruktur beinhaltet ein Integrieren durch jedes der Objekte und ein Verarbeiten eines jeden Objekts in Übereinstimmung mit der Beschreibung, welche unten dargelegt wird. Dem Schritt 352 folgend ist ein Testschritt 354, wo bestimmt wird, ob das zu verarbeitende Objekt Teil einer Gruppe ist. Wie dies unten besprochen wird, sind die meisten, jedoch nicht alle, Objekte ungruppiert, um ein nachfolgendes Verarbeiten zu erleichtern.
  • Wenn an dem Testschritt 354 bestimmt wird, daß das Objekt, welches verarbeitet wird, Teil einer Gruppe ist, dann geht die Steuerung von dem Schritt 354 zu einem Schritt 356 über, wo bestimmt wird, ob das Objekt Teil einer "Spezialgruppe" ist. Für einige 2-D Zeichnungspakete gibt es spezielle bzw. Spezialgruppen, welche zu erhalten nützlich sind. Beispielsweise in dem Fall einer Datei bzw. eines Datensatzes bzw. Files, welches) durch ein Benützen von AutoCad erstellt bzw. erzeugt wurde, können die Spezialgruppen Gruppen beinhalten, welche "Bezugslinien", "Abmessungen bzw. Dimensionen", "Kreuzschraffur" und "Blockrefe renz" genannt werden. In bestimmten Fällen kann es nicht dienlich bzw. günstig sein, die Objekte in der Gruppe von der Gruppe abzusondern.
  • Wenn an dem Testschritt 356 bestimmt wird, daß das Objekt, welches zu überprüfen bzw. zu untersuchen ist, nicht Teil einer Spezialgruppe ist, dann geht die Steuerung von dem Testschritt 356 auf einen Schritt 358 über, wo das Objekt von der Gruppe beispielsweise durch ein Absondern des Objekts von der Gruppe entfernt wird. Ein Absondern bzw. Trennen eines Objekts von einer Gruppe ist geradlinig für einen Durchschnittsfachmann.
  • Dem Schritt 358 folgend ist ein Testschritt 360, wo bestimmt wird, ob das Objekt degeneriert ist. Es ist auch zu beachten, daß der Schritt 360 auf den Schritt 354 folgt, wenn das Objekt nicht Teil einer Gruppe ist, und auf den Testschritt 356 folgt, wenn das Objekt Teil einer Spezialgruppe ist. Das bei dem Schritt 360 durchgeführte Testen bestimmt, ob das Objekt beispielsweise eine Linie mit Nulllänge oder ein Kreis ist, welcher einen Nullradius hat. Es ist zu beachten, daß es für degenerierte Objekte möglich sein kann, durch den 2-D-Zeichnungsprozeß erstellt zu werden, ohne nachfolgend entfernt zu werden, da derartige Objekte möglicherweise für den Anwender nicht sichtbar sein können. Jedoch ist es für eine nachfolgende Verarbeitung in dem hierin beschriebenen System nützlich, degenerierte Objekte zu entfernen.
  • Wenn an dem Testschritt 360 bestimmt wird, daß das zu verarbeitende Objekt degeneriert ist, dann geht die Steuerung von dem Schritt 360 auf einen Schritt 362 über, wo das Objekt von der generischen Datenstruktur entfernt wird. Al ternativ geht, wenn an dem Testschritt 360 bestimmt wird, daß das Objekt nicht degeneriert ist, dann die Steuerung von einem Schritt 360 auf einen Schritt 364 über, an welchem eine konvexe Schale bzw. Hülle um das Objekt errichtet wird. Eine konvexe Schale ist in der Technik bekannt und ist analog zu einem Dehnen eines Gummibands um das Objekt, um dabei zu helfen, die Abgrenzung bzw. Grenze des Objekts für eine nachfolgende Verarbeitung zu definieren. Bei einigen Ausführungsformen wird der Graham's Scan Algorithmus, welcher in der Technik bekannt ist, benützt bzw. verwendet, um die konvexen Schalen an dem Schritt 364 zu errichten, obwohl es für einen Fachmann in der Technik erkennbar sein wird, daß andere Algorithmen ebenso benützt werden können.
  • Dem Schritt 364 folgend ist ein Schritt 366, wo das Objekt zu Näherungs- und Schnittgraphen hinzugefügt wird, welche detaillierter unten besprochen werden. Dem Schritt 366 folgend ist ein Schritt 368, wo das nächste Objekt von der Datenstruktur für eine zusätzliche Verarbeitung abgerufen wird. Es ist zu beachten, daß der Schritt 368 ebenso dem Schritt 362 folgt, wo, wie oben diskutiert, ein degeneriertes Objekt entfernt wird. Dem Schritt 368 folgend ist ein Testschritt 370, welcher bestimmt, ob es mehr Objekte zu verarbeiten gibt. Falls nicht, dann ist die Initialisierungsverarbeitung abgeschlossen bzw. vervollständigt. Andernfalls geht die Steuerung von dem Schritt 370 zurück zu dem Schritt 354, um das nächste Objekt zu verarbeiten.
  • Es ist zu beachten, daß die Schritte des Flußdiagramms 350 in einer anderen Reihenfolge durchgeführt werden können und daß es bei einigen Ausführungsformen möglich sein kann, zuerst durch alle Objekte zu iterieren, um degenerierte Objekte zu entfernen, und dann durch alle der Objekte er neut zu iterieren, um die konvexen Schalen zu erstellen bzw. zu konstruieren, und dann durch die Objekte zu iterieren, um die Näherungs- und Schnittgraphen zu erstellen.
  • Bezugnehmend auf 24 wird von einem Graph 380 gezeigt, daß er eine Vielzahl von Knoten 382397 aufweist. Der Graph 380 könnte entweder einen Näherungsgraphen oder einen Schnittgraphen repräsentieren. Ein jeder der Knoten 382397 repräsentiert ein Objekt von der generischen Datenstruktur. Die Kanten bzw. Ränder des Graphen 380 (d. h. die Verbinder zwischen den Knoten) repräsentieren einen Schnitt (im Fall eines Schnittgraphen) oder eine Näherung bzw. Nähe (im Fall eines Näherungsgraphen) des Objekts. Somit zeigt beispielsweise eine Verbindung zwischen dem Knoten 382 und dem Knoten 383 an, daß ein Objekt entsprechend dem Knoten 382 entweder ein Objekt schneidet (im Fall eines Schnittgraphen) oder in der Nähe zu einem Objekt befindet (im Fall eines Näherungsgraphen), welches dem Knoten 383 zugeordnet ist. Es ist zu beachten, daß für den Graphen 380 die Knoten 382392 nicht mit den Knoten 393397 verbunden sind. Somit repräsentieren die Knoten 382392 einen Satz von Objekten, welche nicht eines der Objekte schneiden (oder sich nicht in der Nähe befinden), welches durch die Knoten 393397 repräsentiert wird.
  • Eine Erstellung bzw. Konstruktion des Graphen 380 ist ziemlich geradlinig unter Verwendung der konvexen Schalen, welche an dem Schritt 364 von 23 konstruiert werden. Im Fall eines Schnittgraphen werden zwei Objekte als schneidend erachtet, wenn irgendeine der Linien, welche die Polygone für die konvexen Schalen aufbauen, für das Objekt kreuzen, deren Bestimmung einfach bzw. geradlinig für einen Fachmann ist, oder wenn eines der Objekte vollständig in einem anderen Objekt enthalten ist. Die Bestimmung, daß ein Objekt ein anderes enthält, kann auf einfache bzw. geradlinige Weise durchgeführt werden, welche einem Fachmann bekannt ist. Eine Technik für ein Bestimmen, ob ein Objekt in einem anderen enthalten ist (vorausgesetzt bzw. unter der Annahme, daß die konvexen Schalen für die Objekte keine Linien haben, welche sich schneiden) ist es, einen Strahl von einem Punkt auf dem Objekt zu werfen, welches die kleinere Fläche hat. Wenn der Strahl die Begrenzungs- bzw. Grenzlinien der konvexen Schale des Objekts, welches die größere Fläche hat, eine ungerade Anzahl von Malen schneidet, dann ist das Objekt, welches die kleinere Fläche hat, in dem Objekt enthalten, welches die größere Fläche hat.
  • Im Fall des Näherungsgraphen werden die konvexen Schalen für die Objekte zuerst um einen Betrag gedehnt, welcher gleich ist dem Betrag der erwünschten Nähe bzw. Näherung (d. h., der minimale Grad an Nähe für ein Objekt, um als nahe erachtet zu werden). Nach der Dehnung bzw. Expansion wird bestimmt, ob irgendeine jener Linien, welche die Polygone der gedehnten bzw. expandierten konvexen Schalen aufbauen, kreuzen.
  • Bezugnehmend auf 25 illustriert ein Flußdiagramm 400 Operationen bzw. Vorgänge an dem getrennten Geometrieschritt 324 von 22. An einem ersten Schritt 402 werden Pfeile detektiert bzw. erfaßt und markiert, so daß Pfeile aus einer Betrachtung für einiges der nachfolgenden Verarbeitung eliminiert werden, wie dies unten besprochen wird. Ein Markieren der Objekte kann beispielsweise ein Modifizieren der generischen Datenstruktur beinhalten.
  • Dem Schritt 402 folgend ist ein Schritt 404, wo Objekte entsprechend einem Text auf eine Art markiert werden, welche ähnlich ist zu dem Markieren von Objekten entsprechend den Pfeilen, wie oben diskutiert. Dem Schritt 404 folgend ist ein Schritt 406, wo Objekte entsprechend Detailkreisen markiert werden. Dem Schritt 406 folgend ist ein Schritt 408, wo Objekte entsprechend Schnittlinien markiert werden. Dem Schritt 408 folgend ist ein Schritt 410, wo Objekte, welche nicht einer Kurve, einer Schraffur oder einem Polygon entsprechen, markiert werden. Es ist zu beachten, daß Kurven, Linien, Kreise, Ellipsen, Bögen, Keile und offene Polygone beinhalten. Ein Erfassen von Objekten, welche in den Schritten 402, 404, 406, 408, 410 markiert werden, wird detaillierter nachfolgend besprochen bzw. diskutiert.
  • Bezugnehmend auf 26 illustriert ein Flußdiagramm 420 Schritte, welche in Verbindung mit dem getrennten Ansichtsschritt 326 der 22 durchgeführt werden. An einem ersten Schritt 422 werden verbundene Sätze erzeugt. Ein verbundener Satz entspricht einem Bereich des Schnittgraphen, welcher eine Vielzahl von miteinander verbundenen Knoten aufweist, welche nicht mit irgendwelchen anderen Knoten von irgendeinem anderen verbundenen Satz verbunden sind. Ein Erstellen der verbundenen Sätze an dem Schritt 422 wird detaillierter nachfolgend besprochen.
  • Dem Schritt 422 folgend ist ein Schritt 424, wo der erste verbundene Satz für ein Verarbeiten ausgewählt wird. Dem Schritt 424 folgend ist ein Testschritt 426, wo bestimmt wird, ob der zu verarbeitende verbundene Satz einer einfachen Ansicht entspricht. Ob ein verbundener Satz einer einfachen Ansicht an dem Testschritt 426 entspricht, wird dadurch bestimmt, indem zuerst ein Wert berechnet wird, wel cher "große Toleranz" genannt wird, welcher gleich ist der Summe der Höhe des größten Objekts in der Zeichnung und der Breite des breitesten Objekts in der Zeichnung, dividiert durch einhundertfünfzig. Eine Ansicht wird als eine einfache Ansicht betrachtet, wenn die durch die Ansicht bedeckte Fläche kleiner ist als neunmal die Wurzel des Wertes von großer Toleranz und wenn die Ansicht weniger als sechs Elemente beinhaltet.
  • Wenn an dem Testschritt 426 bestimmt wird, daß der zu überprüfende verbundene Satz eine einfache Ansicht ist, dann geht die Steuerung von dem Testschritt 426 zu einem anderen Testschritt 428 über, wo bestimmt wird, ob die zu überprüfende Ansicht in irgendwelchen anderen Ansichten enthalten ist. Die Bestimmung an dem Schritt 428 kann für einen Fachmann in einer einfachen und geradlinigen Weise gemacht werden. Eine Technik für ein Bestimmen, ob eine Ansicht A in der Ansicht B beinhaltet ist, ist es, zuerst zu bestimmen, ob ein Polygon, welches die Ansicht A begrenzt, nicht ein Polygon schneidet, welches die Ansicht B begrenzt und ob die Fläche des Polygons der Ansicht A kleiner ist als die Fläche des Polygons der Ansicht B. Wenn beide wahr sind, dann wird ein Strahl von irgendeinem Punkt in A geworfen. Wenn der Strahl Begrenzungslinien des Polygons von B eine ungerade Anzahl von Malen schneidet, dann ist die Ansicht A in der Ansicht B beinhaltet.
  • Wenn an dem Testschritt 428 bestimmt wird, daß der zu verarbeitende verbundene Satz nicht in irgendwelchen anderen Ansichten beinhaltet ist, dann geht die Steuerung von dem Testschritt 428 auf einen Testschritt 430 über, wo bestimmt wird, ob der zu überprüfende verbundene Satz wenigstens zwei andere nicht einfache Ansichten beinhaltet (d. h., zwei andere verbundene Sätze, welche nicht einfache Ansichten sind). Falls dies zutrifft, dann geht die Steuerung von dem Testschritt 430 auf einen Schritt 432 über, wo der zu überprüfende verbundene Satz als eine Begrenzung markiert wird. Es ist zu beachten, daß andere Tests zum Bestimmen, ob ein verbundener Satz eine Begrenzung ist, ein Bestimmen beinhalten, ob der verbundene Satz orthogonale bzw. rechtwinkelige Linien beinhaltet, welche Teil einer Begrenzung sein können.
  • Wenn der zu überprüfende verbundene Satz nicht wenigstens zwei nicht einfache Ansichten an dem Schritt 430 beinhaltet, dann geht die Steuerung von dem Schritt 430 auf den Schritt 434 über, wo der zu überprüfende verbundene Satz als Notierung bzw. Anmerkung markiert wird. Es ist zu beachten, daß der Schritt 434 ebenso erreicht wird, wenn an dem Testschritt 428 bestimmt wird, daß der zu überprüfende verbundene Satz in anderen Ansichten beinhaltet ist. Dem Schritt 432 folgend ist ein Testschritt 436, wo bestimmt wird, ob mehr verbundene Sätze verarbeitet werden sollen. Wenn dem so ist, dann geht die Steuerung von dem Testschritt 436 auf einen Schritt 438 über, an welchem der nächste verbundene Satz für ein Verarbeiten ausgewählt wird. Dem Schritt 438 folgend geht die Steuerung zurück zu dem Testschritt 426, um den nächsten verbundenen Satz zu überprüfen.
  • Wenn an dem Testschritt 436 bestimmt wird, daß es nicht mehr verbundene Sätze zur Verarbeitung gibt, dann geht die Steuerung von dem Testschritt 436 auf einen Testschritt 440 über, wo bestimmt wird, ob irgendwelche Begrenzungen erfaßt bzw. detektiert wurden. Wenn wenigstens einer der verbundenen Sätze einer Begrenzung entspricht, dann ist die Verar beitung komplett bzw. abgeschlossen. Andenfalls geht, wenn an dem Testschritt 440 bestimmt wird, daß keine Begrenzungen erfaßt wurden, dann die Steuerung von einem Testschritt 440 zu einem Schritt 442 über, wo der Wert einer großen Toleranz, welcher oben in Verbindung mit dem Schritt 426 besprochen wurde, zurückgesetzt wird auf die Summe der Höhe und der Breite des Begrenzungskastens der gesamten Zeichnung, dividiert durch 150. Dem Schritt 442 folgend, geht die Steuerung zurück zu dem Schritt 424, wo die Analyse nochmals durchgeführt wird, indem der neue Wert der großen Toleranz verwendet wurde, um zu sehen, ob irgendwelche Begrenzungen unter Berücksichtigung des neu berechneten Werts der großen Toleranz detektierbar sind. Es ist zu beachten, daß in dem Fall einer nochmaligen Durchführung der Analyse der Test an dem Schritt 440 im zweiten Durchgang übersprungen werden kann.
  • Bezugnehmend auf 27 illustriert ein Flußdiagramm 450 Vorgänge, welche in Verbindung mit dem Schritt 422 der 26 zur Erstellung der verbundenen Sätze durchgeführt werden. Ein Verarbeiten beginnt an einem ersten Schritt 452, wo das erste Objekt von der generischen Datenstruktur ausgewählt wird. Dem Schritt 452 folgend ist ein Schritt 454, wo ein vertieftes erstes Suchverfahren an dem Schnittgraphen durchgeführt wird, wo Objekte, die mit dem ersten Objekt verbunden sind, entweder direkt oder durch andere Objekte markiert sind, daß sie Teil desselben verbundenen Satzes sind. Dem Schritt 454 folgend ist ein Testschritt 456, wo bestimmt wird, ob es irgendwelche Objekte in der generischen Datenstruktur gibt, welche nicht als Teil eines verbundenen Satzes markiert wurden. Wenn es keine Objekte gibt, welche nicht Teil eines verbundenen Satzes sind, dann ist ein Verarbeiten komplett. Andernfalls geht die Steue rung von dem Schritt 456 zu dem Schritt 458 über, wo das nächste nicht abgeglichene Objekt (d. h. ein Objekt, welches nicht irgendeinem anderen verbundenen Satz entspricht) für ein Verarbeiten ausgewählt wird. Diesem Schritt 458 folgend geht die Steuerung zurück zu dem Schritt 454.
  • Bezugnehmend auf 28 illustriert ein Flußdiagramm 480 den Ansichtsnamensuchschritt 228 und den Anpassungsanmerkungsschritt 330 aus dem Flußdiagramm 320 von 22 dar. Ein Anpassen bzw. Übereinstimmen der Notierung bzw. Anmerkung beinhaltet ein Überprüfen der Geometrie, welche an dem getrennten Geometrieschritt 324 markiert wurde, und ein Zuordnen der markierten Geometrie zu speziellen Ansichten der Zeichnung.
  • Ein Verarbeiten beginnt an dem ersten Schritt 482, wo der Text nach Schnittlinien- und Detailkreiskennzeichen bzw. -markierungen durchsucht wird. Die Schnittlinien- und Detailkreiskennzeichnungen werden durch eine nachfolgende Verarbeitung auf eine Weise benützt, welche nachfolgend besprochen wird. Ein Erfassen bzw. Detektieren von Schnittlinien- und Detailkreiskennzeichen beinhaltet ein Suchen nach einem Text, welcher das Wort "Schnitt", "Schnittlinie", "Sec.", oder irgendeinen anderen Text beinhaltet, welcher in Verbindung mit einem Identifizieren einer Schnittlinie oder eines Detailkreises in der Zeichnung benützt werden kann. Es ist zu beachten, daß in einigen Ausführungsformen mehrsprachige Äquivalente von Ausdrücken gesucht werden können. Ebenso wird der Text auf Zeichenketten bzw. -folgen überprüft, welche im Wesen von zwei Buchstaben liegen, die durch einen Bindestrich getrennt sind, wie z. B. "A-A". In diesem Beispiel würde als das Kennzeichen der Buchstabe "A" erachtet werden. Beispielsweise würde jede der Folgenden als ein Schnitt erkannt werden, welcher mit "A" gekennzeichnet ist: "Schnitt A", Sec. A", Schnittansicht A-A", "Schnittansicht A", "A-A". In Verbindung mit einem Verarbeiten des Texts zur Bestimmung von Schnittkennzeichen wird die Großschreibung des Textes ignoriert.
  • Dem Schritt 482 folgend ist ein Schritt 484, wo die Schnittlinien und die Detailkreise an spezielle Ansichten angepaßt werden. Eine Schnittlinie oder ein Detailkreis entspricht einer speziellen Ansicht, wenn die Schnittlinie oder der Detailkreis hindurchtritt und primär in der Ansicht beinhaltet ist.
  • Dem Schritt 484 folgend ist ein Schritt 486, wo die Abmessungs- und Leitnotierung an spezielle Ansichten angepaßt bzw. abgeglichen wird. Dies wird durchgeführt, indem der kritische Punkt von der generischen Datenstruktur benützt wird (oben besprochen). Für Dimensionen bzw. Abmessungen können die kritischen Punkte die Enden der Dimensionslinien bzw. Maßlinien sein. Für eine Leitlinie kann der kritische Punkt die Lage des Objekts sein, auf welche die Leitlinie zeigt.
  • Dem Schritt 486 folgend ist ein Schritt 487, wo jede Ansicht, welche als eine Begrenzung markiert wurde (siehe obige Besprechung) in Stücke aufgebrochen wird, wobei senkrechte bzw. orthogonale Linien benützt werden, welche die Begrenzung darstellen, um zu sehen, ob irgendeine Beschriftung bzw. Anmerkung vollständig in einem der Stücke beinhaltet ist, welches das durch die Linien gebildet wird. Es ist zu beachten, daß die senkrechten Linien einer Begrenzung kleinere (üblicherweise rechteckige bzw. rechtwinkelige) Subflächen beinhalten können, welche Teil der Begren zung sind. Jede Beschriftung, welche in einer der Subflächen beinhaltet ist, wird mit der Begrenzungsansicht abgestimmt.
  • Dem Schritt 487 folgend ist ein Schritt 488, wo bestimmt wird, ob irgendeine der Anmerkung ein Teil von einer der Ansichten schneidet. Jede Anmerkung bzw. Beschriftung, welche dieses Kriterium erfüllt, wird mit der Ansicht verbunden bzw. dieser zugeordnet. An dem Schritt 488 wird jede Beschriftung, welche zwei oder mehrere Teile von zwei oder mehreren unterschiedlichen Ansichten schneidet, an eine Begrenzung angepaßt.
  • Dem Schritt 488 folgend ist ein Schritt 490, wo eine Gruppenstücke-Funktion durchgeführt wird. Die Gruppenstücke-Funktion gruppiert Bereiche von Pfeilen, Schnittlinien, Detailkreisen und entsprechender Textbeschriftung so zusammen, daß, wenn beispielsweise eine Schnittlinie früher mit einer speziellen Ansicht abgestimmt wurde, dann beliebige Pfeile und der mit der Schnittlinie verbundene Text mit der Schnittlinie gruppiert wird und somit mit der selben Ansicht abgestimmt wird. In ähnlicher Weise verursacht, wenn ein Pfeilkopf mit einer Ansicht abgestimmt wird, der Schritt 490 ein Verbinden bzw. Koppeln des Rests des Pfeils (z. B. des Schaftes) mit derselben Ansicht. Dem Schritt 490 folgend ist ein Schritt 492, wo eine Beschriftung, welche ein graphisches Element einer speziellen Ansicht schneidet, dann mit der speziellen Ansicht abgestimmt wird.
  • Dem Schritt 492 folgend ist ein Schritt 494, wo die Gruppenstücke-Funktion, welche oben in Verbindung mit dem Schritt 490 besprochen wurde, erneut durchgeführt wird. Dem Schritt 494 folgend ist ein Schritt 496, wo eine abstim mungsbeinhaltende Funktion durchgeführt wird. Die abstimmungsbeinhaltende Funktion stimmt eine Beschriftung mit einer beliebigen Ansicht ab, in welcher das begrenzende bzw. Begrenzungspolygon davon die Gesamtheit der Beschriftung beinhaltet. Dem Schritt 496 folgend ist ein Schritt 498, wo die Gruppenstücke-Funktion, welche oben in Verbindung mit dem Schritt 490 besprochen wurde, erneut durchgeführt wird.
  • Dem Schritt 498 folgend ist ein Schritt 500, wo Ansichtsnamen mit speziellen Ansichten abgestimmt werden. Die Ansichtsnamen werden, wie dies oben besprochen wurde, im Schritt 482 erfaßt und können beispielsweise Namen für spezielle Schnitte und Detailkreise entsprechen. Die Ansichtsnamen werden abgestimmt, indem zuerst ein beliebiger Ansichtsnamenstext abgestimmt wird, welcher eine Ansicht schneidet, und dann ein Durchschnittsvektor von der Mitte der abgestimmten Ansichten zu dem entsprechenden Text berechnet wird. Danach werden jegliche unabgestimmte Ansichtsnamen mit Ansichten abgestimmt, welche den Vektor benützen, um eine am meisten wahrscheinliche Abstimmung zu bestimmen, welche auf der relativen Verschiebung eines "bekannten" Ansichtsnamentexts zu Ansichtsabstimmungen basiert.
  • Dem Schritt 500 folgend ist ein Schritt 502, wo eine beliebige unabgestimmte Beschriftung abgestimmt wird, indem betrachtet wird, ob die unabgestimmte Beschriftung irgendwelche der Teile von irgendwelchen der Ansichten oder irgendwelcher der Beschriftung schneidet, welche vorher mit irgendwelchen der Ansichten abgestimmt wurde. Der Schritt 502 ist analog zu dem Schritt 492, außer daß vor einem Testen auf ein Schneiden konvexe Schalen, welche mit einer belie bigen unabgestimmten Beschriftung assoziiert sind, auf einen Wert aufgebläht wird, welcher einer mittleren Toleranz entspricht, wo der Wert einer mittleren Toleranz auf 60% des Werts der großen Toleranz gesetzt wird. Dem Schritt 502 folgend ist ein Schritt 504, wo die Gruppenstücke-Funktion, welche oben in Verbindung mit dem Schritt 490 besprochen wurde, erneut durchgeführt wird.
  • Dem Schritt 504 folgend ist ein Schritt 506, wo eine Beschriftung, welche ein Begrenzungspolygon einer Ansicht schneidet, mit der Ansicht abgestimmt wird. Dem Schritt 506 folgend ist ein Schritt 508, wo die Gruppenstücke-Funktion, welche oben in Verbindung mit dem Schritt 490 besprochen wurde, erneut durchgeführt wird.
  • Dem Schritt 508 folgend ist ein Schritt 510, wo die verbleibende Beschriftung, welche nicht abgestimmt wurde, mit einer bestimmten Begrenzung bzw. Grenze abgestimmt wird. Die Beschriftung, welche mit einer bestimmten Begrenzung übereinstimmt, kann beispielsweise einen Titel beinhalten, welcher der gesamten Zeichnung gegeben wird. Dem Schritt 510 folgend ist ein Verarbeiten komplett.
  • Bezugnehmend auf 29 illustriert ein Flußdiagramm 520 Schritte, welche in Verbindung mit dem Ansichtstypen-Abschätzschritt 332 durchgeführt werden, welcher in dem Flußdiagramm 320 von 22 dargelegt wird. Ein Verarbeiten beginnt an einem ersten Schritt 522, wo Ansichten, welche Schnittnamen haben (die detektiert wurden, wie dies oben besprochen wurde), gekennzeichnete Schnittansichten sind. Dem Schritt 522 folgend ist ein Schritt 524, wo Ansichten, welche Detailkreisnamen haben, als Detailkreisansichten markiert werden. Dem Schritt 524 folgend ist ein Verarbeiten komplett.
  • Bezugnehmend auf 30 illustriert ein Flußdiagramm 530 Schritte, welche in Verbindung mit einem Erfassen von Pfeilköpfen bzw. -spitzen durchgeführt werden. Das Flußdiagramm 530 repräsentiert Schritte, welche an jedem Objekt der generischen Datenstruktur durchgeführt werden, welche überprüft und verarbeitet wird. Das Flußdiagramm 530 beinhaltet nicht jene Iterationsschritte, welche oben in Verbindung mit anderen der Flußdiagramme dargestellt bzw. illustriert wurden.
  • Ein Verarbeiten beginnt an einem Testschritt 532, welcher bestimmt, ob das zu überprüfende Objekt eine Linie ist. Wenn dem so ist, dann geht die Steuerung von dem Schritt 532 auf einen Schritt 534 über, wo bestimmt wird, ob das zu überprüfende Linienobjekt gemeinsam mit einem anderen Linienobjekt zwischen diesen drei Endpunkte hat, wobei einer der Endpunkte gemeinsam ist, d. h. die Linien sich an ihren Enden berühren. Wenn nicht, dann sind die beiden zu überprüfenden Linien nicht Teil eines Pfeilkopfes und ein Verarbeiten ist komplett. Es ist zu beachten, daß der Schritt 534 eine Iteration durch alle anderen Linienobjekte repräsentieren kann, um diese auf drei Endpunkte zu prüfen.
  • Wenn zwei Linien, welche drei Endpunkte haben, an dem Schritt 534 gefunden werden, geht die Steuerung von dem Schritt 534 auf einen Schritt 536 über, wo bestimmt wird, ob es drei Linien gibt (die beiden Linien, welche an dem Schritt 534 getestet wurden, und eine neue, dritte, Linie), welche gemeinsam eine Gesamtzahl von drei Endpunkten haben. Drei Linien mit drei gemeinsamen Endpunkten bilden ein Dreieck. Wenn es keine drei Linien mit drei gemeinsamen Endpunkten gibt, dann ist ein Verarbeiten komplett.
  • Wenn an dem Schritt 532 bestimmt wurde, daß das zu verarbeitende Objekt keine Linie ist, geht die Steuerung von dem Schritt 532 auf einen Schritt 538 über, wo bestimmt wird, ob das zu verarbeitende Objekt ein Polygon ist. Ist dem nicht so, so ist die Verarbeitung komplett. Andernfalls geht die Steuerung von dem Schritt 538 auf einen Schritt 540 über, wo bestimmt wird, ob das Polygon ein dreiseitiges Polygon ist. Ist dem nicht so, so ist die Verarbeitung komplett. Andernfalls geht die Steuerung zu einem Testschritt 542, welcher ebenfalls dem Schritt 536 folgt, wenn drei Linien bestimmt wurden, um ein Dreieck zu bilden.
  • An dem Testschritt 542 wird bestimmt, ob das dreiseitige Polygon (wenn der Schritt 542 über den Schritt 540 erreicht wird) oder ob die drei Linien (wenn der Schritt 542 von dem Schritt 536 her erreicht wird), ein gleichschenkeliges Dreieck bilden (ein Dreieck mit zwei gleichen Seiten), wobei die dritte, ungleiche Seite kürzer ist als die beiden anderen beiden Seiten. Ist dem nicht so, so ist ein Verarbeiten komplett. Andernfalls geht die Steuerung zu einem Schritt 544, wo das/die Objekt(e) als ein Pfeilkopf markiert werden. Es ist zu beachten, daß in dem Fall eines halben Pfeilkopfes es an dem Schritt 542 möglich sein kann, zuerst ein rechtwinkeliges Dreieck zu erfassen bzw. zu detektieren und dann zu bestimmen, ob die kurze Seite weniger bzw. kürzer als eine Hälfte der Länge der Hypotenuse ist.
  • Bezugnehmend auf 31 illustriert ein Flußdiagramm 550 Schritte, welche in Verbindung mit dem Schaftfindungsschritt 536 von 30 durchgeführt werden. Ein Verarbei ten beginnt an einem Schritt 552, an welchem eine imaginäre Winkelhalbierungslinie berechnet wird. Die imaginäre Winkelhalbierende Linie bzw. Winkelhalbierende erstreckt sich von der Spitze des Pfeilkopfs (jenem Teil des Pfeilkopfs, an welchem sich die beiden Linien mit gleicher Länge treffen) durch die Mitte der dritten Linie. Es ist zu beachten, daß in dem Fall eines halben Pfeilkopfes (d. h. eines rechtwinkeligen Dreiecks) sich die Winkelhalbierende von der Spitze des Pfeilkopfs entlang des längeren der Schenkel des rechtwinkeligen Dreiecks erstreckt.
  • Dem Schritt 552 folgend ist ein Schritt 554, wo bestimmt wird, ob es irgendeine Linie in der generischen Datenstruktur gibt, welche den Pfeilkopf berührt. Ist dem nicht so, so ist ein Verarbeiten komplett. Andernfalls geht die Steuerung zu einem Testschritt 556, wo bestimmt wird, ob die Linie, welche den Pfeilkopf berührt (detektiert an dem Schritt 554), auf der korrekten Seite des Pfeilkopfs ist (d. h., sich von der Spitze des Pfeilkopfs in derselben Richtung erstreckt wie die imaginäre winkelhalbierende Linie, welche an dem Schritt 552 berechnet wurde). Wenn die berührende Linie nicht auf der korrekten Seite der Spitze des Pfeilkopfs ist, so ist ein Verarbeiten komplett. Andernfalls geht die Steuerung von dem Schritt 556 zu einem Testschritt 558, wo unter Benützung von konventionellen Mitteln bestimmt wird, ob die Linie, welche berührt, nahe an der imaginären winkelhalbierenden Linie ist. Ist dem nicht so, so ist ein Verarbeiten komplett. Andernfalls geht die Steuerung von dem Testschritt 558 zu einem Schritt 560, wo die Linie, welche berührt, als der Schaft des Pfeils markiert und mit den verbleibenden Teilen des Pfeils gruppiert wird. Ein Gruppieren der Teile des Pfeilkopfs beein flußt den Beschriftungsabstimmungsprozeß, wie dies oben besprochen wurde.
  • Bezugnehmend auf 32 illustriert ein Flußdiagramm 570 andere Schritte, welche in Verbindung mit einem Verarbeiten einer Beschriftung durchgeführt werden. An einem ersten Schritt 572 werden Kennzeichnungen, welche den linearen Pfeilen zugeordnet sind, erfaßt. An dem Schritt 572 wird jeder Text, welcher sich in der Nachbarschaft eines Schafts eines linearen Pfeils befindet, mit dem Pfeil gruppiert. Dem Schritt 572 folgend ist ein Schritt 574, wo als linearer Pfeil gekennzeichnete Paare erfaßt werden. Wenn zwei lineare Pfeile dasselbe Textkennzeichen haben, werden die Pfeile als ein Paar erachtet. Dem Schritt 574 folgend ist ein Schritt 576, wo Schnittlinien erfaßt werden, indem die als lineare Pfeile gekennzeichneten Paare, welche an dem Schritt 574 erfaßt wurden, überprüft werden und jedes Paar mit im wesentlichen parallelen Schäften als Teil einer Schnittlinie erachtet werden.
  • Die Schritte 572, 574, 576 des Flußdiagramms 570 können adaptiert werden, um ebenso Detailkreise zu erfassen. In diesem Fall würde der Schritt 572 ein Suchen nach gekennzeichneten Pfeil/Bogen-Kombinationen beinhalten und der Schritt 574 würde gekennzeichnete Bögen erfassen, welche dasselbe Kennzeichen haben. Der Schritt 576 würde dann ein Detektieren beinhalten, wenn zwei gekennzeichnete Bögen demselben Bogen entsprechen.
  • Während die Erfindung in Verbindung mit den bevorzugten Ausführungsformen, welche detailliert gezeigt und beschrieben wurden, geoffenbart wurde, werden verschiedene Modifikationen und Verbesserungen daran leicht für Fachleute er kennbar werden. Dementsprechend ist der Bereich der vorliegenden Erfindung nur durch die folgenden Ansprüche zu begrenzen bzw. zu beschränken.

Claims (16)

  1. Computerimplementiertes Verfahren zum Be- bzw. Verarbeiten einer zweidimensionalen Zeichnung, umfassend eine Vielzahl von Ansichten eines modellierten Objekts bzw. Gegenstands, wobei die zweidimensionale Zeichnung eine Vielzahl von Datenobjekten bzw. -gegenständen umfaßt, wobei das Verfahren umfaßt: Detektieren bzw. Feststellen, daß wenigstens ein Datenobjekt einer Anmerkung entspricht, umfassend einen Detailkreis, eine Schnittlinie, einen Pfeil oder einen Text auf der zweidimensionalen Zeichnung, und Markieren des Datenobjekts (434); Trennen (422442) der Vielzahl von Datenobjekten der zweidimensionalen Zeichnung entsprechend den Ansichten (326, 420), so daß jede Ansicht eine Vielzahl von Datenobjekten umfaßt; und Koppeln bzw. Hyperlinken von jedem der markierten Datenobjekte mit einer der Ansichten (484, 486).
  2. Verfahren nach Anspruch 1, worin ein Trennen der Vielzahl von Datenobjekten (420) umfaßt: Konstruieren einer Vielzahl von Graphen (380), wobei jeder Graph einen Graphtyp umfaßt, welcher aus der Gruppe bestehend aus Schnitt- und Annäherungs- bzw. Näherungsgraphen gewählt ist; und Bearbeiten der Graphen, um eine Vielzahl von verbundenen Sätzen (422) zu identifizieren, wobei jeder verbundene Satz einer der Ansichten (426, 428, 430) entspricht.
  3. Verfahren nach Anspruch 2, weiters umfassend: Identifizieren von Grenz- bzw. Randansichten (432) durch ein Bestimmen von denjenigen der Ansichten, welche weniger als eine vorbestimmte Anzahl von Elementen beinhalten und wenigstens zwei andere Ansichten (430) enthalten und nicht in anderen Ansichten (428) enthalten sind.
  4. Verfahren nach einem der Ansprüche 1 bis 3, worin ein Markieren der Datenobjekte ein Identifizieren eines Objekts umfaßt, welches aus der Gruppe gewählt ist, bestehend aus einem Pfeil (402, 530), einer Schnittlinie (408), einem Detailkreis (406) und einem Text (324, 404).
  5. Verfahren nach Anspruch 4, worin ein Identifizieren eines Pfeils ein Detektieren von drei Linien, welche ein gleichschenkeliges Dreieck ausbilden, und ein Detektieren eines dreiseitigen Polygons umfaßt, welches ein gleichschenkeliges Dreieck (530) ausbildet.
  6. Verfahren nach Anspruch 5, worin gleichschenkelige Dreiecke und dreiseitige Polygone entsprechend den gleichschenkeligen Dreiecken als Pfeile identifiziert werden, wenn eine Seite, welche eine unterschiedliche Länge als zwei andere Seiten aufweist, kürzer als die zwei anderen Seiten (542) ist.
  7. Verfahren nach einem der Ansprüche 1 bis 6, weiters umfassend einen Schritt eines Entfernens von degenerierten Objekten bzw. Gegenständen (322, 360, 362) vor einem Markieren von Datenobjekten.
  8. Verfahren nach einem der Ansprüche 1 bis 7, weiters umfassend den Schritt: Empfangen eines zweidimensionalen Files bzw. Datensatzes, welches(r) die zweidimensionale Zeichnung repräsentiert, wobei das zweidimensionale File die Vielzahl von unterschiedlichen Ansichten des modellierten Objekts umfaßt, wobei jede Ansicht durch eine Vielzahl von Datenobjekten repräsentiert ist.
  9. Verfahren nach einem der Ansprüche 1 bis 8, weiters umfassend den Schritt: Bestimmen eines Zusammenhangs bzw. einer Verbindung zwischen einem der Vielzahl von Datenobjekten und einer Gruppe; und wenn die Gruppe nicht eine spezielle Gruppe (356) ist, Entfernen des einen der Vielzahl von Datenobjekten aus der Gruppe (358) und Beibehalten des Zusammenhangs zwischen dem einen der Vielzahl von Datenobjekten und der Gruppe.
  10. Verfahren nach Anspruch 9, worin die spezielle Gruppe von einem Typ ist, welcher aus dem Satz gewählt ist, bestehend aus einer Dimensionsgruppe, einer Führungsgruppe, einer Schraffiergruppe und einer Blockbezugsgruppe.
  11. Verfahren nach Anspruch 9 oder 10, worin das eine der Vielzahl von Datenobjekten eines aus einer Dimensionsanzeige, einer Linie, einem Kreis, einer Ellipse, einem Quadrat und einem Rechteck repräsentiert.
  12. Verfahren nach einem der Ansprüche 8 bis 11, worin das zweidimensionale File ein File umfaßt, welches durch eine Computerzeichensoftware-Anwendung erzeugt wird.
  13. Verfahren nach einem der Ansprüche 8 bis 12, worin ein Empfangen des zweidimensionalen Files ein Empfangen eines ersten Files (302) und ein Neuformatieren (304) des ersten Files (302) in ein generisches Format (306) umfaßt, wobei das generische Format eine generische Datenstruktur umfaßt, welche die Vielzahl von Datenobjekten beschreibt.
  14. Verfahren nach einem der Ansprüche 1 bis 13, worin der Schritt eines Verbindens von jedem der markierten Datenobjekte mit einer der Ansichten ein Einsetzen eines Hyperlink bzw. einer Kopplung zwischen den markierten Daten und der Ansicht umfaßt.
  15. Computerprogrammprodukt zum Be- bzw. Verarbeiten einer zweidimensionalen Zeichnung, umfassend eine Vielzahl von Ansichten eines modellierten Objekts bzw. Gegenstands, wobei die zweidimensionale Zeichnung eine Vielzahl von Datenobjekten bzw. -gegenständen umfaßt, wobei das Computerprogrammprodukt die Instruktionen umfaßt, um einen Computer zu veranlassen: zu detektieren, daß wenigstens ein Datenobjekt einer Anmerkung entspricht, welche einen Detailkreis, eine Schnittlinie, einen Pfeil oder einen Text der zweidimensionalen Zeichnung umfaßt, und das Datenobjekt (434) zu markieren; die Vielzahl von Datenobjekten der zweidimensionalen Zeichnung entsprechend den Ansichten (326, 420) so zu trennen, daß jede Ansicht eine Vielzahl von Datenobjekten umfaßt; und jedes der markierten Datenobjekte mit einer der Ansichten zu koppeln bzw. zu hyperlinken.
  16. Elektronisches Zeichenfile, welches eine zweidimensionale Zeichnung repräsentiert, welche eine Vielzahl von Ansichten umfaßt, umfassend eine Vielzahl von Ansichtsdatenaufzeichnungen (134136), welche den zweidimensionalen Ansichten entsprechen, wobei jede der Ansichtsdatenaufzeichnungen (134136) beinhaltet: – zweidimensionale Zeichnungsdaten (142), – eine Transformationsmatrix (144) und; – Hyperlink- bzw. Kopplungsdaten (146), welche Daten enthalten, welche Abschnitte der zweidimensionalen Zeichnungsdaten (142) mit einer anderen Ansichtsdatenaufzeichnung koppeln bzw. verbinden.
DE2000608201 1999-11-24 2000-11-21 Übersetzung von Daten mit elektronischen Bildern Expired - Lifetime DE60008201T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US449137 1999-11-24
US09/449,137 US6603486B1 (en) 1999-09-13 1999-11-24 Electronic drawing data translation

Publications (2)

Publication Number Publication Date
DE60008201D1 DE60008201D1 (de) 2004-03-18
DE60008201T2 true DE60008201T2 (de) 2004-11-18

Family

ID=23783008

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000608201 Expired - Lifetime DE60008201T2 (de) 1999-11-24 2000-11-21 Übersetzung von Daten mit elektronischen Bildern

Country Status (6)

Country Link
US (1) US6603486B1 (de)
EP (2) EP1132849A1 (de)
JP (1) JP2001202403A (de)
AT (1) ATE259519T1 (de)
CA (1) CA2325925C (de)
DE (1) DE60008201T2 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10031042A1 (de) * 2000-06-26 2002-01-03 Autodesk Inc Erzeugen einer 2D-Ansicht eines 3D-Modells
US7246321B2 (en) * 2001-07-13 2007-07-17 Anoto Ab Editing data
US7430340B2 (en) * 2004-03-16 2008-09-30 Advanced Tracking Technologies, Inc. Geographic information data base engine
US7233333B2 (en) * 2004-11-23 2007-06-19 Buxco Electric, Inc. Collapsible (folding) graph
CN100501667C (zh) * 2005-04-09 2009-06-17 鸿富锦精密工业(深圳)有限公司 三次元量测程序转换系统及方法
USD776713S1 (en) * 2014-12-17 2017-01-17 Rgi Informatics, Llc Display device with a timeline graphical user interface
US20180268614A1 (en) * 2017-03-16 2018-09-20 General Electric Company Systems and methods for aligning pmi object on a model
KR102598210B1 (ko) * 2023-05-09 2023-11-02 주식회사 위엠비 엔지니어링 도면의 도면 정보 인식방법, 도면 정보 인식시스템, 컴퓨터 프로그램

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4933865A (en) * 1986-12-20 1990-06-12 Fujitsu Limited Apparatus for recognition of drawn shapes or view types for automatic drawing input in CAD system
US5297241A (en) * 1991-09-30 1994-03-22 Hewlett-Packard Company Automated re-layout with dimensional associativity
JP3599360B2 (ja) * 1993-08-25 2004-12-08 キヤノン株式会社 形状モデリング装置及び形状モデリング方法
JP3333319B2 (ja) * 1994-06-03 2002-10-15 三菱電機株式会社 2次元3次元統合型cadシステム
JP4046370B2 (ja) * 1996-01-12 2008-02-13 富士通株式会社 3次元形状の作図方法
US5990897A (en) * 1997-09-12 1999-11-23 Hanratty; Patrick J. Methods for automatically generating a three-dimensional geometric solid from two-dimensional view sets including automatic segregation of open, closed and disjoint curves into views using their center of gravity
US5912674A (en) * 1997-11-03 1999-06-15 Magarshak; Yuri System and method for visual representation of large collections of data by two-dimensional maps created from planar graphs

Also Published As

Publication number Publication date
EP1103912A3 (de) 2001-09-05
EP1103912B1 (de) 2004-02-11
EP1132849A1 (de) 2001-09-12
DE60008201D1 (de) 2004-03-18
CA2325925C (en) 2008-09-30
US6603486B1 (en) 2003-08-05
EP1103912A2 (de) 2001-05-30
CA2325925A1 (en) 2001-05-24
JP2001202403A (ja) 2001-07-27
ATE259519T1 (de) 2004-02-15

Similar Documents

Publication Publication Date Title
DE69229530T2 (de) Automatisiertes neues Layout-Verfahren mit dimensionaler Verknüpfung
DE69916225T2 (de) Verfahren und System zur Wartung von Freiformtinteannotationen auf ändernden Ansichten
DE69725346T2 (de) Gerät und verfahren zur erzeugung eines blechbiegemodells
DE69525401T2 (de) Verfahren und Gerät zur Identifikation von Wörtern, die in einem portablen elektronischen Dokument beschrieben sind
DE69526545T2 (de) Ein Verfahren und Gerät zur Darstellung von Datenbanksuchergebnissen
DE60031664T2 (de) Computerverfahren und vorrichtung zum schaffen von sichtbarer graphik unter verwendung von graph algebra
DE69737913T2 (de) Gerät und verfahren zur eingabe von daten fuer ein biegemodell zur blecherzeugung
DE60008264T2 (de) Datenaustausch zwischen cad-systemen
DE69432698T2 (de) Verfahren und Vorrichtung zur Aufnahme von Anmerkungen auf einen Anzeigeschirm ohne Überlappung
DE69434434T2 (de) Verfahren und gerät um text- und bilddaten zu synchronisieren, anzeigen und manipulieren
DE69534331T2 (de) Verfahren und Vorrichtung zur Hervorhebung der Einzelheit einer Baumstruktur
DE69030550T2 (de) Verfahren und System zur Erzeugung von Plänen für einen Herstellungsprozess
DE69230331T2 (de) Computervorrichtung und verfahren zur identifizierung von finite-elementen in der interaktiven modellierung
DE3852359T2 (de) Verfahren zur Erzeugung von Installationsanweisungen für dreidimensionale Montagen.
DE69924700T2 (de) Verfahren zur Darstellung von durch Oberflächenelemente repräsentierten grafischen Objekten
DE102017008430A1 (de) Verfahren und Systeme zum Erzeugen von virtuelle Realität-Umgebungen aus elektronischen Dokumenten
DE19708265B4 (de) Verfahren zum Durchsuchen einer Dokument-Bilddatenbank und Dokumentbild-Durchstöberungssystem sowie Verfahren zum Extrahieren eines Merkmalsvektors aus einem elektronisch gespeicherten Bild
DE3650417T2 (de) Informationsaufzeichnungs- und Wiederauffindungssystem.
DE4301766C2 (de) Verfahren zum Darstellen eines doppelseitigen, umwendbaren elektronischen Papiers
DE69529808T2 (de) System zur Blockanwahlaufbereitung und -überprüfung
DE3688918T2 (de) System für geometrische Verarbeitung.
DE10162156B4 (de) Die Benutzernavigation durch Multimedia-Dateiinhalte unterstützendes System und Verfahren
DE69129342T2 (de) Verfahren und Gerät zum Herausziehen von Bildranddaten
DE68927454T2 (de) Graphische Bildaufbereitung
DE60038522T2 (de) Verfahren zur Erzeugung einer Animationsdatei

Legal Events

Date Code Title Description
8364 No opposition during term of opposition