Mertens , Frank: Entwicklung eines Computerprogramms zur Durchführung elektronischer Setups

12

Kapitel 2. Programmentwicklung zur Durchführung elektronischer Setups

2.1. Zum Programm ”VirtSet“

Das Programm ”VirtSet“ und die beschriebenen Beispieldaten sind dieser Arbeit auf CD-Rom beigefügt. Zur Installation siehe Anhang, CD-ROM auf Seite 107.

2.1.1. Die Programmiersprache C++

Die Programmiersprache C++ wurde aus der Programmiersprache C (im weiteren kurz C beziehungsweise C++ genannt) entwickelt. C wurde im Jahre 1978 vorgestellt [10, 11]. Diese Programmiersprache hat sich seither zur Standardsprache der neuen Personalcomputer und großer Zentraleinheiten entwickelt. C wurde für allgemeine Anwendungen entwickelt und enthält sehr wenige Einschränkungen. Da C relativ maschinennah konzipiert ist, das heißt in ihrer Struktur der Architektur heutiger Rechner ähnelt, laufen in C entwickelte Programme sehr schnell und sind gleichzeitig sehr kompakt. C wurde inzwischen standardisiert (ANSI C, ISO 9899, FIPS 160). Jeder C-Compiler kann einen im ANSI-Standard geschriebenen Quellcode übersetzen.

Die Programmiersprache C++ ist eine Erweiterung von C um Klassen. C++ erlaubt ein objektorientiertes Programmieren. Die meisten Betriebssysteme und professionelle Anwendungen werden heutzutage in den Sprachen C oder C++ entwickelt. Es existiert bislang nur eine amerikanische Standardisierung von C++ nach ANSI. Zu einer internationalen Einigung ist es bislang nicht gekommen. Aus diesem Grunde sind Entwicklungen unter verschiedenen Programmieroberflächen wie VISUAL C++ oder BORLAND C++ nicht beliebig austauschbar.


13

2.1.2. Anforderungen an Hard- und Software

Das Programm ”VirtSet“ ist lauffähig auf einem Personalcomputer mit folgenden Voraussetzungen:

Als Betriebssystem wird WINDOWS NT® 4.0 oder höher, beziehungsweise WINDOWS 95® mit OpenGL®-Unterstützung oder höher verlangt.


14

2.1.3. Programmerstellung

Bei der Programmerstellung wurde darauf geachtet, im ANSI-Standard der Programmiersprache C zu programmieren, damit bei Anpassung an andere Compiler keine syntaktischen Probleme entstehen. Möglichst viele Bereiche wurden in C++-Klassen gekapselt. Alle allgemeinen mathematischen Funktionen, die häufig benutzt wurden, sind in einem Quellcode zusammengefaßt worden, um einen etwaigen Coprozessor zu unterstützen oder um diesen Programmteil in schnelle Maschinensprache umsetzen zu können (Dateien f_rechne.cpp und f_rechne.h).

Um eine bessere Übersicht zu erhalten, wurden die in der Programmiersprache C möglichen extremen Verkürzungen nicht benutzt. Das Programm wurde möglichst strukturiert entworfen; sogenannte GOTO-Befehle sind deshalb nicht enthalten. Um das Programm zu entlasten und zu vereinfachen, wurden viele von dem Entwicklungssystem VISUAL C++® angebotenen MFC-Klassen an Stelle der WINDOWS-spezifischen API-Aufrufe genutzt.

Dateien:

Der Quellcode ist in den Dateien mit der Extension *.cpp gespeichert. Die Dateien mit der Extension *.h sind Header-Dateien, die notwendige Definitionen enthalten.

Datei:

Inhalt:

set.cpp

Startpunkt der Programmausführung

mainfrm.cpp

Hauptmenü

ansicht.cpp

Ansichtfenster

aufbob.cpp

Objekt erstellen

artikula.cpp

Artikulationsberechnung

bars.cpp

Werkzeuge

dialoge.cpp

Dialogfenster

f_rechne.cpp

Ausgelagerte mathematische Routinen

rechne.cpp

Spezielle Berechnungen

in_out.cpp

Dateioperationen

param.cpp

Initialisierungen der VirtSet.ini-Datei

setup.cpp

Kontaktberechnungen

strip.cpp

Strippen

externe.h

Globale Definitionen

protos.h

Klassenlose Funktionen

variable.h

Globale Variablen


15

2.1.4. Logik des Programms ”VirtSet“

Beim herkömmlichen Setup bedient sich der Zahntechniker eines Artikulators mit fixiertem Ober- und Unterkiefermodell. Die Definition dieser Installation erfolgt über einen Übertragungsbogen. Beim SAM®-Artikulator sind die schädelbezogenen Referenzpunkte die Glabella (über die Glabellastütze) und die beiden Pori acustici externi. Die Stellung des Oberkiefers zu diesen Referenzpunkten wird über eine Bißgabel ermittelt. Der Unterkiefer wird mit Hilfe von Registraten in Beziehung zum Oberkiefer gesetzt.

Bei der elektronischen Realisierung wird ein kartesisches Weltkoordinatensystem definiert, in welches Ober- und Unterkiefer sowie die Kondylen mit ihren Gelenkbahnen eingebettet sind. Die jeweilige axiale Ausrichtung entspricht den Achsen im Schädelbereich bezüglich der Mediansagittal-, der Horizontal- und der Frontalebene. Im vorliegenden Programm zeigt die X-Achse vom Patienten aus gesehen nach rechts, die Y-Achse nach oben und die Z-Achse nach hinten im virtuellen Kopf. Da der Computer primär nur mit abstrakten Zahlenwerten rechnet, ist eine Bemaßung der Achsen entsprechend der realen Dimension erforderlich.

Ober- und Unterkiefer erhalten beim Digitalisieren ihr eigenes Koordinatensystem. Die Stellung der Kiefer im Weltkoordinatensystem wird durch Matrizes bestimmt. Die Definition der Stellung des Oberkiefers wird wichtig zum Beispiel bei Osteotomien nach LeFort, die des Unterkiefers schon bei Artikulationsbewegungen.

Jeder Zahn besitzt für sich eine konstante Form, wenn man von Veränderungen durch traumatische und artifizielle Einflüsse absieht. Es wird primär nur seine Stellung im Kiefer während einer kieferorthopädischen Behandlung verändert. Im Programm erhält jeder Zahn ein eigenes Koordinatensystem; seine Morphologie bezieht sich auf dieses. Die axiale Ausrichtung des Zahnkoordinatensystems bezieht sich auf die zahnärztlichen Richtungsbezeichnungen:


16

Freie Bewegungen stellen die Summe der Einzelbewegungen für diese Richtungen dar.

Die Stellung jedes Zahnes im Einzelkiefer wird ebenfalls durch Matrizes bestimmt. Da die virtuellen Zähne feste Rotationsachsen besitzen, sind Kippungen um andere Rotationsachsen Kombinationen aus Rotation und Verschiebung.

Die mathematische Beschreibung virtueller Zähne stellt in diesem Programm ein Oberflächenraster dar, wobei man jeweils eine Oberflächenqualität pro Flächenelement, zum Beispiel Zahnschmelz oder Wurzelzement definieren kann. Es wird keine Aussage getroffen über tiefere Bereiche wie Pulpa oder Wurzelkanäle.

Die mathematische Beschreibung des virtuellen Alveolarkammes ist ebenfalls ein Oberflächenraster, wobei dieses je nach Datenerfassung ein Gingiva- (Gipsmodell) oder Knochenmodell (Ultraschall, CT) darstellt.

Beim Oberflächenraster wird über die reale Form ein Punktenetz gelegt. An den Punkten stimmen reales und virtuelles Objekt überein. Die zwischen den Punkten liegenden realen Bereiche werden beim virtuellen Objekt interpoliert. In dem Programm ”VirtSet“ werden aus jeweils drei Punkten, die einander benachbart sind, Dreiecksflächen gebildet, die plan sind. Dreiecksflächen haben den Vorteil, mathematisch wie Ebenenelemente betrachtet werden zu können. Da die realen Bereiche jedoch gekrümmt sein können, besteht bei höherer Punktedichte eine größere Übereinstimmung zwischen realem und virtuellem Objekt (siehe 3.1.1. Genauigkeit bei der Oberflächenberechnung auf Seite 91).

Kontaktsuche:

Bewegt man zwei virtuelle Zähne aufeinander zu, endet diese Bewegung nicht bei Berührung wie beim realen Geschehen. Man muß vielmehr prüfen, ob ein gegenseitiger Schnitt vorliegt, und dann die Bewegungsmöglichkeit begrenzen (siehe 2.3.8. Schnittpunktberechnung auf Seite 39).

Ansicht:

Es werden die Berechnungen zwar dreidimensional durchgeführt, die Ausgabe über Bildschirm oder Drucker jedoch erfolgt zweidimensional. Durch gleichzeitig dargestellte Ansichten aus verschiedenen Richtungen kann man das Erscheinungsbild verbessern. Die Denkleistung des EDV-Benutzers für die geistige geometrische Einordnung ist jedoch eine wesentlich höhere als beim realen Setup am Gipsmodell.


17

2.1.5. Datenformate des Programmes ”VirtSet“

2.1.5.1. Datenformat der Patientendatei

Die Patientendatei (Beispieldatei: frasaco.mts) enthält Informationen über den Patienten, das Datum der Datenerfassung und Informationen über vorhandenen Datensätze der einzelnen Kiefer und Zähne.

Die Datei baut sich folgendermaßen auf:

  1. Name des Patienten (30 Zeichen).
  2. Vorname des Patienten (30 Zeichen).
  3. Geburtsdatum des Patienten als DATE-Struktur (siehe 6.1. Glossar auf Seite 101).
  4. Erstellungsdatum des Datensatzes als DATE-Struktur.
  5. Liste, die als Einträge jeden Zahn, Ober- und Unterkiefer und für jeden Eintrag ein Bitfeld mit folgenden Eintragungen enthält:
  6. ob der Zahn- oder Kieferdatensatz vorhanden ist,
  7. ob das Zahn- oder Kieferobjekt für die Darstellung in den Ansichtfenstern ausgewählt wurde,
  8. ob das Zahnobjekt als extrahiert vermerkt ist,
  9. ob der Datensatz eines gestrippten Zahnes geladen wird und
  10. ob das Zahnobjekt als ”aktiver Zahn“ ausgewählt wurde.

2.1.5.2. Datenformat der Objektdatei

Die Objektdatei enthält Informationen über Punkte, Kanten und Flächen eines Zahn- oder Kieferobjektes.

Die Datei baut sich folgendermaßen auf:

  1. Internationale Zahnbezeichnung oder eine Kieferbezeichnung (im Programm definiert als ”_OK_WERT=99“ für den Oberkiefer und ”_UK_WERT=111“ für den Unterkiefer).
  2. Punktstruktur für den Ursprungspunkt des spezifischen Koordinatensystems.
  3. Struktur für die Spezialpunkte.


18

  1. tatsächliche Anzahl der Punkte.
  2. tatsächliche Anzahl der Kanten.
  3. tatsächliche Anzahl der Flächen.
  4. Liste von Punktstrukturen für die einfachen Punkte (Anzahl definiert als ”MAXPUNKTE =4000“).
  5. Liste von Flächenstrukturen (Anzahl definiert als ”MAXFLAECHEN =8000“).
  6. Liste von Kantenstrukturen (Anzahl definiert als ”MAXKANTEN =12000“).

Die einzelnen Unterstrukturen haben folgenden Aufbau:

  1. 4 Long-Variablen für die globalen Koordinaten. Diese enthalten die objektspezifischen Koordinaten eines Punktes.
  2. 4 Long-Variablen für die Weltkoordinaten. Diese nehmen transformierte Koordinaten eines Punktes auf.
  3. 4 Fließkomma-Variablen für die Koordinaten der globalen Punktnormalvektoren.
  4. 4 Fließkomma-Variablen für die transformierten Koordinaten der Punktnormalvektoren.

  1. 4 Long-Variablen für die globalen Koordinaten. Diese enthalten die objektspezifischen Koordinaten eines Punktes.
  2. 4 Long-Variablen für die Weltkoordinaten. Diese nehmen transformierte Koordinaten eines Punktes auf.

  1. Anzahl der Spezialpunkte.
  2. Liste von Punktestrukturen für die Spezialpunkte (Anzahl definiert als ANZAHL_SPEZIALPUNKTE=100).


19

  1. Wert für die Sichtbarkeit der Fläche( Werte: sichtbare Fläche=0, Konturfläche=1,nicht sichtbare Fläche=2).
  2. Wert für die Flächenorientierung (Die Reihenfolge der drei Flächenpunkte bestimmt sich bei Blick auf die Außenfläche. Werte: rechtsherum=0, linksherum=1, keine Reihenfolge definiert=2).
  3. 4 Fließkomma-Variablen für die Koordinaten des globalen Flächennormalvektors.
  4. 4 Fließkomma-Variablen für die transformierten Koordinaten des Flächennormalvektors.
  5. Wert für die Flächenart (Wert: beispielsweise Schmelz=0, Wurzel=1, Alveolarknochen=2).
  6. Wert für den Bewegungswiderstand (wird im Programm nicht verwendet).
  7. Liste von drei Punktnummern, die auf die Punkte in der Punketliste verweisen, aus denen die Dreiecksfläche begrenzt wird.
  8. Fließkommazahl für den Flächeninhalt.

  1. Punktnummer der Punkteliste für den Anfangspunkt der Kante.
  2. Punktnummer der Punkteliste für den Endpunkt der Kante.
  3. Liste von zwei Flächennummern der Flächenliste für die Begrenzungsflächen der Kanten.
  4. Liste von zwei Werten für die Kantenorientierung bezogen auf die Orientierung der beiden Begrenzungsflächen (Werte: rechtsherum=0, linksherum=1, keine Reihenfolge definiert=2). Die beiden Kantenorientierungswerte dürfen nicht gleich sein, da sonst an einer Kante eine Innenfläche und Außenfläche aufeinanderstoßen würden.

Die Implementierung liegt in der Datei ”externe.h“ im Ordner ”Source“ der beigefügten CD-ROM .


20

2.2. Beispieldaten

2.2.1. Datenerfassung

Da am Anfang der Programmentwicklung noch keine Beispieldaten vorlagen, wurde ein CAD-Programm für dentale Fragestellungen entwickelt, um die mathematischen Entwicklungen der vorliegenden Arbeit auf ihre Richtigkeit überprüfen zu können. Die dabei gewonnenen Objekte hatten allerdings geringe Ähnlichkeit mit tatsächlichen Zähnen und besaßen dadurch nur eine begrenzte Aussagekraft. Die Punkteingabe erfolgte mittels der Maus am Computer. Die dreidimensionale Darstellung wurde wie im Programmteil ”Objekt erstellen“ durch zwei Fenster erreicht, in denen das zu konstruierende Objekt gleichzeitig von verschiedenen Seiten zu sehen war [18].

Später sollte ein Lasertriangulationsverfahren [21] genutzt werden, um die Beispieldaten zu erhalten. Dieses stellte sich jedoch als nicht ausreichend präzise heraus und war auch nicht in der Lage, Objekte tatsächlich aus allen Richtungen zu vermessen. Wegen dieser Unzulänglichkeiten wurde schließlich die Datenerfassung mit dem ”Reflex Mikroskope“ durchgeführt.

2.2.1.1. Datenerfassung mit dem Meßmikroskop

Die Daten für die in dieser Arbeit gezeigten Zähne und Kiefer wurden mit Hilfe des ”Reflex Mikroskope“ der Firma REFLEX MEASUREMENT LIMITED ermittelt [23].

Ein solches Mikroskop befindet sich im Besitz der Humboldt-Universität zu Berlin, Abteilung für Kieferorthopädie und Orthodontie. Es ermöglicht in Verbindung mit der dazugehörigen Software C3D (Version März 1995) ein dreidimensionales Vermessen von Objekten.

Das Programm C3D wurde auf einem Laptop, Dell Latitude 433c, ausgeführt, da sich die gesamte Meßapparatur im Zusammenhang mit der Stromversorgung des Meßraumes als sehr störanfällig erwies. Bei Spannungsschwankungen und größeren Motorbewegungen kam es zu ”Abstürzen“. Der Computer wurde durch eine serielle Verbindung an die Meßapparatur angeschlossen. Das Mikroskop ist vollkommen motorgesteuert und mit Meßfühlern ausgestattet. Der Objektträger besitzt zwei Motoren zur Steuerung der X- und Y-Achsen. Die Motorsteuerung der Höhenverstellung des Objektivs erlaubt eine Einstellung in Z-Achsenrichtung.

Mit Hilfe einer starken Leuchtdiode wird ein Lichtpunkt in die Optik gespiegelt. In beiden Okularen ist dieser zentral zu sehen. Dieser Lichtpunkt dient zur Bestimmung des richtigen


21

Linsen-Objekt-Abstandes (der Höhe), der erreicht ist, wenn die Lichtpunkte in jedem Okular für den Betrachter - bei entspannter Sicht in die Ferne - verschmelzen.

Je nach gewünschter Genauigkeit kann man eine Lichtpunktgröße von 5, 10 oder 20 µm einstellen. Die Motorsteuerung erfolgt in Mikrometerschritten. Die Ausgabe geschieht in Millimetern mit einer Auflösung von 1 µm, wobei anstelle des Kommas ein im englischen Sprachraum üblicher Punkt gesetzt wird.

Es besteht die Möglichkeit, drei verschiedene Arten von Punkten zu messen:

2.2.1.2. Messen der Daten

Es wurden ein Ober- und ein Unterkiefermodell der Firma FRASACO® sowie die dazugehörigen Zähne 21 bis 27 und 31 bis 37 vermessen.

Pro Kiefer wurden nur die Zähne eines Quadranten vermessen, da bei diesen Daten eine Spiegelsymmetrie angenommen wurde. Die fehlenden Zähne wurden durch Spiegelung der Datensätze ergänzt.

An jedem Zahn wurden auf allen Seiten Markierungen mit einer sehr feinen Sonde angebracht. Dann wurden die Zähne mit einem Graphitpulver bestäubt, um die Reflexion abzuschwächen und um die Markierungen besser vermessen zu können.

Pro Zahn wurden für die klinische Krone zwischen 1500 und 2500 Rasterpunkte bei einer Rasterbreite von 0,3 mm vermessen. Für die Wurzeln wurden unbezeichnete Punkte in etwa 1 mm Abstand vermessen. Zirka 10 bezeichnete Punkte wurden an den vorher angebrachten


22

Markierungen vermessen, da es nur über diese möglich ist, die Position des zu messenden Objektes zu verändern und die aus verschiedenen Perspektiven aufgenommenen Meßdaten zu überlagern.

Pro Kiefermodell wurden etwa 900 Rasterpunkte mit einer Rasterbreite von 3 mm vermessen. Zusätzlich wurden etwa 10 bezeichnete Punkte je Kiefer erfaßt. Dann wurden die Zähne in die Alveolen gesetzt und an jedem Zahn drei markierte Punkte vermessen, die ebenfalls bei der Messung des isolierten Zahnes vermessen worden waren.

Nun wurden die Kiefer in Zentralokklusion gestellt und drei Punkte verschiedener Zähne des Oberkiefers bezüglich der Meßeinstellung für den Unterkiefer vermessen. Dieses dient dazu, die erhaltenen Einzelkiefer-Datensätze einander zuzuordnen (siehe 2.4.5.5.11. Unterpunkt: Spezialpunkte zuordnen auf Seite 88).

Abschließend wurde der Oberkiefer in einen SAM-Artikulator in einer ungefähr typischen Position einartikuliert. Dann wurden die Zentren der Kiefergelenksköpfchen und der Mittelpunkt der Verbindungslinie der Infraorbitalpunkte (als Äquivalent der Kontaktpunkt des Stützstifts auf dem Stützstiftteller) vermessen.

2.2.2. Datenformate

2.2.2.1. Datenformate der Meßapparatur

Das zum ”Reflex Mikroskope“ gehörende Programm C3D speichert die Meßergebnisse in einer MS-DOS®-Textdatei ohne Formatierung mit der Extension *.xyz. Am Anfang jeder Datei steht der Objektname, aus dem auch der Dateiname gebildet wird, dann Datum und Uhrzeit, so zum Beispiel:

Jede Messung eines Punktes ergibt eine 23 Byte lange Zeile.

Zuerst erscheinen die bezeichneten, dann die unbezeichneten Punkte, schließlich die Rasterpunkte (grid points):


23

Zum Beispiel:

Zum Beispiel:

Zum Beispiel

Teilweise erscheinen Nonsenszeilen, wie:

0 0 00

-1 300.000 -1 300.000 0

Diese scheinen vom C3D-Programm generiert zu werden, wenn eine neue Perspektive eingestellt wird oder wenn es zu einer leichten Störung bei der Motorsteuerung kommt. Die Nonsenszeilen wurden gelöscht.


24

2.2.2.2. Abgeleitete Datenformate

Die erhaltene Textdatei *.xyz wurde mit Hilfe eines Editors, hier MS Word® 6.0, verändert, und erneut als ASCII-Datei gespeichert.

Leerzeichen wurden grundsätzlich eliminiert und die Koordinaten durch Kommata getrennt. Nonsens- sowie Informationszeilen wurden gelöscht.

Es wurden drei verschiedene Dateien gebildet, je nach Beschaffenheit der gemessenen Punkte:


25

2.2.3. Logik des Programmteils ”Objekt erstellen“

Die durch Vermessen der Zahn- oder Kieferobjekte gewonnenen Punkte müssen noch in Beziehung zueinander gesetzt werden. Zwei Punkte bilden Anfangs- und Endpunkte einer Kante. Eine Kante begrenzt immer genau zwei Flächen. Jede Fläche wird durch genau drei Punkte (und drei Kanten) bestimmt. Jede Fläche hat bezogen auf das Objekt eine Außen- und eine Innenseite. Liegen drei Punkte im Uhrzeigersinn, beschreiben sie eine Außenfläche (Korkenzieherregel). Die Kantenorientierung zweier Begrenzungsflächen bezogen auf Anfangs- und Endpunkt einer Kante kann nie gleich sein, sonst würde wie bei einem MÖBIUSschen Band eine Innenfläche an eine Kante einer Außenfläche grenzen.

2.3. Mathematische Problemlösungen

2.3.1. Transformation

Um einen Zahn entsprechend seinen zahnmedizinischen Richtungsbezeichnungen rotieren und verschieben zu können, sind die Koordinaten seiner Punkte auf ein Koordinatensystem bezogen, das sich an der Morphologie des Zahnes orientiert (siehe 2.3.9. Berechnung der Achsen auf Seite 40). Die Stellung des Zahnes in seinem Kiefer ergibt sich durch Multiplikation der Zahnkoordinaten mit zwei Matrizes (xx ist die internationale Zahnbezeichnung):

  1. Die Matrix ”modellMxx“ beschreibt die ursprüngliche Stellung des Zahnes in seinem Kiefer.
  2. Die Matrix ”aendMxx“ beschreibt die Änderung der Stellung des Zahnes von der ursprünglichen Stellung im Kiefer, die durch Rotationen und Verschiebungen erhalten wurde (siehe 2.3.3. Rückberechnung aller Stellungsänderungen aus der Anfangs- und Endstellung der Objekte auf Seite 27).

Die Ober- und Unterkiefer erhalten ebenfalls ihre eigenen Koordinatensysteme, damit diese bei Artikulationsbewegungen oder LeFort-Osteotomien unabhängig voneinander verschoben und rotiert werden können. Zur Übertragung der Kiefer- und transformierten Zahnkoordinaten in eine ”virtuelle Welt“ stehen wiederum zwei Matrizes zur Verfügung:

  1. Die Matrizes ”modellMOK“ (für den Oberkiefer) und modellMUK (für den Unterkiefer) beschreiben die ursprüngliche Stellung der Kiefer in der Welt.

    26

  2. Die Matrizes ”aendMOK“ (für den Oberkiefer) und aendMUK (für den Unterkiefer) beschreiben die Änderung der Stellung der Kiefer von der ursprünglichen Stellung in der Welt.

Alle Berechnungen im Programm ”VirtSet“ werden nach der Transformation der Zahn- und Kieferpunkte in Weltkoordinaten durchgeführt.

Um die Zahn- und Kieferobjekte in den Programmfenstern darstellen zu können, müssen die Weltkoordinaten aller Punkte durch die Matrix ”WC_DC“ in Fensterkoordinaten übertragen werden (zu Einstellung siehe 2.4.2.5.3. Unterpunkt: Fenster, Parameter auf Seite 58).

Um also einen Punkt des Zahnes 31 in einem Fenster darstellen zu können, muß dieser folgende Transformationen erfahren:

Zahnkoordinaten 31 rarr modellM31 rarr aendM31 rarr modellMUK rarr aendMUK rarr WC_DC rarr Fensterkoordinaten 31

2.3.2. Kommutativgesetz bei Matrixrechnung

Jeder Zahn besitzt ein eigenes Koordinatensystem, auf das sich jeder Punkt des Zahnes bezieht. Um Zähne in Beziehung zueinander setzen zu können, definiert man ein Weltkoordinatensystem (zum Beispiel Mundhöhle). Es muß nun eine Rechenvorschrift (Matrix) existieren, um jeden Punkt des Zahnkoordinatensystems in das Weltkoordinatensystem übertragen zu können. Diese wird Transformationsmatrix genannt. Transformationen lassen sich unterscheiden in Rotationen, Verschiebungen und Skalierungen. Für jeden dieser Fälle gibt es spezielle Matrizes. Skalierungen finden in diesem Programm keine Verwendung. Die einzelnen Matrizes werden multiplikativ zur Transformationsmatrix zusammengefaßt. Bei der Matrixmultiplikation gilt das Kommutativgesetz (Vertauschungsgesetz) nicht. Das bedeutet, daß die Endstellung eines Objektes nach Rotation um seine X-Achse um einen Winkel a und um seine Y-Achse um einen Winkel â eine andere ist als die Rotation um diese Achsen in umgekehrter Reihenfolge. Bei einer Kombination aus Translationen und Rotationen gilt dasselbe. Es wurde deshalb folgende Reihenfolge für die Transformationsschritte festgelegt:

  1. Rotation um die X-Achse (Kippungen nach vestibulär und oral)
  2. Rotation um die Y-Achse (Kippungen nach mesial und distal)
  3. Rotation um die Z-Achse (rechts und links herum bei Sicht auf die Okklusalfläche)
  4. Translation entlang der X-Achse (Verschiebungen nach mesial und distal)
  5. Translation entlang der Y-Achse (Verschiebungen nach vestibulär und oral)

    27

  6. Translation entlang der Z-Achse (Verschiebungen nach apikal und okklusal)

Diese Transformationen werden nicht direkt auf das Weltkoordinatensystem übertragen, sondern auf das jeweilige Zahnkoordinatensystem bezogen, und erst dann auf das Weltkoordinatensystem übertragen.

Bei Rotationen eines Zahnes um einen Winkel ã erhält man die Gesamttransformation (Matrix Tges), indem die Zahnrotationsachse auf den Ursprung des Weltkoordinatensystems verschoben wird (Matrix: V). Dann wird sie durch Rotationen um die Welt-X-Achse (Matrix: Rx) und um die Welt-Y-Achse (Matrix: Ry) so gedreht, daß sie kongruent mit der positiven Welt-Z-Achse wird. Hier erfolgt die eigentliche Rotation um den Winkel ã (Matrix: Rz). Schließlich werden alle Rotationen und Verschiebungen bis auf Matrix: Rz rückgängig gemacht (Matrix: Ry', Matrix: Rx', Matrix: V'):

Tges = (V * Rx * Ry * Rz * Ry' * Rx' * V')

Hierbei ist es entscheidend, in welchem der acht Oktanten des Raumes die Rotationsachse am Anfang steht, da die Rotationen sowohl rechts als auch links herum stattfinden können.

Verschiebungen werden im Weltkoordinatensystem direkt durchgeführt, nachdem die Verschiebevektoren transformiert wurden.

2.3.3. Rückberechnung aller Stellungsänderungen aus der Anfangs- und Endposition der Objekte

Problem:

Hat man die einzelnen Zähne im Rahmen des computerisierten Setups rotiert und bewegt, will man am Ende in der Regel die jeweiligen Rotations- und Translationswerte wissen, die von der Ausgangs- zur Endstellung führen. Dieses darf nicht in Form einer einfachen Summation der durchgeführten Schritte geschehen, da sich Rundungsfehler kumulieren würden.

Lösung:

Die Stellung eines Zahnes in seinem Kiefer wird durch zwei Matrizes bestimmt (xx ist die internationale Zahnbezeichnung):


28

Aus dem Unterschied beider Matrizes werden die durchgeführten Rotationen und Translationen errechnet.

Zur Berechnung der Rotationen werden die Koordinatensysteme, die man durch Anwendung beider Matritzes erhält, auf den Ursprung des Weltkoordinatensystems verschoben. Rotationen sind jeweils um die X-, Y- und Z-Achse möglich. Diese Rotationen sind jedoch nicht voneinander unabhängig, das heißt, wird um eine Achse gedreht, so ändern die beiden anderen Achsen ihre Stellung.

Die Berechnung erfolgt folgendermaßen:

Es wird zunächst die Rotation um die X-Achse ermittelt. Dazu muß die Z-Achse der Endstellung auf die Y-Z-Ebene der Anfangsstellung projiziert werden. Dies geschieht, indem der Abstand des Punktes, der vom Einheitsvektor der Z-Achse der Endstellung repräsentiert wird, zur Y-Z-Ebene der Anfangstellung errechnet wird. Dieser Wert mit dem Einheitsvektor der X-Achse in der Anfangsstellung multipliziert, wird vom Einheitsvektor der Z-Achse vektoriell subtrahiert. Das Ergebnis ist ein Punkt auf der projizierten Z-Achse der Endstellung.

Der Winkel delta zwischen der Z-Achse der Anfangsstellung und der projizierten Z-Achse der Endstellung ist der gewünschte Rotationswinkel um die X-Achse oder für die Kippung nach vestibulär oder oral.

Diese Rotation um die X-Achse wird nun durchgeführt und man erhält die Y- und Z-Achsen der Zwischenstellung 1.


29

Der Winkel epsilon zwischen den Z-Achsen der Zwischenstellung 1 und der Endstellung ist der Rotationswinkel um die Y-Achse der Zwischenstellung 1 oder für die Kippung nach mesial oder distal.

Diese Rotation um die Y-Achse der Zwischenstellung 1 wird nun durchgeführt, und man erhält die Zwischenstellung 2. Die Z-Achsen der Zwischenstellung 2 und der Endstellung sind nun kongruent. Nicht jedoch zwingend die X- und Y-Achsen dieser Stellungen.

Der Winkel phis zwischen den X-Achsen der Zwischenstellung 2 und der Endstellung ist der Rotationswinkel um die Z-Achse der Zwischenstellung 2 (oder Endstellung) oder für die Rotation rechts oder links herum bei Sicht auf die Okklusionsfläche eines Zahnes.

Die vom Benutzer verursachten Translationen werden wie folgt zurückberechnet:


30

Es wird der Vektor berechnet, der sich vom Ursprungspunkt des Koordinatensystems des Zahnes in seiner Anfangsstellung bis zum Ursprungspunkt des Koordinatensystems in der Endstellung erstreckt. Dieser wird nun in Beziehung gesetzt zu den Richtungsvektoren des Koordinatensystems in der Endstellung, das heißt es werden entsprechend der unbekannten Anteile der Richtungsvektoren drei Gleichungen mit drei Unbekannten gebildet, die mit Hilfe der CRAMERschen Regel gelöst werden.

2.3.4. Schnittberechnung

Da in der vorliegenden Arbeit Flächen als Dreiecksflächen definiert werden und eine Ebene durch drei Punkte festgelegt ist, stellt jede Fläche einen Teil einer Ebene dar. Überlappen sich zwei Zähne, so müssen sich Flächen der Zähne schneiden. Mathematisch bedeutet dies den Schnitt zweier Ebenen. Sind zwei Ebenen nicht gleich oder parallel, so schneiden sie sich in einer Schnittgeraden. Da die Dreiecksflächen nur einen Teil der jeweiligen Ebene ausmachen, bedarf es noch einer Prüfung, ob die Schnittgerade der Ebenen tatsächlich die Dreieckskanten schneidet. Hierbei werden die Schnittpunkte zwischen der Ebenenschnittgerade und den aus den Dreieckskanten hervorgehenden Geraden auf ihre Position zwischen den Eckpunkten geprüft (zwei Geraden einer Ebene schneiden sich in einem Punkt). Sind beide Dreiecksflächen durch die Ebenenschnittgerade geschnitten, wird noch geprüft, ob sie in demselben Bereich der Schnittgerade geschnitten wurden, denn nur dann liegt tatsächlich ein Schnitt dieser Flächen vor. Aus allen Schnittpunkten der Kanten der Schnittflächen zweier Zähne wird die Schnittebene berechnet. Die Breite jedes überlappenden Teiles (des Stripebenenquaders) ergibt sich aus dem größten Abstand der Punkte des überlappenden Teiles von der Schnittebene.

Berechnung der Schnittpunkte der Dreieckskanten mit der Ebenenschnittgerade:

Bei drei Punkten P1, P2, P3 eines Dreiecks gibt es drei Kanten. Jede Kante wird durch eine Geradengleichung beschrieben:

Kante1: , wobei gilt: .

Kante2: , wobei gilt: .

Kante3: , wobei gilt: .

und sind die Vektoren zu den Punkten P1, P2 und P3.

ist der Vektor zu einem gesuchten Punkt.


31

m,n und o sind Variablen.

Die Kante3 läßt sich auch durch die Geradengleichungen von Kante1 und Kante2 beschreiben:

Kante3: ,

wobei gilt: ,

und

.

Diese Gleichung stellt einen Spezialfall einer Ebenengleichung dar.

Die Gleichung der Ebenenschnittgerade ist:

und sind Vektoren zu Punkten der Schnittgeraden.

f ist eine Variable.

Um den Schnittpunkt der Geraden mit den Kanten zu ermitteln, werden die Gleichungen gleich gesetzt:

(Exemplarisch für die Kante1)

Da jeder Punkt drei Koordinaten besitzt, können drei Gleichungen für zwei Unbekannte gebildet werden. Eine Gleichung wird also nicht benötigt, um das Gleichungssystem zu lösen. Da die Geraden in einer gemeinsamen Ebene liegen müssen, dürfen sie nur nicht gleich oder parallel sein, um einen Schnittpunkt zu erhalten.

Die Lösung für die Unbekannten lautet:

f = (P1x + m*(P2x- P1x) - S1x)/(S2x - S1x)

m = (S1y-P1y+(S2y-S1y)* P1x /(S2x-S1x)-(S2y-S1y)*S1x/(S2x-S1x)) / ((P2y-P1y)-(S2y-S1y)*(P2x- P1x)/(S2x-S1x))

ist also , so existiert ein Schnittpunkt mit der Kante.

Kongruenzüberprüfung der geschnittenen Abschnitte der Ebenenschnittgerade:

Die Ebenenschnittgerade schneidet die Dreieckskanten üblicherweise in zwei Punkten. Ausnahme: sie berührt das Dreieck tangential in einem Eckpunkt. Man erhält also zwei Paare von Schnittpunkten, die nur dann gleiche Bereiche auf der Ebenenschnittgerade markieren, wenn ein Schnittpunktepaar existiert, das mindestens einen Punkt des anderen Paares einschließt. Es wird aus jedem Schnittpunktepaar eine Geradengleichung gebildet, die auf die Punkte des anderen Punktepaares angewendet wird.


32

Geradengleichung des ersten Paares

, erstes Paar Vektoren zu den Schnittpunkten

, zweites Paar Vektoren zu den Schnittpunkten

i ist eine Variable.

Auf ersten Punkt des zweiten Paares angewendet:

Ist 0 i 1 , so liegt der Punkt des zweiten Paares S3 zwischen den Punkten des ersten Paares S1 und S2. Trifft die Bedingung zu, so existiert ein sich überlappender Bereich auf der Ebenenschnittgerade.

Berechnung der Breite zwischen der Schnittebene und den überlappenden Teilen der Zähne:>

Es wird aus der Dreipunktegleichung der Schnittebene die Hessesche Normalenform gebildet. Diese bezeichnet einen Normaleneinheitsvektor ( Länge=1 ), der vom Nullpunkt zur Ebene zeigt und senkrecht zur Ebene steht, und den Abstand vom Nullpunkt zur Ebene in Richtung dieses Vektors.

Die Punktrichtungsgleichung der Ebene lautet:

Der Normalenvektor der Ebene steht senkrecht auf den Richtungsvektoren. Man bildet ihn aus dem Vektorprodukt der Richtungsvektoren.

Nx = (P2y - P1y) * (P3z - P1z) - (P2z - P1z) * (P3y - P1y)

Ny = - ( (P2x - P1x) * (P3z - P1z) - (P2z - P1z) * (P3x - P1x) )

Nz = (P2x - P1x) * (P3y - P1y) - (P2y - P1y) * (P3x - P1x)

Der Normalenvektor wird zum Normaleneinheitsvektor , wenn man die Komponenten des Vektors durch die Gesamtlänge des Vektors teilt.

Die allgemeine Normalenform für eine Ebene lautet:

ist ein gesuchter Punkt der Ebene.


33

ist ein bekannter Punkt der Ebene.

Man kann an Stelle von den bekannten Punkt nehmen und erhält, wenn man definiert

und d 0,

die Hessesche Normalenform für die Ebene:

.

Gesucht ist die Breite jedes überlappenden Teiles oder der größte Abstand der Punkte des überlappenden Teils von der Schnittebene. Abstandsberechnungen von der Schnittebene lassen sich leicht durch die Hessesche Normalenform der Ebene berechnen. Man kann zu jedem Punkt des überlappenden Teils eines Zahnes eine Parallelebene zur Schnittebene bilden, indem man nur die Abstandskonstante d neu berechnet. Da die neue Ebene parallel zur Schnittebene ist, bleibt der Normaleneinheitsvektor gleich:

Vektor zu einem beliebigen Punkt PX des Zahnes.

dX = dX ist der Abstand der Parallelebene zum Nullpunkt.

Vergleicht man die verschiedenen Abstände der Parallelebenen durch alle Punkte mit dem Abstand der Schnittebene, so erhält man aus der größten Differenz dieser Abstände die gesuchte Breite des überlappenden Stückes.

Verschiebung der Schnittebene:

Zur Verschiebung der Schnittebene addiert, beziehungsweise subtrahiert man vom bekannten Punkt der Normalengleichung der Ebene ein gewünschtes Vielfaches der Normaleneinheitsvektors.

Normalengleichung der Ebene:

Beispiel:

Die Ebene soll um 8 Einheiten vom Nullpunkt weggeschoben

werden:


34

2.3.5. Berechnungen bei der Artikulation

Bei der Artikulation wird im Programm ”VirtSet“ ein SAM®-Artikulator simuliert. Das Kiefergelenk wird zu einem Dreh- und linearen Gleitgelenk abstrahiert. Einstellbar sind die Koordinaten für die Mittelpunkte der Kiefergelenksköpfchen, die Winkel für die rechte und linke Kiefergelenksbahnneigung, die rechten und linken BENNETT-Winkel und die Länge der Artikulationsbewegung. Für die Pro- und die Laterotrusionen wird jeweils ein Artikulationsweg gebildet. Jeder Artikulationsweg wird zur Berechnung in einzelne Schritte aufgeteilt. Bei jedem Schritt wird zuerst eine Verschiebung der Kiefergelenksköpfchen durchgeführt. Nun stimmt die Kontaktsituation zwischen Oberkiefer und Unterkiefer nicht mehr. Jeder Punkt aller Unterkieferzähne wird nun daraufhin geprüft, wo ein diesen Punkt berührender Kreisbogen, dessen Mittelpunkt auf der Rotationsachse liegt, die durch die neue Stellung der Kiefergelenksköpfchen gebildet wird, und der zu dieser Achse senkrecht steht, auf einen Oberkieferzahn trifft. Existiert am Oberkieferzahn eine Berührung durch diesen Kreisbogen, so stellt dies mathematisch den Schnitt zwischen einer Dreiecksfläche (Teilfläche eines Zahnes) und einem Kreisbogen dar:

Die Dreiecksfläche ist Teil einer Ebene. Deren Punktrichtungsgleichung ist:

I

wobei i und j Variablen sind und

Vektoren darstellen.

Ist ein Vektor zu einem Punkt X der Dreiecksfläche, dann gilt:

,

und

.


35

Der Kreisbogen um die Kondylenachse ist ebenfalls Teil einer Ebene, auf der die Kondylenachse senkrecht steht. Es wird die HESSEsche Normalenform für die Ebene verwendet.

ist der Vektor zu einem Punkt X eines Unterkieferzahnes.

ist der Vektor zu ein Punkt D auf der Kondylenachse, der lotrecht zu X ist.

ist der normierte Richtungsvektor der Kondylenachse.

r ist der Radius des Kreisbogens.

II I in II

zwa, zwb, zwc sind Zwischenwerte zur Vereinfachung

i= (zwa -j*zwb)/zwc in I


36

sind Vereinfachungsvektoren

III

Dies ist die Geradengleichung des Ebenenschnittes.

Da der Schnittpunkt auf einem Kreisbogen liegen soll, gilt:

Der Betrag ist gleich dem Radius des Kreisbogens r.

IV IV in III

p, q sind Glieder der quadratischen Ergänzungsformel

Faßt man die Gleichungen zusammen, so erhält man eine quadratische Gleichung gemischten Typs, die man einfach lösen kann. Es sind zwei, eine oder keine Lösung möglich. Die Anzahl der Lösungen richtet sich danach, ob der Kreisbogen die Dreiecksflächenebene schneidet, tangential berührt oder keinen Kontakt hat.

Für die Diskriminante D gilt:

  1. Fall zwei Lösungen:
    Ist D > 0, existieren die Lösungen j1 und j2:


  2. Fall eine Lösung:
    Ist D = 0, dann existiert die Lösung j:
    j = -p/2
  3. Fall keine Lösung:
    Ist D<0, ist j nicht definiert.


37

Die berechneten Schnittpunkte werden auf Position innerhalb der Dreicksfläche geprüft. Für alle tatsächlichen Schnittpunkte der Kreisbögen an Unterkieferpunkten mit Oberkieferdreiecksflächen werden die Winkel der Kreisbögen berechnet. Mit dem kleinsten dieser Winkel erfolgt eine Rotation um die Rotationsachse, die durch die neue Stellung der Kiefergelenksköpfchen gebildet wird. Es entsteht dadurch ein erneuten Kontakt zwischen Ober- und Unterkieferzähnen.

2.3.6. Kontaktpunktberechnung

Die Kontaktpunktsuche stellt die Veränderung der Stellung eines Zahnes bezüglich seiner approximalen Nachbarzähne und Antagonisten dar. Sie setzt sich aus Verschiebungen und Rotationen zusammen. Die Entscheidung, welche Strategie angewandt wird, richtet sich nach der Anzahl der aktuellen Kontaktpunkte:

2.3.7. Berechnungen im Programmteil ”Objekt erstellen“

Der Objektaufbau erfolgt über eine erste sogenannte Startkante, diese wird in der Regel durch die ersten beiden gemessenen Punkte gebildet, es sei denn, diese seien zu weit voneinander entfernt, um als benachbart bezeichnet werden zu können. Um die erste Fläche zu bilden, wird zu der Startkante ein benachbarter Punkt ermittelt. Die Verbindung dieses Punktes jeweils mit Anfangs- und Endpunkt der Startkante bildet die nächsten Kanten. Entsprechend erfolgt die Bildung der weiteren Kanten und Flächen. Damit sichergestellt werden kann, daß allen Kanten genau zwei Flächen zugeordnet werden und keine "Löcher" in der berechneten Oberfläche enthalten sind, werden während der Objektberechnung zwei Listen bearbeitet:

Offene-Kanten-Liste:

In dieser Liste sind alle Kanten enthalten, denen nur eine Fläche zugeordnet ist (Kanten müssen zwei Flächen enthalten, sonst sind "offene" Bereiche oder "Löcher" im Objekt). Sichtbar sind die


39

offenen Kanten im Programm ”VirtSet“ als grüne Wachstumsgrenze. Nacheinander wird jeder offenen Kante ein benachbarter Punkt zugeordnet und mit diesem eine neue Fläche gebildet.

Punkt-enthält-offene-Kanten-Liste:

In dieser Liste wird zu jedem Punkt die Anzahl der "offenen" Kanten festgehalten, die ihn als Anfangs- oder Endpunkt enthalten. Der Sinn ist, einen Punkt aus dem Berechnungsverfahren herauszunehmen, sobald um ihn herum ein geschlossener Bereich von Flächen existiert.

Zu jeder offenen Kante werden die nächsten zehn Punkte ermittelt, zu denen von dem Anfangs- oder Endpunkt eine offene Kante oder noch keine Kante besteht. Existiert beispielsweise vom Anfangspunkt der offenen Kante zu einem benachbarten Punkt eine Kante, der schon zwei Flächen zugeordnet wurden, so muß dieser Punkt für die Berechnung der aktuellen Fläche ausscheiden. Aus den zehn Punkten wird der geeignetste ausgewählt. Dieser sollte möglichst mit den beiden Punkten der vorhandenen offenen Kante ein gleichschenkliges Dreieck bilden und es sollten keine anderen Punkte dazwischen liegen.

2.3.8. Schnittpunktberechnung

Im Programmteil ”Objekt erstellen“ wird mit zwei Fenstern gearbeitet, in denen das zu erstellende Objekt aus unterschiedlichen Perspektiven dargestellt wird (siehe 2.4.5.1. Bedienungshinweise auf Seite 78). Die Punktmarkierung erfolgt für jedes Fenster zweidimensional, das heißt, es sind die X- und Y-Fensterkoordinaten bekannt. Dreidimensional bezeichnen die Punktmarkierungen zwei Geraden, die senkrecht zur Bildschirmebene stehen und deren Z-Koordinaten variabel sind.

Der Schnittpunkt dieser zwei Geraden im Raum wird berechnet, indem man die Gleichungen der Geraden gleichsetzt. Da zwei Punkte jeder Geraden bekannt sind (bei gleichen X- und Y-Koordinaten zwei beliebige, aber verschiedene Z-Koordinaten), werden nach Transformation der Punkte von Fensterkoordinaten in Weltkoordinaten die Punktrichtungsgleichungen verwendet. Nach Auflösung des Gleichungssystems lassen sich die zwei unbekannten Laufvariablen durch drei Gleichungen ermitteln, so daß man für jede Variable maximal drei Lösungen entsprechend den Raumebenen (X-Y-, X-Z- und Y-Z-Ebene) erhält, sofern die Geraden nicht parallel zu einer der Raumachsen sind. Wurden bei der Fenstereinstellung (siehe 2.4.2.5.3. Unterpunkt: Fenster, Parameter auf Seite 58) zwei parallele Perspektiven gewählt, so liegen die Geraden parallel zueinander und es gibt keine Lösung.


40

Schneiden sich die Geraden tatsächlich, so sind die Lösungen bezogen auf jede Variable identisch.

Sind die Geraden jedoch windschief, so repräsentiert jede Lösung den Schnitt der Geraden in der Projektion auf die Raumebenen. Aus den ermittelten maximal sechs Schnittpunkten wird der Mittelpunkt gebildet. Dieser liegt etwa mittig an der engsten Stelle zwischen den windschiefen Geraden.

2.3.9. Berechnung der Achsen

Zahnobjekt:

Wurde das Zahnobjekt einschließlich Wurzel und Spezialpunkten berechnet, erfolgt dessen genaue Positionierung im zahnspezifischen Koordinatensystem. Der Mittelpunkt M der Strecke zwischen dem mesialen Approximalpunkt MA und dem distalen Approximalpunkt DA wird zum neuen Ursprungspunkt des Zahnkoordinatensystems, das heißt die Koordinaten aller Punkte und Spezialpunkte werden entsprechend dem Vektor verschoben. Vom apikalen Punkt AP wird das Lot L auf diese Strecke gefällt. Der vom Punkt L zum neuen Ursprung M reichende Vektor dient zur Korrektur des apikalen Punktes. Der korrigierte apikale Punkt APz liegt nun auf einer Ebene durch den neuen Ursprung M, zu der die Strecke zwischen den approximalen Punkten, MA und DA, senkrecht steht.

Das Zahnobjekt wird im nächsten Schritt so gedreht, daß der Vektor, der vom Ursprung M zum korrigierten apikalen Punkt APz weist, kongruent zur Z-Achse wird. Dann wird das Zahnobjekt um die Z-Achse gedreht, bis der Vektor, der vom Ursprung M zum mesialen Approximalpunkt


41

MA weist, kongruent zur X-Achse wird. Damit sind die Rotationen abgeschlossen. Nun werden noch die Werte für die restlichen Standardspezialpunkte ergänzt. Der okklusale Punkt enthält einen Wert für die negative Z-Achse. Abhängig davon, in welchem Quadranten sich das Zahnobjekt befindet, werden der vestibuläre und der orale Punkt mit Werten der positiven oder negativen Y-Achse ergänzt. Im ersten und dritten Quadranten erhält der orale Punkt einen Wert auf der positiven Y-Achse, der vestibuläre Punkt entsprechend einen negativen. Im zweiten und vierten Quadranten sind die Verhältnisse umgekehrt.

Kieferobjekt:

Die Berechnung der Achsen eines Kieferobjektes erfolgt entsprechend der eines Zahnobjektes. Zur Berechnung des Koordinatensystems des Kieferobjektes werden drei Spezialpunkte verlangt, zwei zur Berechnung der X-Achse und einer zur Berechnung der Y-Achse. Der Mittelpunkt der Strecke zwischen den beiden Punkten für die X-Achse wird zum neuen Ursprungspunkt. Vom Punkt für die Y-Achse wird nun das Lot auf diese Strecke gefällt. Der vom neuen Ursprung zum sich ergebenden Punkt reichende Vektor dient zur Korrektur des Y-Achs-Punktes. Der korrigierte Y-Achs-Punkt liegt nun auf einer Ebene durch den Ursprung, zu der die Strecke zwischen den X-Achs-Punkten senkrecht steht. Das alte Koordinatensystem wird nun so gedreht, daß die Y-Achse kongruent zu dem Vektor wird, der vom Ursprung zum Y-Achs-Punkt weist. Dann wird das Koordinatensystem um die Y-Achse gedreht, bis die X-Achse kongruent zu dem Vektor wird, der vom Ursprung zum ersten X-Achspunkt weist. Die Stellung der Z-Achse ist durch die Definition eines kartesischen Koordinatensystems bekannt.

Im Fall der Frasaco®-Kiefer-Objekte wurde die Y-Achse nach vorne durch den Inzisivus-Punkt gewählt, die X-Achse verläuft etwa durch die beiden zweiten Molaren in Höhe des Zahnfleischsaumes.

2.3.10. Berechnungen bei der Zuordnung der Spezialpunkte

Da alle Punkte eines Zahnes in zahnspezifischen Koordinaten gespeichert sind, bedarf es einer Rechenvorschrift (Matrix), die es erlaubt, die zahnspezifischen Koordinaten in die Koordinaten des jeweiligen Kiefers umzurechnen. Zur Berechnung wurden bei der Einzelzahn- und der jeweiligen Kiefervermessung drei paarweise, im Rahmen der Meßungenauigkeit einander entsprechende Spezialpunkte pro Zahn ermittelt.

Dazu sind folgende Schritte notwendig:


42

Sofern die drei Punkte nicht auf einer Gerade liegen, bilden sie jeweils eine Ebene (Ez für den Zahn und Ek für den Kiefer).

Es werden die Ebenennormalvektoren für diese Ebenen gebildet (ENVz und ENVk). Aus diesen wird das Vektorprodukt (VPzk) berechnet. Die Rotation um diesen Vektor VPzk erlaubt es, die Ebene Ez in die Ebene Ez‘ zu überführen, die kongruent mit der Ebene Ek ist. Aus den drei Spezialpunkten des Zahnes (Pz1, Pz2 und Pz3) wird durch diese Rotation Pz1‘, Pz2‘ und Pz3‘.

Nun erfolgt eine Verschiebung von Pz1‘, Pz2‘ und Pz3‘ in der Ebene Ez‘, so daß Pz1‘‘ kongruent mit dem ersten Spezialpunkt Pk1 des Kiefers wird (aus Pz2‘ wird Pz2‘‘ und aus Pz3‘ wird Pz3‘‘). Dann wird eine Rotation der Ebene Ez‘ um deren Normalvektor ENVz‘ am Punkt Pz1‘‘ durchgeführt, so daß der aus Pz2‘‘ resultierende Punkt Pz2‘‘‘ in derselben Richtung von Pz1‘‘ aus liegt wie der zweite Spezialpunkt des Kiefers Pk2 (Pz3‘‘‘ müßte entsprechend in etwa in derselben Richtung von Pz1‘‘ liegen wie Pk3). Wegen der Meßungenauigkeit sind Pz2‘‘‘ und Pz3‘‘‘ in der Regel nicht kongruent mit Ihren entsprechenden Kieferspezialpunkten Pk2 und Pk3.

Die Zusammenfassung der getätigten Veränderungen ergibt die Matrix zur Überführung des Zahnes von seinem Koordinatensystem an dessen Position im Kieferkoordinatensystem.

2.4. Bedienungsanleitung

2.4.1. Grundsätzliche Bedienungshinweise

Der Benutzer sollte in der Lage sein, die Grafikanzeige seines Computers selbständig einzustellen. Es wird eine Einstellung der Farbauflösung von 65536 Farben oder Echtfarben (True Color) empfohlen, da sonst die Ausgaben nicht sehr realistisch sind.

Der Benutzer muß mit der Bedienung der Maus in WINDOWS NT® oder WINDOWS 95® vertraut sein. Zur Interaktion mit dem Programm wird ein einfacher Tastendruck (Einfachklick genannt) auf die linke Maustaste benötigt. Mit diesem werden Menüpunkte und Unterpunkte aktiviert und Drucktasten (auf dem Bildschirm) der Werkzeuge und der Dialogfenster bedient. In den Menüfenstern ”Ansicht 1 bis 3“ und ”Artikulation“ wird durch einen Einfachklick auf die linke Maustaste ein Fadenkreuz an der Mausposition angezeigt. Dieses markiert den Bereich im Darstellungsfenster, der das neue Zentrum nach Verkleinerung oder Vergrößerung der Darstellung bildet. Durch einen Einfachklick auf die rechte Maustaste wird das Fadenkreuz wieder aufgehoben.

Ein Doppelklick auf die linke Maustaste führt in Dialogfenstern zu einem Selektieren der Feldinhalte.


43

In Dialogfenstern werden Änderungen nur wirksam, wenn die ”OK“-Taste gedrückt wird. Ein Druck auf die ”Abbrechen“-Taste oder auf die ”Esc“-Taste (auf der Tastatur) schließt das Dialogfenster, ohne Änderungen zu übernehmen.

2.4.2. Bedienungsanleitung Hauptmenü

2.4.2.1. Menüpunkt: Datei

Unter diesem Menüpunkt finden sich Datei- und Druckoperationen sowie der Programmausgang.

2.4.2.1.1. Unterpunkt: Öffnen

Nachdem man das Programm ”VirtSet“ gestartet hat, sind große Teile des Hauptmenüs nicht aktiviert. Man muß zuerst einen Patientendatensatz laden.

Es erscheint das Windows®-Datei-Öffnen-Dialogfenster, mit dessen Hilfe sich die zu öffnende Datei suchen und markieren läßt. Es ist nur möglich, eine Datei mit der Extension *.mts zu öffnen.

Die Beispieldatei heißt frasaco.mts und ist im Ordner Daten zu finden.


44

Wird nach erfolgter Auswahl die ”OK“-Taste gedrückt, erscheint das Dialogfenster ”Patient“. Hiermit kann man auf die Art der zu ladenden Zähne und Kiefer Einfluß nehmen.

Das Dialogfenster ”Patient“ enthält den Patientennamen und -vornamen und eine Liste, in der einige Eigenschaften der zu ladenden Zähne dargestellt werden. Neben der internationalen Zahnbezeichnung steht die Information, ob überhaupt ein Datensatz für den Zahn vorhanden ist oder fehlt. Dann folgen die Informationen, ob der Zahn am Computer extrahiert wurde und ob der Datensatz eines bereits gestrippten Zahnes verwendet wird.

Ist man mit der Auswahl nicht zufrieden, kann man die entsprechende Zeile mit dem Cursor aktivieren, wobei das Dialogfenster ”Patient Zahn“ erscheint.


45

Hiermit kann man nun die Einstellungen bezüglich Extraktion und Stripzustand ändern. Wird die Eigenschaft ”Gestrippt“ gewählt, obwohl ein entsprechender Datensatz nicht existiert, wird diese Einstellung ignoriert.

Wird in den Felder ”Geburtsdatum“ oder ”Erstellungsdatum“ eine Änderung vorgenommen., so erscheint das Dialogfenster ”Datum“, in dem die Eintragungen für den Tag, den Monat und das Jahr separat vorgenommen werden können.

Wurden alle Dialoge mit ”OK“ bestätigt, werden die Zahn- und Kieferdaten in den Hauptspeicher des Computers geladen. Dieser Vorgang kann einige Sekunden in Anspruch nehmen.

2.4.2.1.2. Unterpunkt: Drucke aktive Ansicht

Hier besteht die Möglichkeit, das gerade aktivierte Ansichtfenster auf einem Farb- oder Schwarz-Weiß-Drucker auszugeben. Der Drucker kann permanent in der Windows®- Systemsteuerung oder temporär in dem sich hier öffnenden Windows®-Drucken-Dialogfenster unter ”Einstellungen“ eingestellt werden.


46

Es können Probleme mit einigen Druckertreibern auftreten, da die Druckausgabe eines OpenGl®-Fensters besonders kompliziert ist. Erscheint ein kleines Fenster mit der Nachricht ”Ausgabe nicht möglich, bitte anderen Treiber wählen“, ist es notwendig, eine andere Einstellung des Druckertreibers zu verwenden, beziehungsweise einen anderen Druckertreiber auszuwählen.

2.4.2.1.3. Unterpunkt: Drucke alle Veränderungen

Es werden hiermit alle vorgenommenen Verschiebungen und Rotationen berechnet und als Zahlenwerte auf dem aktiven Drucker ausgegeben. Für jeden Zahn wird ein Seitenvorschub ausgeführt (siehe auch 2.4.2.1.2. Unterpunkt: aktive Ansicht auf Seite 45).

2.4.2.1.4. Unterpunkt: Ende

Mit diesem Unterpunkt kann man das Programm ”VirtSet“ verlassen.

Die aktuellen Programmeinstellungen werden in der Datei VirtSet.ini gespeichert. Der aktuelle Status jedes Zahnes wird in der anfangs geöffneten Patientendatei mit der Extension *.mts gespeichert.

2.4.2.2. Menüpunkt: Ansicht

Unter diesem Menüpunkt finden sich Operationen zur Anzeige und Werkzeuge zur Manipulation der Stellung von Zähnen und Kiefer. Ferner lassen sich verschiedene Ebenen anzeigen.


47

2.4.2.2.1. Unterpunkte: Ausgabe 1, Ausgabe 2, Ausgabe 3

Es erscheinen die Menüfenster ”Ansicht 1“, ”Ansicht 2“ oder ”Ansicht3“, in denen die aktivierten Zähne und Kiefer und eventuell Achsen, Bemaßungen und Ebenen dargestellt werden.

Immer, wenn eines der Ansichtfenster aktiviert wird, erscheint das Hauptmenü.

Einzelne Zähne und Kiefer werden mit Hilfe des Werkzeuges ”Zahnschema“ aktiviert (siehe 2.4.2.2.2. Unterpunkt: Zahnschema auf Seite 48).

Die Einstellungen für alle Fenster erfolgen im Menüpunkt Parameter (siehe 2.4.2.5. Menüpunkt: Parameter auf Seite 57):

Man kann sich durch die Ansichtfenster die ausgewählte Szene gleichzeitig von drei Aspekten ansehen.

2.4.2.2.2. Unterpunkt: Zahnschema

Es erscheint das Werkzeug ”Zahnschema“.

Damit werden die Zustände der bleibenden Zähne für die Ansichtfenster angezeigt. Das Werkzeug besteht aus zwei Reihen mit Drucktasten. In der oberen Reihe befinden sich Druckknöpfe für die möglichen bleibenden Oberkieferzähne. Die Drucktasten können drei verschiedene Zustände anzeigen:

Rechts von den 16 Drucktasten eines Kiefers befindet sich eine Taste, mit der sich gleichzeitig alle Oberkieferzähne selektieren lassen, rechts davon eine weitere Taste zum Selektieren des gesamten Oberkiefer-Alveolarkammes.

In der zweiten Reihe befinden sich die entsprechenden Drucktasten für die Unterkieferzähne und den Unterkiefer-Alveolarkamm.


49

2.4.2.2.3. Unterpunkt: Rotieren

Es erscheint das Werkzeug ”Rotieren“. Damit ist es möglich, den gerade aktivierten Zahn entsprechend seiner Achsen zu rotieren. Die Aktivierung eines Zahnes erfolgt durch das Werkzeug ”Aktiver Zahn“ (siehe 2.4.2.3.1. Unterpunkt: Aktiver Zahn auf Seite 54).

Das Werkzeug ”Rotieren“ enthält sechs Drucktasten in zwei Reihen. In der ersten Reihe befinden sich die Drucktasten für die Rotation nach vestibulär, für die Rotation nach mesial und für die Rotation um die Längsachse der Zahnes bei Blick auf die Okklusionsfläche entgegen dem Uhrzeigersinn oder ”links herum“.

In der zweiten Reihe befinden sich die Drucktasten für die Rotation nach lingual, distal und rechts um die Längsachse (jeweils von links nach rechts).

Die Lage der Rotationsachsen entspricht den Achsen eines kartesischen Koordinatensystems. Sie lassen sich durch den Menüpunkt: Ansicht - Unterpunkt: Achsen (siehe 2.4.2.2.9. auf Seite 53) anzeigen.

Der eingestellte Rotationswinkel wird im Werkzeug ”Aktiver Zahn“ in Grad angezeigt und kann dort ganzzahlig verändert werden (siehe 2.4.2.3.1. auf Seite 54).

Mit Hilfe der Option ”Bemaßung“ im Menüpunkt: Zahn - Unterpunkt: Bemaßung läßt sich der gewünschte Rotationswinkel ablesen (siehe 2.4.2.3.5. auf Seite 56).

Nachdem eine Rotation (oder Verschiebung) ausgeführt wurde, wird sofort geprüft, ob es zu einem Überlappen mit den Antagonisten oder den benachbarten Zähnen des aktiven Zahnes gekommen ist. Ist dies der Fall, so werden die überlappenden Flächen graphisch markiert.

2.4.2.2.4. Unterpunkt: Verschieben

Es erscheint das Werkzeug ”Verschieben“. Damit ist es möglich, den gerade aktivierten Zahn entlang seiner Achsen zu verschieben.


50

Das Werkzeug enthält sechs Drucktasten in zwei Reihen. In der ersten Reihe befinden sich die Tasten für eine Verschiebung nach mesial, vestibulär und apikal. In der zweiten Reihe liegen die Tasten für eine Verschiebung nach distal, oral und okklusal (jeweils von links nach rechts).

2.4.2.2.5. Unterpunkt: Kontakt

Es erscheint das Werkzeug ”Kontakt“. Dieses ermöglicht die Kontaktsuche des aktiven Zahnes zu den Antagonisten oder benachbarten Zähnen.

Die erste Drucktaste erlaubt eine einfache Kontaktsuche zum Antagonisten. Der aktive Zahn wird entsprechend den Berechnungen verschoben oder rotiert (siehe 2.3.6. Kontaktpunktberechnung auf Seite 37).

Es erscheinen, während die Stellung berechnet wird, abwechselnd zwei Fortschritts-Anzeigen. Die erste zeigt die Suche nach dem geringsten Abstand an,

die zweite die Suche nach den momentanen Kontaktpunkten.

Die Berechnung wird so lange fortgesetzt, bis mindestens vier Kontaktpunkte gefunden wurden. Der Benutzer hat jedoch die Möglichkeit, durch Druck auf die ”Abbrechen“-Taste diesen Vorgang zu beenden. Es wird die Stellung, die beim Abbruch berechnet wurde, beibehalten.

Die zweite Drucktaste (von links nach rechts) erlaubt eine Okklusionsfindung unter Beibehaltung eines mesioapproximalen Kontaktpunktes. Besteht zu Beginn der Berechnung noch kein mesialer


51

Kontaktpunkt, so wird zuerst solch einer berechnet und der aktive Zahn entsprechend erst nach mesial, dann nach okklusal verschoben. Die Wurzelstellung der benachbarten Zähne kann ein Hindernis für die Berechnung eines approximaler Kontaktpunkt sein. Das Programm ermittelt dann einen Kontaktpunkt im Bereich der Zahnwurzeln, der an Stelle des koronalen Approximalkontaktes zu Berechnung herangezogen wird.

Die dritte Drucktaste dient zur Okklusionssuche unter Beibehaltung eines distoapproximalen Kontaktpunktes.

Die vierte Drucktaste verschiebt den aktiven Zahn entlang seiner mesiodistalen Achse bis zu einem Kontaktpunkt mit seinem mesialen Nachbarzahn.

Die fünfte Drucktaste verschiebt den aktiven Zahn entsprechend zum distalen Nachbarzahn.

Wurden Zähne extrahiert, werden die an deren Stelle zu findenden Zähne geprüft. Sind keine Zähne in der angegebenen Richtung mehr zu finden, zum Beispiel distal von Zahn 17 bei extrahiertem Zahn 18, wird der Befehl ignoriert.

2.4.2.2.6. Untermenü: Hauptebenen

2.4.2.2.6.1. Unterpunkt: Sagittalebene

Hiermit wird die Mediansagittalebene angezeigt. Die Farbe läßt sich mit dem Dialogfenster ”Ebenen, Farben“ (siehe 2.4.2.5.7. Unterpunkt: Ebenen, Farben auf Seite 64). Die Mediansagittalebene stellt die Y-Z-Ebene für die Koordinaten der Zähne und Kiefer dar. Die positiven X-Werte befinden sich vom Patienten aus betrachtet in der rechten Hemisphäre der Ebene.

2.4.2.2.6.2. Unterpunkt: Frontalebene

Es wird die Frontalebene angezeigt.


52

Die Frontalebene ist parallel zur X-Y-Ebene. Die positiven Z-Werte liegen vom Patienten aus betrachtet vor der X-Y-Ebene.

2.4.2.2.6.3. Unterpunkt: Horizontalebene

Es wird die Horizontalebene angezeigt.

Die Horizontalebene ist parallel zur X-Z-Ebene. Die positiven Y-Werte liegen vom Patienten aus betrachtet unterhalb der X-Z-Ebene.

2.4.2.2.7. Unterpunkt: Kauebene

Es wird die Kauebene angezeigt. Diese wird gebildet durch die disto-bukkalen Höckerspitzen der Zähne 37 und 47 und dem gedachten Berührungspunkt der Verlängerung der Schneidekanten der beiden mittleren Unterkieferinzisivi.

Die Einstellung der Koordinaten für die Kauebene erfolgt im Dialogfenster ”Kauebenen Parameter“ (siehe 2.4.2.5.8. Unterpunkt: Kauebene, Parameter auf Seite 64).


53

2.4.2.2.8. Unterpunkt: Originalposition dazu

Hiermit werden die Zähne zusätzlich zu ihrer Setup-Position in ihrer ursprünglichen Stellung angezeigt, um die Veränderungen graphisch sichtbar zu machen.

Die Farben und die Transparenz werden im Dialogfenster ”Material, Farben“ eingestellt (siehe 2.4.2.5.4. Unterpunkt: Material, Farben auf Seite 60).

2.4.2.2.9. Unterpunkt: Achsen

Es werden die Achsen der Zähne angezeigt. Die Achsen eines Zahns stellen ein kartesisches Koordinatensystem dar. Sie bilden die entsprechenden Rotationsachsen und gemäß ihrer Lage erfolgen die Verschiebungen. Die Achsen werden beim ”Objekt erstellen“ festgelegt (siehe 2.4.5..5.5. Unterpunkt: Zahn Achszuordnung auf Seite 87).

2.4.2.2.10. Unterpunkt: Oberkiefer

Es wird das Alveolarkammodell für den Oberkiefer angezeigt.

Dieser Menüpunkt ist identisch mit der Funktion der am weitesten rechts und oben liegenden Taste im Werkzeug ”Zahnschema“ (siehe 2.4.2.2.2. auf Seite 48).

2.4.2.2.11. Unterpunkt: Unterkiefer

Es wird das Alveolarkammodell für den Unterkiefer angezeigt.

Dieser Menüpunkt ist identisch mit der Funktion der am weitesten rechts und unten liegenden Taste im Werkzeug ”Zahnschema“ (siehe 2.4.2.2.2. auf Seite 48).


54

2.4.2.3. Menüpunkt: Zahn

2.4.2.3.1. Unterpunkt: Aktiver Zahn

Es erscheint am unteren Rand des Programmfensters eine Dialogleiste.

Diese beinhaltet drei Bereiche:

Bei Aktivierung der Wertefelder mit dem Mauszeiger erscheint ein Dialogfenster, in das man direkt den gewünschten Wert eingeben kann. Damit kann man sich ein allzu häufiges Drücken der Pfeiltasten ersparen.

Die Werkzeuge ”Rotieren“, ”Verschieben“ und ”Kontakt“ arbeiten erst, wenn mit Hilfe der Dialogleiste ”Aktiver Zahn“ ein selektierter Zahn aktiviert wurde.


55

2.4.2.3.2. Unterpunkt: Extrahieren

Es erscheint das Dialogfenster ”Objektauswahl“:

Dieses wird im Programm immer verwendet, wenn eine Zahneingabe erforderlich ist.

Aus einer Liste kann nun jeweils ein Zahn ausgesucht werden, der als extrahiert markiert wird. Daraufhin steht er für eine Berechnung im Programm nicht mehr zur Verfügung, es sei denn, die Extraktion würde wieder aufgehoben (siehe 2.4.2.6. Unterpunkt: Extraktion auf Seite 66).

2.4.2.3.3. Unterpunkt: Veränderung Ausgabe

Für den aktiven Zahn werden die Veränderungen bezüglich Verschieben und Rotieren berechnet und in dem Dialogfenster ”Ausgabe Werte“ ausgegeben.

Es handelt sich bei dieser Ausgabe um eine Neuberechnung und nicht um eine Summation der getätigten Bewegungen und Rotationen von der ursprünglichen Zahn- oder Kieferstellung ausgehend (siehe 2.3.3. Rückberechnung aller Stellungsänderungen aus der Anfangs- und Endposition der Objekte auf Seite 27).

Mit der Drucktaste mit dem schwarzen Pfeil nach unten im Listenfeld ”Zahn“ läßt sich ein anderer Zahn für die Berechnung der Veränderungen auswählen. Diese Auswahl ist unabhängig von der erfolgten Selektion der Zähne durch das Werkzeug ”Zahnschema“.


56

Man hat im Menüpunkt: Datei - Unterpunkt: Drucke alle Veränderungen die Möglichkeit, diese Veränderungen auszudrucken (siehe 2.4.2.1.3. auf Seite 46).

2.4.2.3.4. Unterpunkt: Prüfe Überschneidungen

Es wird der aktive Zahn auf Überschneidungen (oder Überlappungen) mit seinen möglichen Antagonisten und seinen mesial und distal gelegenen Nachbarzähnen getestet. Die Flächen, für die ein Überlappen festgestellt wurde, werden mit der Farbe für Überschneidungsflächen am Bildschirm angezeigt. Diese läßt sich im Dialogfenster ”Material, Farben ändern (siehe 2.4.2.5.4. Unterpunkt: Material, Farben auf Seite 60).

Es werden ebenfalls alle Wurzelflächen darauf überprüft, ob sie außerhalb ihres Kieferkammes liegen. Trifft dies zu, werden die Flächen mit der Farbe für ”Wurzel außerhalb des Kieferkammes“ gefüllt.

Sollen Zähne gestrippt werden, so stellt man sie mit Hilfe der Werkzeuge so auf, daß eine Überschneidung entsteht, und bearbeitet diese mit dem Menüfenster ”Strippen“, das im Menüpunkt: Extras - Unterpunkt: Strippen zu aktivieren ist (siehe 2.4.2.4. auf Seite 57 und 2.4.4. Bedienungsanleitung Programmteil ”Strippen“ auf Seite 72).

2.4.2.3.5. Unterpunkt: Bemaßung

Es werden mit dem aktiven Zahn drei segmentierte Scheiben angezeigt, die in den durch die Zahnachsen gebildeten Ebenen liegen. Die Mittelpunkte der Scheiben liegen im Ursprung des Zahnkoordinatensystems. Sie zeigen die Orientierung für die Rotation und Verschiebungen und bemaßen den Zahn in den im Dialogfenster ”Bemaßung“ eingestellten Einheiten (siehe 2.4.2.5.9. Unterpunkt: Bemaßung auf Seite 65). Die Farbe ist dieselbe wie für die Achsen und läßt sich im Dialogfenster ”Material, Farben“ in der Materialliste unter ”Achsen“ einstellen (siehe 2.4.2.5.4. Unterpunkt: Material, Farben auf Seite 60). Diese Bemaßungsscheiben sollen dem Anwender die Möglichkeit geben, die Werte für Verschiebungen und Rotationen besser abschätzen zu können.


57

2.4.2.4. Menüpunkt: Extras

Durch die hier liegenden Unterpunkte Artikulation, Strippen und Objekt erstellen werden neue Menüfenster geöffnet. Das sind Fenster, die bei Aktivierung ihre eigene Menüzeile anzeigen, bei Minimierung ihr eigenes Symbol besitzen, eventuell eine differenzierte Mauszeigerbedienung haben und bei der Darstellung der Zähne und Kiefer im Vergleich zu den Ansichtfenstern Unterschiede zeigen (siehe auch die jeweilige Menübeschreibung: 2.4.3. ff Artikulation auf Seite 67, 2.4.4. ff Strippen auf Seite 72 und 2.4.5. ff Objekt erstellen auf Seite 78).

2.4.2.5. Menüpunkt: Parameter

Dieser Menüpunkt dient zur Einstellung verschiedener Parameter wie Darstellung, Farben, Licht, Ebenen.


58

2.4.2.5.1. Unterpunkt: Ausschnitt verkleinern

Dieser Punkt bezieht sich auf das aktuelle Ansichtfenster, und ist nur aktiv, wenn in diesem durch Betätigen der linken Maustaste ein Punkt markiert wurde. In diesem Fall erscheint ein Fadenkreuz, das teilweise auch hinter dem dargestellten Objekt liegen kann. Man markiert damit unter Beibehaltung der Blickrichtung die neue Position des Betrachterstandpunktes (normalized reference point: NRP) und des betrachteten Objektes (view reference point: VRP). Der betrachtete Sichtwürfel (Viewing volume), der in das Ansichtfenster übertragen wird, wird um den Faktor 3/2 vergrößert. Dies wirkt sich als Verkleinerung (zoom out) der betrachteten Objekte im Ansichtfenster aus (siehe 2.4.2.5.3. Unterpunkt: Fenster, Parameter auf Seite 58).

2.4.2.5.2. Unterpunkt: Ausschnitt vergrößern

Dieser Punkt entspricht dem vorhergehenden. Der Sichtwürfel wird jedoch um den Faktor 2/3 verkleinert, was sich als Vergrößerung (zoom in) der betrachteten Objekte im Ansichtfenster auswirkt (siehe 2.4.2.5.3. Unterpunkt: Fenster, Parameter auf Seite 58).

2.4.2.5.3. Unterpunkt: Fenster, Parameter

Es wird das Dialogfenster ”Fenster, Parameter“ geöffnet, in dem für alle geöffneten Menüfenster die Sicht auf die darzustellenden Objekte eingestellt werden kann.


59

Mit dem Feld ”Fenster“ wird das Menüfenster ausgewählt, dessen Werte geändert werden sollen. Es werden in der Liste nur die Fenster angezeigt, die schon geöffnet wurden. Mit dem Feld ”Einstellung“ wird eine Liste von verschiedenen Einstellungen angezeigt (Benutzer definiert 1, Benutzer definiert 2, vorne, hinten, rechts, links, oben Oberkiefer, oben Unterkiefer), die dazu dienen, schnell eine Objekt von einer anderen Seite zu betrachten. Wird ein Feld dieser Auswahl mit der Maus aktiviert, so werden dessen aktuelle Werte in den unteren Feldern angezeigt.

Die Werte für den ”betrachteten Objektpunkt x, y, z“ (auch normalized reference point oder NRP genannt) sind die Weltkoordinaten des Punktes auf dem Objekt, in dessen Richtung der Betrachter blickt. Dieser Punkt des Objekts erscheint auf dem Bildschirm im Zentrum des Menüfensters.

Die Werte für den ”Betrachterstandpunkt x, y, z“ (auch view reference point oder VRP genannt) stellen die Weltkoordinaten des virtuellen Betrachterstandpunktes dar.

Die Werte für den ”oberen Sichtpunkt“ (auch view up point oder VUP genannt) stellen die Weltkoordinaten eines Punktes dar, den der Betrachter sieht, wenn er nach oben blickt. Die exakte Positionierung ist bei diesem Punkt nicht wichtig, da er auf eine Ebene projiziert wird, die


60

senkrecht zu dem zwischen NRP und VRP liegenden Vektor ist und den Punkt NRP beinhaltet. Aus VRP und NRP wird die Z-Achse des Sicht-Würfels (auch clipping volume genannt) gebildet. Dies ist der Bereich, der in den Menüfenstern angezeigt wird. Aus dem projizierten VUP werden die X- und die Y-Achsen dieses Würfels berechnet. Die Größe des Würfels bestimmt sich aus den einstellbaren Werten des Sichtwürfels ”X-Minimum“, ”X-Maximum“, ”Y-Minimum“, ”Y-Maximum“, ”Tiefe Z-Minimum“ und ”Tiefe Z-Maximum“. Die Werte für ”Y-Maximum“ und ”Y-Minimum“ werden allerdings aus dem Verhältnis der Menüfensterbreite zur -höhe berechnet, da es sonst zu einer nicht maßstabsgetreuen Verzerrung bei der Darstellung käme.

Die Drucktaste ”Standardwerte“ ersetzt die vorhandenen Werte des ausgewählten Menüfensters durch gespeicherte Standardwerte. Dies ist nützlich, falls man durch eine Fehleingabe die Orientierung im Weltkoordinatensystem verloren hat und damit eventuell keine Darstellung von Objekten mehr in dem jeweiligen Menüfenster erhält.

Die Drucktaste ”Als Standard speichern“ erlaubt die Speicherung der aktuellen eines Menüfenster als Standardwerte. Wird später also die Taste ”Standardwerte“ gedrückt, so erscheinen diese Werte.

Bei Druck auf die ”OK“-Taste wird das Dialogfenster geschlossen und die Objekte im ausgewählten Menüfenster werden in der gewählten Darstellung neu gezeichnet.

2.4.2.5.4. Unterpunkt: Material, Farben

Es erscheint das Dialogfenster ”Material, Farben“, mit dessen Hilfe für jedes Menüfenster separat die Farben für die unterschiedlichen Flächenarten eingestellt werden können.


61

Mit der Drucktaste ”Fenster“ kann man das Menüfenster auswählen, für das die Farben eingestellt werden sollen.

Bei Druck auf die Drucktaste ”Material“ erscheint eine Liste mit verschiedenen Flächenarten.

Jedes Flächenelement eines Objektes kann eine Auswahl an diesen Flächenarten besitzen.

Die Flächenarten ”Schmelz“, ”Wurzel“ und ”Alveolarkamm“ werden bei der Objekterstellung zugeordnet und können nicht verändert werden. Sie erscheinen nicht gleichzeitig für eine Fläche.

Die Flächenarten ”Okklusion“, ”Protrusion“, ”Laterotrusion rechts“ und ”Laterotrusion links“ werden bei der Artikulation zugeordnet und können unter dem Menüpunkt: Rückgängig (siehe


62

2.4.2.6. auf Seite 66) geändert werden. Sie stellen die antagonistischen Kontaktpunkte dar, die man im Munde eines Patienten mit einem Artikulationspapier erhalten würde.

Die Flächenarten ”Überschneidung“ und ”Wurzel außerhalb des Alveolarkammes“ werden bei der Überschneidungsprüfung nach Rotation, Kontaktsuche und Verschieben oder durch Aktivierung des Menüpunkt: Zahn - Unterpunkt: Prüfe Überschneidungen (siehe 2.4.2.3.4. auf Seite 56) zugeordnet. Sie stellen Zahnanteile, die sich mit anderen Zähnen überschneiden, oder Wurzelbereiche, die außerhalb des Kieferkammes liegen, separat dar.

Der Listeneintrag ”Achsen“ repräsentiert keine Flächenart. Mit ihr läßt sich die Farbe der Achsen und der Bemaßungskreise einstellen.

Die drei Werte neben dem Feld ”Farbe des Materials“ stellen die RGB-Anteile (Rot, Gelb, Blau) der ausgewählten Farbe dar. Die Werte reichen von 0 (geringster Anteil) bis 255 (höchster Anteil).

In das Feld Transparenz läßt sich eingeben, wie transparent die Darstellung der Flächenart sein soll. Es werden Werte zwischen 0 (höchste Transparenz) und 255 (höchste Opazität) erwartet.

Bei Druck auf die Drucktaste ”Farbe“ erscheint das Windows®-Dialogfenster zur Farbanpassung:

Zur Benutzung dieses Dialogfensters vergleiche die Programmbeschreibung zu Windows®.

2.4.2.5.5. Unterpunkt: Material, Eigenschaften

Es erscheint das Dialogfenster ”Material Eigenschaften“:


63

Mit diesem lassen sich die Reflexionseigenschaften aller Materialien an den ambienten, diffusen und spekularen Anteilen des empfangenen Lichtes einstellen. Dabei lassen sich jeweils die Rot-, Gelb- und Blau- Anteile (RGB) einstellen.

Emission bedeutet, daß das Material Licht abgibt.

Das Feld ”Schimmer“ stellt dar, wie sehr das Material als Spiegel wirkt. Es werden Werte zwischen 0 (starke spiegelnde Wirkung) und 128 (keine spiegelnde Wirkung) erwartet.

2.4.2.5.6. Unterpunkt: Licht

Es lassen sich vier verschiedene Lampen in ihren Beleuchtungseigenschaften einstellen:

Mit dem Feld ”Lampen“ läßt sich eine der vier Lampen auswählen. Daneben liegt ein Knopf zum Ein- und Ausschalten der aktuellen Lampe.

Im Feld ”Position“ läßt sich die Lampenposition in homogenen Geräte- (Device-) Koordinaten eingeben. Der vierte Wert sagt aus, ob die Lampe an einem festen Punkt liegt (er sollte dann den


64

Wert 1 haben) oder ob sie aus der Richtung dieses Punktes scheint, jedoch im Unendlichen liegt (dann ist der Wert 0 einzutragen ).

Die Felder ”Diffus“, ”Ambient“ und ”Spekular“ beziehen sich auf die gleichnamigen Lichtarten. Die Einstellungen erfolgen in Kommazahlen zwischen -1 und 1.

2.4.2.5.7. Unterpunkt: Ebenen, Farben

Das Dialogfenster ”Ebenen Farben“ dient dazu, den in den verschiedenen Programmteilen darstellbaren Ebenen Farben zuzuordnen:

Mit dem Feld ”Ebenen“ lassen sich die Ebenen ”Sagittalebene“, ”Horizontalebene“, ”Vertikalebene“, ”Kauebene“, ”Stripebene 1“ und Stripebene 2“ auswählen.

Zur Bedeutung der anderen Felder siehe 2.4.2.5.4. Unterpunkt: Material, Farben auf Seite 60.

2.4.2.5.8. Unterpunkt: Kauebene, Parameter

Es erscheint das Dialogfenster ”Kauebene, Parameter“. Die Kauebene spannt sich normalerweise auf vom Mittelpunkt der Verlängerung der Schneidekanten der mittleren unteren Inzisivi bis zu den disto-bukkalen Höckerspitzen der Zähne 37 und 47.

Zur Definition dieser Punkte müssen drei sogenannte Spezialpunkte vermessen werden. Diese lassen sich hier abrufen und bei Bedarf ändern:


65

Bevor die Eingabefelder eine Eingabe akzeptieren, muß deren Inhalt durch einen Doppelklick auf die linke Maustaste selektiert werden. In der oberen Zeile lassen sich für drei Zähne die internationalen Zahnbezeichnungen eingeben. In der darunter liegenden Zeile wird die jeweilige Spezialpunktnummer eingegeben.

Darunter erscheinen daraufhin der Name des Spezialpunktes und die dazugehörigen Koordinaten in Mikrometer.

2.4.2.5.9. Unterpunkt: Bemaßung

In diesem Dialogfenster werden die Parameter für die Bemaßung (siehe 2.4.2.3.5. Unterpunkt: Bemaßung auf Seite 56) eingestellt.

Im Feld ”Scheibensegmente“ wird die Anzahl der ”Tortenstücke“ für jede Ebenenscheibe eingegeben.

Das Feld ”Radius“ gibt den Radius jeder Ebenenscheibe in Mikrometer an.


66

In das Feld ”Innenscheiben“ wird die Anzahl der Innenscheiben eingegeben. Ist zum Beispiel der Radius wie oben 10000 µm und die Anzahl der Innenscheiben zehn, so hat man eine Unterteilung der Ebenenscheiben von je einem Millimeter.

Eine Einstellung von acht Scheibensegmenten bedeutet einen Winkel von 45 Grad für jedes Segment: 360 Grad für einen Vollkreis / 8 Segmente = 45 Grad / Segment.

2.4.2.5.10. Unterpunkt: Abstandswerte

Es erscheint das Dialogfenster ”Abstandswerte“, dessen Einstellungen Rechenungenauigkeiten kompensieren sollen. Da die internen Berechnungen in Fließkommazahlen erfolgen, die Koordinatenwerte jedoch in ganzzahligen Mikrometerwerten gespeichert werden, kommt es im Programm zu Rundungsfehlern.

Das Feld ”Interdentalabstand“ stellt den minimalen Abstand zwischen sich überlappenden Flächen zweier Zähne dar, der angezeigt werden soll. In diesem Fall ignoriert die Flächenanzeige alle sich überlappenden Flächen, bei denen das Maß der Überlappung geringer als 5 µm ist. Das Feld ”Okklusionsabstand“ stellt die Dicke der Artikulationsfolie dar, die verwendet wird.

2.4.2.6. Menüpunkt: Rückgängig

Dieser Menüpunkt dient dazu, Veränderungen, die man bei der Arbeit mit dem Programm vorgenommen hat, wieder rückgängig zu machen.


67

Mit dem Unterpunkt: Extraktion läßt sich eine durchgeführte Extraktion wieder rückgängig machen. Es erscheint das Dialogfenster ”Objektauswahl“. Hier läßt sich der entsprechende Zahn auswählen.

Mit dem Unterpunkt: Einzelzahnveränderung lassen sich Veränderungen an der Zahnstellung durch Rotieren, Verschieben oder Kontaktsuche rückgängig machen. Es erscheint ebenfalls das Dialogfenster ”Objektauswahl“.

Mit den weiteren Unterpunkten lassen sich von einem durch das Dialogfenster ”Objektauswahl“ gewählten Zahn die genannten Flächeneigenschaften selektiv entfernen.

2.4.2.7. Menüpunkt: ?

Dieser Menüpunkt enthält als einzigen Unterpunkt: Info. Dieser Punkt aktiviert das Informationsfenster zum Programm ”VirtSet“:

Der Verfasser der vorliegenden Arbeit behält die Vermarktungsrechte des Programmes ”VirtSet“. Er stellt jedoch der Abteilung für Kieferorthopädie und Orthodontie des Zentrums für Zahnmedizin der Humboldt-Universität zu Berlin eine lauffähige Version des Programms einschließlich der Beispieldaten und des Quellcodes zur Weiterentwicklung zur Verfügung.

2.4.3. Bedienungsanleitung Programmteil ”Artikulation“

Der Programmteil Artikulation wird im Menüpunkt: Extras aktiviert (siehe 2.4.2.4. auf Seite 57).


68

Es wird ein Menüfenster dargestellt. Am unteren Fensterrand findet sich eine Dialogzeile mit Angaben zur aktuellen Artikulationsart (Okklusion, Protrusion, Laterotrusion rechts oder Laterotrusion links), dem aktuellen Schritt und der maximalen Schrittanzahl, in der der Artikulationsweg berechnet wird. Diese Werte sind im Dialogfenster ”Artikulation Optionen“ einstellbar (siehe 2.4.3.3.3. auf Seite 71). Der Artikulationsweg im Kiefergelenk wird nicht kontinuierlich berechnet, da dies zu einem erheblichen Rechenaufwand führen würde, sondern ist in einzelne Schritte aufgeteilt.

Mittels der Drucktasten mit den Pfeilen läßt sich der nächste oder der vorherige Artikulationsschritt anzeigen. Bei Druck auf die Drucktaste ”alle Schritte“ werden die entsprechenden Artikulationsflächen für alle Schritte des Artikulationsweges berechnet und gleichzeitig dargestellt.

Das Hauptmenü wird bei der Aktivierung des Menüfensters ”Artikulation“ durch ein spezielles Menü ersetzt:

Der Mauszeiger wird, sobald er sich über dem aktivierten Fenster Artikulation befindet, durch einen lokalen Cursor ersetzt. Dieser hat die Form eines Kreuzes.

2.4.3.1. Menüpunkt: Ende

2.4.3.1.1. Unterpunkt: Zurück

Hiermit wird das Menüfenster ”Artikulation“ geschlossen und man gelangt ins Hauptmenü zurück.


69

2.4.3.2. Menüpunkt: Artikulation

Die Unterpunkte stellen die verschiedenen Bewegungsarten des Unterkiefers dar: Okklusion, Protrusion, Laterotrusion links und Laterotrusion rechts.

Bei der Aktivierung werden die Stellungen des Unterkiefers zum Oberkiefer bei jedem der im Dialogfenster ”Artikulation Optionen“ (siehe 2.4.3.3.3. auf Seite 71) einstellbaren Schritte berechnet. Dabei erscheint eine Fortschritts-Anzeige:

2.4.3.3. Menüpunkt: Parameter

Hier lassen sich verschiedene Ansichten einstellen.

2.4.3.3.1. Unterpunkt: Artikulation anzeigen

”Artikulation anzeigen“ bedeutet, daß man beide bezahnten Kiefer in der aktuellen Artikulationsart und dem aktuellen Artikulationsschritt wie in einem geschlossenen Artikulator oder im Mund sieht.


70

2.4.3.3.2. Unterpunkt: Artikulation berechnen

”Artikulation berechnen“ bewirkt, daß alle Artikulationsflächen für den entsprechenden Schritt berechnet und farbig angezeigt werden. Die Kiefer liegen nebeneinander, damit man gleichzeitig die Kontaktpunkte beider Kiefer sehen kann.


71

2.4.3.3.3. Unterpunkt: Artikulation Optionen

Es wird das Dialogfenster ”Artikulation Optionen“ angezeigt.

In diesem Fenster lassen sich folgende Einstellungen vornehmen:

Im Programm wird davon ausgegangen, daß CAMPER’sche Ebene und Kauebene parallel sind.

Für die folgenden Unterpunkte und den Menüpunkt: Rückgängig siehe die Beschreibung bei den gleichnamigen Menüpunkten im Hauptmenü auf Seite 66ff..

2.4.4. Bedienungsanleitung Programmteil ”Strippen“

Der Programmteil Strippen wird im Menüpunkt: Extras aktiviert (siehe 2.4.2.4. auf Seite 57).

Es wird ein Menüfenster dargestellt. Am unteren Fensterrand findet sich eine Informationszeile mit Angaben zum aktuellen Zahnpaar, den jeweiligen Zahnbezeichnungen und deren Überschneidungsanteilen:

Das Hauptmenü wird bei der Aktivierung des Menüfensters ”Strippen“ durch ein spezielles Menü ersetzt:

Der Mauszeiger wird, sobald er sich über dem aktivierten Fenster Strippen befindet, durch einen lokalen Cursor ersetzt. Dieser hat die Form einer Säge.


73

2.4.4.1. Menüpunkt: Ende

2.4.4.1.1. Unterpunkt: Zurück

Hiermit wird das Menüfenster ”Strippen“ geschlossen und man gelangt ins Hauptmenü zurück.

2.4.4.2. Menüpunkt: Aktion

Dieser Menüpunkt dient der Stripberechnung, der Auswahl, der Stripaktion und der Ausgabe.

2.4.4.2.1. Unterpunkt: Bereichsprüfung

Der Benutzer muß zuerst diesen Unterpunkt auswählen, bevor andere Menüteile zugänglich sind. Daraufhin werden alle benachbarten Zahnpaare auf approximales Überlappen getestet. Der Stand der Berechnung wird visuell durch eine Fortschritts-Anzeige dargestellt.

Wird die ”Abbrechen“-Schaltfläche des Dialogfensters gedrückt, werden die schon berechneten überlappenden Zahnpaare in eine Liste geschrieben. Das erste berechnete Zahnpaar wird im Menüfenster dargestellt. Die Stripebene jedes dargestellten Zahnes wird als flacher Quader in der Breite des Überlappens gezeichnet.

2.4.4.2.2. Unterpunkt: Zahnpaar

Es wird das Dialogfenster ”Stripliste“ ausgegeben. Dieses dient der Aktivierung des zu strippenden Zahnpaares und zeigt die aktuellen Überschneidungen an:


74

Jede Zeile der erscheinenden Liste enthält folgende Angaben:

Die zu strippenden Zähne werden derart verschoben, daß sich Zahnanteile überlappen. Durch die sich schneidenden Anteile wird eine Schnittebene gelegt (siehe 2.3.4. Schnittberechnung auf Seite 30). Da die benachbarten Zähne approximal eine unterschiedliche Krümmung aufweisen können, sind die Überschneidungen unter Umständen verschieden. Bruchteile von Mikrometern werden gerundet, so daß die ausgegebene Summe ganzzahlig ist.


75

Um einen Listeneintrag zu modifizieren, muß der Benutzer diesen aktivieren. Daraufhin wird das Dialogfenster ”Zahnpaar“ ausgegeben:

In diesem hat der Benutzer die Möglichkeit, die einzelnen vorgeschlagenen Stripbreiten frei zu verändern oder zu löschen. Bestätigt der Benutzer die eingegebenen Werte durch Druck auf die ”OK“-Taste, wird der im Menüfenster ”Strippen“ dargestellte Stripebenenquader den neuen Werten angepaßt.

2.4.4.2.3. Unterpunkt: Nächstes Paar

Es wird ohne Aufruf eines Dialoges das nächste Zahnpaar dargestellt.

2.4.4.2.4. Unterpunkt: Vorheriges Paar

Es wird ohne Aufruf eines Dialoges das vorherige Zahnpaar dargestellt.


76

2.4.4.2.5. Unterpunkt: Strippen

Es wird von beiden Zähnen ein Bereich abgeschnitten, der dem Anteil von P1 und P2 entspricht. Die geänderten Zahndaten werden gespeichert. Die Einträge in der Stripliste werden auf Null gesetzt. Es erscheint bei erfolgreichem Strippen eine Informationsbox. Die gestrippten Zähne werden im Menüfenster dargestellt. Ihr jeweiliger Stripebenenquader hat die Breite Null.

2.4.4.2.6. Unterpunkt: Drucken

Es erscheint ein Windows®-Drucken-Dialogfenster, das es erlaubt, Drucker und Druckoptionen zu wählen. Dann wird die Ausgabe, die normalerweise auf den Bildschirm in das Menüfenster erfolgt, auf den Drucker umgeleitet. Auch die Informationen, die am unteren Rand des Menüfensters in der Dialogleiste stehen, werden ausgedruckt (siehe auch 2.4.2.1.2. Unterpunkt: Drucke aktive Ansicht auf Seite 45).

2.4.4.3. Menüpunkt: Parameter

Hier lassen sich verschiedene Ansichten einstellen.

Die Erläuterung zum Unterpunkt: Zahnachsen siehe 2.4.2.2.9. auf Seite 53.


77

2.4.4.3.1. Unterpunkt: Ansicht vestibulär

Dies ist die Standardeinstellung. Die Zähne werden in der Ansicht von vestibulär aus dargestellt.

2.4.4.3.2. Unterpunkt: Ansicht okklusal

Die Zähne werden in der Ansicht von okklusal beziehungsweise von inzisal dargestellt.

2.4.4.3.3. Unterpunkt: Ansicht oral

Die Zähne werden in der Ansicht von oral dargestellt.

2.4.4.3.4. Unterpunkt: Zentriere Zahn 1

Die Ansicht bezieht sich auf die Achsen von Zahn 1. Der Zahn wird in die Fenstermitte gestellt.

2.4.4.3.5. Unterpunkt: Zentriere Zahn 2

Die Ansicht bezieht sich auf die Achsen von Zahn 2. Der Zahn wird in die Fenstermitte gestellt.

2.4.4.3.6. Unterpunkt: Zentriere Schnittebene

Die Ansicht bezieht sich auf die Projektion der äquivalenten Achsen beider Zähne auf die Schnittebene. Der Betrachterstandpunkt wird zur Schnittebene parallelisiert. Die Schnittebene wird in die Fenstermitte gestellt.

Im dargestellten Beispiel (siehe oben) wurde diese Zentrierung gewählt.

In den Unterpunkten Anzeige Zahn 1, Anzeige Zahn 2, Anzeige Schnittebene Zahn 1 und Anzeige Schnittebene Zahn 2 kann man die Ansicht selektiv auswählen.


78

Für die folgenden Menüpunkte siehe die Beschreibung bei den gleichnamigen Menüpunkten im Hauptmenü (2.4.2.5.ff auf Seite 57 ).

2.4.4.4. Menüpunkt: Rückgängig

Der einzige Unterpunkt: Strippen lädt die nicht gestrippten Zahndateien der Zähne des aktuellen Zahnpaares in den Speicher, so daß eine zuvor vorgenommene Stripaktion rückgängig gemacht wird.

2.4.5. Bedienungsanleitung Programmteil ”Objekt erstellen“

2.4.5.1. Bedienungshinweise

Der Programmteil Objekt erstellen (siehe 2.4.2.4. Menüpunkt: Extras auf Seite 57) besteht aus zwei Fenstern mit den Titeln ”Objekt erstellen 1“ und ”Objekt erstellen 2“ und einer eigenen Menüzeile.

Es ist sinnvoll, für jedes Fenster eine Einstellung zu finden, in der sowohl die Punktedateien als auch die symmetrierten Objekte angezeigt werden können.

Das Objekt sollte in beiden Fenstern von einem unterschiedlichen Blickpunkt aus betrachtet werden können, damit man einen räumlichen Eindruck gewinnen kann und um einen Punkt dreidimensional bestimmen und verändern zu können.

Punktmarkierung:

In diesem Programmteil hat die Maus eine spezielle Funktion bei der Spezialpunkt- und Symmetriepunktbearbeitung. Wird in einem Fenster ein Punkt durch Einfachklick auf die linke Maustaste markiert (es erscheint ein Kreuz, das das gesamte Fenster ausfüllt), erscheint im anderen Fenster eine Linie, die alle Punkte bezeichnet, auf die die Markierung im ersten Fenster zutrifft. Im zweiten Fenster läßt sich nun einer dieser Punkte wieder durch Einfachklick auf die


79

linke Maustaste markieren. Da jedes Fenster eine zweidimensionale Projektion eines dreidimensionalen Raumes (es werden nur die X- und die Y-Achsen verwendet) ist, fehlt bei Markierung eines Punktes in jedem Fenster die Z-Achse. Man kann jedoch die Markierung als eine Gerade interpretieren, die am Bildschirmpunkt in die Tiefe geht. Besitzen nun beide Fenster einen unterschiedlichen Blickpunkt und eine unterschiedliche Blickrichtung auf das Objekt, sind diese Geraden also nicht parallel zueinander.

Haben die Geraden einen Schnittpunkt im Weltkoordinatensystem, ist dieser der gesuchte und markierte Punkt. Verlaufen die Geraden jedoch windschief, wird der Punkt ermittelt, der zu beiden Geraden den geringsten Abstand besitzt. Diese abschließende Berechnung wird durch einen Einfachklick auf die rechte Maustaste durchgeführt und ist Voraussetzung für etliche Unterpunkte. Es erscheint an der Stelle des markierten Punktes ein kleines Fadenkreuz.

Menü: Objekt erstellen

2.4.5.2. Menüpunkt Ende

2.4.5.2.1. Unterpunkt: Zurück

Hiermit werden die Menüfenster ”Objekt erstellen 1“ und ”Objekt erstellen 2“ geschlossen und man gelangt ins Hauptmenü des Programms ”VirtSet“ zurück.


80

2.4.5.3. Menüpunkt: Datei

2.4.5.3.1. Unterpunkt: Öffnen Punktedatei

Es wird ein Windows®-Datei-Öffnen-Dialogfenster geöffnet (siehe 2.4.2.1.1. Unterpunkt: Öffnen auf Seite 43) und darin Punktedateien (Extension *.xxx) oder Wurzeldateien (Extension *.wzl) angezeigt. Hat man eine Punktedatei ausgewählt, so erscheint eine Fortschritts-Anzeige (siehe 2.4.2..2.5. Unterpunkt: Kontakt auf Seite 50), während das Punkteformat konvertiert wird. Danach werden die Punkte in der Farbe Pink in beiden ”Objekt erstellen“-Fenstern angezeigt und man kann diese weiter bearbeiten. Die Farbe Pink ist hier fest codiert und nicht einstellbar.

2.4.5.3.2. Unterpunkt: Sichern Punktedatei

Dieser Unterpunkt dient der erneuten Speicherung einer bearbeiteten Punktedatei. Während eine Datenkonvertierung durchgeführt wird, erscheint eine Fortschritts-Anzeige (siehe 2.4.2.2.5. Unterpunkt: Kontakt auf Seite 50). Anschließend wird ein Windows®-Datei-Speichern-Dialog geöffnet (siehe 2.4.2.1.1. Unterpunkt: Öffnen auf Seite 43) und man kann die Datei, die aktualisiert werden soll, angeben oder einen nicht existenten Namen eingeben, um eine neue Datei zu erstellen. Die gezeigten Dateien sind entweder Punktedateien (Extension *.xxx) oder Wurzeldateien (Extension *.wzl).

2.4.5.3.3. Unterpunkt: Öffnen Objektdatei

Es wird ein Windows®-Datei-Öffnen-Dialog (siehe 2.4.2.1.1. Unterpunkt: Öffnen auf Seite 43) und darin Objektdateien mit der Extension *.fra angezeigt. Objektdateien sind bereits fertig berechnete Objekte aus Punktedatei, eventuell Wurzeldatei und Spezialpunktedatei. Man nutzt diesen Menüpunkt, wenn man nur noch Änderungen an der Stellung des Objektes oder an den Spezialpunkten vornehmen möchte.


81

2.4.5.3.4. Unterpunkt: Sichern Objektdatei

Es wird, ohne ein Dialogfenster anzuzeigen, das bearbeitete Objekt unter seiner eingestellten Bezeichnung im aktuellen Pfad mit der Extension *.fra gespeichert.

2.4.5.3.5. Unterpunkt: Sichern Miniobjektdatei

Das bearbeitete Miniobjekt wird, ohne ein Dialogfenster anzuzeigen, unter seiner eingestellten Bezeichnung im aktuellen Pfad mit der Extension *.frm gespeichert. Dem Miniobjekt fehlen im Gegensatz zum normalen Objekt die Kantenreferenzen, und es benötigt weniger Speicherplatz für die Punkte und Flächen. Die Kantenreferenzen werden nur dort benötigt, wo am Objekt eine Veränderung wie zum Beispiel beim Strippen vorgenommen werden soll. In den übrigen Programmteilen wird mit dem Miniobjekt gerechnet.

2.4.5.3.6. Unterpunkt: Erstelle Parameterdatei neu

Es wird die Parameterdatei (Extension *.par) für das eingestellte Objekt auf Null gesetzt. Die Parameterdatei eines Zahnes beinhaltet die Rechenvorschriften (Matrizes) für die Übertragung des Zahnkoordinatensystems in das Koordinatensystem des jeweiligen Kiefers in der Ursprungsstellung und in der aktuellen Änderung. Die Parameterdatei eines Kiefers beinhaltet die entsprechenden Matrizes für die Übertragung des Kieferkoordinatensystems in das Weltkoordinatensystem.

2.4.5.4. Menüpunkt: Punkteobjekt

Nachdem eine Punktedatei geladen wurde, läßt sie sich mit Hilfe dieses Menüpunktes bearbeiten.

2.4.5.4.1. Unterpunkt: Symmetrieren

Voraussetzung ist, daß eine Punktedatei geladen und ein Symmetriepunkt markiert wurde (siehe Punktmarkierung in: 2.4.5.1. Bedienungshinweise auf Seite 78). Mit diesem Programmpunkt wird der Mittelpunkt des Koordinatensystems des zu berechnenden Objektes an die Stelle des


82

Symmetriepunkts verschoben. Es ist sinnvoll, eine Fenstereinstellung zu wählen, in der der Mittelpunkt des Koordinatensystems in der Mitte der Fenster liegt.

2.4.5.4.2. Unterpunkt: Punktreduktion

Dieser Unterpunkt dient dazu, die Punktedatei zu verkleinern, indem Punkte, die einen geringeren Abstand als den einstellbaren Reduktionswert zu anderen Punkten aufweisen, eliminiert werden. Es erscheint das Dialogfenster ”Reduktion“:

Hier läßt sich der Reduktionswert einstellen. Aktiviert man die Abfrage ”Kugelförmig“, so werden alle Punkte auf eine Kugeloberfläche um den Koordinatenursprungspunkt projiziert, wobei der Radius gemittelt wird. Erst dann erfolgt die Punktereduktion.

2.4.5.4.3. Unterpunkt: Punkt einfangen

Voraussetzung ist, daß eine Punktedatei geladen und ein Punkt markiert wurde (siehe Punktmarkierung in: 2.4.5.1. Bedienungshinweise auf Seite 78). Hiermit wird der dem markierten Punkt am nächsten liegende tatsächliche Punkt der Punktedatei ermittelt. Es erscheint das Dialogfenster ”eingefangener Punkt“:


83

Es werden die Punktnummer und die Objektkoordinaten des Punktes ausgegeben. Der eingefangene Punkt wird in den Fenstern durch ein Fadenkreuz angezeigt, so daß der Benutzer seine Wahl überprüfen kann. Mit den Drucktasten ”vorheriger Punkt“ und ”nächster Punkt“ wird zu den entsprechend benachbarten Punkten der Punktedatei gewechselt. Mit der Drucktaste ”Punkt löschen“ wird der Punkt aus der Punktedatei gelöscht.

2.4.5.4.4. Unterpunkt: Punkt einfügen

Voraussetzung ist das Öffnen einer Punktedatei und das Markieren eines Punktes (siehe Punktmarkierung in: 2.4.5.1. Bedienungshinweise auf Seite 78). Hiermit wird der Punktedatei an der Stelle des markierten Punktes ein tatsächlicher Punkt eingefügt.

2.4.5.4.5. Unterpunkt: Punkt berechnen

Voraussetzung ist das Markieren eines Punktes in jedem Fenster durch Einfachklick auf die linke Maustaste. Es erscheint jeweils ein Fadenkreuz, das die Größe eines Fensters hat. Durch Aktivierung dieses Menüpunktes oder Einfachklick auf die rechte Maustaste wird der tatsächliche Punkt berechnet und mit einem kleinen Fadenkreuz markiert (zur Mathematik siehe 2.3.8. Schnittpunktberechnung auf Seite 39).

2.4.5.5. Menüpunkt: Konstruktion

2.4.5.5.1. Unterpunkt: Wurzelansatz

Voraussetzung ist wiederum, daß eine Punktedatei geladen und ein Punkt markiert wurde (siehe Punktmarkierung in: 2.4.5.1. Bedienungshinweise auf Seite 78), der zentral im Bereich der Schmelz-Zement-Grenze im Zahn liegt. Das Programm berechnet dann den Wurzelansatz, das


84

heißt den Bereich der Zahnkrone, an den die Wurzel ansetzt, indem es alle Punkte, die dem ausgewählten Punkt und dem meßpunktfreien Bereich des Wurzelansatzes benachbart sind, verbindet. Alle anderen Punkte der Zahnkrone lassen sich nun zu einem geschlossenen Körper, der Zahnkrone, zusammensetzen. Der Sinn der Wurzelansatzberechnung ist, Fehler des Programmes bei der Zahnkronenberechnung zu vermeiden und später die Möglichkeit zu haben, konfektionierte oder individuelle Zahnwurzeln ansetzen zu können.

2.4.5.5.2. Unterpunkt: Zahnkrone erstellen

Es erscheint ein Objekt-Auswahl-Dialog, in den die Bezeichnung des Objektes eingegeben wird (siehe 2.4.2.3.2. Unterpunkt: Extrahieren auf Seite 55).

Während das Objekt berechnet wird, erscheint eine Fortschritts-Anzeige. Schon berechnete Kanten werden orange dargestellt. Die Wachstumsgrenze der Berechnung wird grün dargestellt.

2.4.5.5.3. Unterpunkt: Zahnwurzel zufügen

Es wird ein Windows®-Datei-Öffnen-Dialog angezeigt, mit dem die Wurzeldatei mit der Extension *.wzl geladen werden muß. Während die Wurzel an der Stelle des Wurzelansatzes angefügt wird, erscheint wiederum eine Fortschritts-Anzeige.

2.4.5.5.4. Unterpunkt: Zahn Spezialpunkte einfügen

Es erscheint das Dialogfenster ”Spezialpunkte“, in dem Spezialpunktbearbeitungen durchgeführt werden.


85

2.4.5.5.4.1. Drucktaste: Datei laden

Zuerst muß mit dieser Drucktaste eine Spezialpunktdatei mit der Extension *.spp für das bearbeitete Objekt geöffnet werden. Dazu wird ein Windows®-Datei-Öffnen-Dialogfenster sichtbar (siehe 2.4.2.1.1. Unterpunkt: Öffnen auf Seite 43).

2.4.5.5.4.2. Drucktaste: neuen Spezialpunkt eingeben

Hier ist Voraussetzung, daß ein Punkt markiert wurde (siehe Punktmarkierung in 2.4.5.1. Bedienungshinweise auf Seite 78). Es erscheint das Dialogfenster ”Auswahl neuer Spezialpunkt“ mit der Möglichkeit, den Namen des Standardspezialpunktes aus einer Liste auszuwählen oder direkt einzugeben.

In der Liste sind die sechs Standardspezialpunkte aufgeführt:


86

MES_APP

=

mesialer Approximalpunkt

DIST_APP

=

distaler Approximalpunkt

ORAL

=

oraler Punkt

VEST

=

vestibulärer Punkt

APIK

=

Apexpunkt

OKK_INZ

=

okklusaler oder inzisaler Punkt

Üblicherweise wird diese Methode verwendet, um den apikalen Punkt zu bestimmen, da dieser bei der Messung der Spezialpunkte mit dem ”Reflex Mikroskope“ oder einem Lasertriangulationsverfahren nicht erfaßt wird.

2.4.5.5.4.3. Drucktaste: Spezialpunkt kopieren

Da initial den Standardspezialpunkten keine Koordinaten zugeordnet sind, besteht hiermit die Möglichkeit, diesen Koordinaten der dazugeladenen Spezialpunkte zuzuweisen.

Üblicherweise wird man den mesialen und distalen Approximalpunkt kopieren, da diese Punkte später der Berechnung des Koordinatenursprungs und der X-Achse dienen(siehe 2.3.9. Berechnung der Achsen auf Seite 40. Es erscheint das Dialogfenster ”Spezialpunkte kopieren“ .

Nachdem man aus den Listenfeldern ”Quelle“ und ”Ziel“ den zu kopierenden Spezialpunkt und den Zielort der Kopie bestimmt hat, wird durch Druck auf die Drucktaste ”Kopieren“ die Kopie durchgeführt.

2.4.5.5.4.4. Drucktaste: alten Spezialpunkt verändern

Nach Anzeige des Dialogfensters ”Auswahl alter Spezialpunkt“ lassen sich nacheinander alle existierenden Spezialpunkte mit ihren Koordinaten aufrufen. Die Position der aufgerufenen Spezialpunkte wird gleichzeitig in den beiden Fenstern ”Objekt erstellen 1“ und ”Objekt erstellen 2“ mit einem kleinen Fadenkreuz dargestellt. Die Namen und die globalen Koordinaten können geändert werden.


87

2.4.5.5.5. Unterpunkt: Zahn Achszuordnung

Die Berechnung der Koordinatenachsen für ein Zahnobjekt wird nur dann durchgeführt, wenn bereits die Standardspezialpunkte für den mesialen und distalen Approximalpunkt und den apikalen Punkt eingegeben wurden. Zur Mathematik siehe 2.3.9. Berechnung der Achsen auf Seite 40.

2.4.5.5.6. Unterpunkt: Zahn Y-Achse spiegeln

Da bei der Messung mit dem ”Reflex Mikroskope“ nur der zweite und der dritte Quadrant vermessen wurden, bedurfte es noch der Möglichkeit die Zahnobjekte zu spiegeln. Es wird so gespiegelt, daß sich die gespiegelten Zahnobjekte im selben Kiefer befinden. Die Spiegelung erfolgt an der X-Z-Ebene, indem die Y-Koordinaten aller Punkte und aller Spezialpunkte invertiert werden. Die Reihenfolge der drei Punkte für jede Fläche wird geändert, da sich durch die Spiegelung Außen- in Innenflächen verwandeln. Abschließend werden die Koordinaten für die Standardspezialpunkte oraler und vestibulärer Punkt vertauscht, da sonst die Definition der Y-Achse nicht mehr stimmen würde.

Aus dem Zahnobjekt 21 wird durch die Spiegelung das Zahnobjekt 11.

2.4.5.5.7. Unterpunkt: Normalvektoren berechnen

Der jeweilige globale Flächennormalvektor berechnet sich für alle Flächen durch die GAUßsche Formel. Nun wird für jeden Punkt die Vektorsumme aus den globalen Flächennormalvektoren der an ihn grenzenden Flächen gebildet und dieser Vektor normiert. Jeder Punktnormalvektor wird zusammen mit den Punktkoordinaten an OpenGl® übergeben und dient der realitätsnahen Darstellung.

2.4.5.5.8. Unterpunkt: Kiefer erstellen

Dieser Menüpunkt ist vergleichbar mit dem Unterpunkt: Zahnkrone erstellen (siehe 2.4.5.5.2. auf Seite 84).


88

2.4.5.5.9. Unterpunkt: Kiefer Spezialpunkte einfügen

Dieser Menüpunkt ist vergleichbar mit dem Unterpunkt: Zahn Spezialpunkte einfügen (siehe 2.4.5.3.4.4.).

2.4.5.5.10. Unterpunkt: Kiefer Achszuordnung

Es erscheint das Dialogfenster ”Achsberechnung Kiefer“.

Zur Berechnung des Koordinatensystems des Kieferobjektes werden drei Spezialpunkte verlangt, zwei zur Berechnung der X-Achse und einer zur Berechnung der Y-Achse.

Zur Mathematik siehe 2.3.9. Berechnung der Achsen auf Seite 40.

2.4.5.5.11. Unterpunkt: Spezialpunkte zuordnen

Das Dialogfenster ”Zuordnung Spezialpunkte“ erscheint:


89

Dieses dient der Erstellung der Matrizes zur Transformation von Zahn- zu Kieferkoordinaten (siehe auch 2.3.10. Berechnungen bei der Zuordnung der Spezialpunkte auf Seite 41). Die beiden Drucktasten ”Kiefer laden“ und ”Zahn laden“ dienen dem Zweck, die gewünschten Objekte zu laden. Dazu wird jeweils ein Windows®-Datei-Öffnen-Dialogfenster angezeigt. In den darunter liegenden Listenfeldern werden die Namen der Spezialpunkte ausgewiesen. Ziel ist es, drei sich einander entsprechende Spezialpunkte auszuwählen und mit der Drucktaste ”Zuordnung“ in Beziehung zu setzen. Die Zuordnung wird jeweils in dem Listenfeld ”Zuordnung“ angezeigt. Die Drucktaste ”Zuordnung aufheben“ macht Zuordnungen wieder rückgängig, falls man hier Fehler gemacht hat.

Die Drucktaste ”Zahnstellung berechnen“ berechnet anhand der jeweils drei angegebenen Spezialpunkte die Genauigkeit der Messung und gibt diese im Dialogfenster ”Genauigkeit“ aus.

Die hier aufgetretene Differenz zwischen den entsprechenden Punkten sollte im Rahmen der Meßungenauigkeit des erfassenden Gerätes liegen. Bei der Messung mit dem ”Reflex Mikroskope“ lag die Differenz in der Regel unter 100 µm.

Mit der Drucktaste ”Zahnstellung speichern“ wird die berechnete Matrix schließlich im angegebenen Pfad unter dem Namen des angegebenen Zahnes mit der Extension *.par gespeichert.


90

2.4.5.6. Menüpunkt: Parameter

Zur Beschreibung der ersten sechs Unterpunkte wird auf die Beschreibung in 2.4.2.5. Menüpunkt: Parameter auf Seite 57 verwiesen.

2.4.5.6.1. Unterpunkt: Beleuchtet

Mit dieser Einstellung wird zwischen den Darstellungsarten ”Flächenbeleuchtung“ (Einstellung: beleuchtet) und ”Kantenanzeige“ (Einstellung: nicht beleuchtet) gewechselt. Zur richtigen Interpolation der Oberfläche in dem Unterpunkt: Beleuchtet ist es notwendig, vorher mit dem Menüpunkt: Konstruktion - Unterpunkt: Normalvektoren berechnen (siehe 2.4.5.5.7. auf Seite 87) die Normalvektoren für die Oberflächenpunkte zu bestimmen.


[Titelseite] [Widmung] [1] [2] [3] [4] [Bibliographie] [Danksagung] [Lebenslauf] [Selbständigkeitserklärung] [Anhang]

© Die inhaltliche Zusammenstellung und Aufmachung dieser Publikation sowie die elektronische Verarbeitung sind urheberrechtlich geschützt. Jede Verwertung, die nicht ausdrücklich vom Urheberrechtsgesetz zugelassen ist, bedarf der vorherigen Zustimmung. Das gilt insbesondere für die Vervielfältigung, die Bearbeitung und Einspeicherung und Verarbeitung in elektronische Systeme.

DiDi DTD Version 1.1
a subset from ETD-ML Version 1.1
Zertifizierter Dokumentenserver
der Humboldt-Universität zu Berlin
HTML - Version erstellt am:
Thu Feb 10 16:13:59 2000