Visualisierung von Scheibenaufbauten in Verglasungseinheiten mit Hilfe der neuen Microsoft.net-Framework 3.0 Technologie

Größe: px
Ab Seite anzeigen:

Download "Visualisierung von Scheibenaufbauten in Verglasungseinheiten mit Hilfe der neuen Microsoft.net-Framework 3.0 Technologie"

Transkript

1 Visualisierung von Scheibenaufbauten in Verglasungseinheiten mit Hilfe der neuen Microsoft.net-Framework 3.0 Technologie Diplomarbeit zur Erlangung des akademischen Grades Diplom Mathematiker (FH) vorgelegt von Mathias Schubert Friedberg 2007 Eingereicht am: Betreuer: Prof. Dr. Ulrich Abel (FH Gießen Friedberg) Prof. Dr. Michael Guckert (FH Gießen Friedberg)

2 I Inhaltsverzeichnis I I Inhaltsverzeichnis I Inhaltsverzeichnis I II Bildverzeichnis V 1.0 Vorwort Erklärung Danksagung Einleitung Ziel der Arbeit Problemstellung Umsetzung der Arbeit Verzeichnis der Kurzzeichen und Symbole Begriffserklärung Delaunay-Triangulation Einführung Klassische Problemstellungen Gründe für die Verwendung der Delaunay-Triangulation Verwendung der Delaunay-Triangulierung Bedingungen für eine Delaunay-Triangulation Der inkrementelle Algorithmus Voraussetzungen Kriterien beim Triangulieren Fälle bei der Triangulierung von 4 Punkten Erster Fall Zweiter Fall Dritter Fall Das Umkreiskriterium Optimale Triangulierung 19

3 I Inhaltsverzeichnis II Der inkrementelle Algorithmus Ergebnis des Algorithmus Mathematische Grundlagen Konvexe und nichtkonvexe Hüllen Definition Flächeninhalt von Dreiecken Berechnung Kreis mit 3 Punkten erzeugen Berechnung Punkt im Kreis Berechnung eines Kreisbogens Analytische Lösung Sonderfälle Nichtkonvexe Hülle Einleitung und Idee Darstellung von Löchern Einleitung und Idee Exkurs Voronoi-Diagramm Das Postamtproblem Begriffe Fälle bei der Voronoi-Konstruktion Punkt im Umkreis Weiterer Punkt im Dreieck selbst Fenster- und Glaseigenschaften Fensteraufbau Eigenschaften von Glas Materialarten des WPF Lambert Material Emissives Material Specular Material Verwendung der Materialien Verwendete Programmiersprachen und Ressourcen 46

4 I Inhaltsverzeichnis III 6.1 C# (CSharp) Unterschiede C++ und C# Laufzeitumgebung C#-Objekte C#-Anweisungen Funktionen, die in C# nicht zu Verfügung stehen net Einführung in das.net Einige wichtige Objekte und Methoden Collection WPF Voraussetzung damit WPF einen 3-D Körper darstellt Normalen Texture mapping x-datei XML Einleitung Aufbau einer XML Datei Verschachtelung Attribute Elemente ohne echtes End-Tag Nur ein Wurzel/Stamm Element ist erlaubt XML Deklaration Das Auslesen einer XML Datei CamXML Umsetzung in eine DLL Dynamic-Link Library (DLL) Die Schnittstelle (Interface) der DLL Erstellen einer DLL mit MS Visual Studio Auslesen der Punkte mit der Funktion SortPoints Voraussetzungen Randgeometrien Die verschiedenen Ausschnitte Böhrlöcher 65

5 I Inhaltsverzeichnis IV Senkbohrlöcher Innenausschnitte SpacerTriangulation SideTriangulation InCircle TestToNotConvex CreateRectangleMesh Voraussetzungen Der Algorithmus Finde nichtkonvexe Seitenteile Bohrlöcher und Senkbohrlöcher Innenausschnitte Schluss CreateGlassMesh Wireframe Strukturglas Fazit Komplexität des Algorithmus Probleme während der Umsetzung Abschließende Betrachtungen Anhang Literaturverzeichnis Bilder 86

6 II Bildverzeichnis V II Bildverzeichnis Bild 1: Höhenprofil eines Bergkamms, der trianguliert wurde. Bild 2: Modell der Triangulierung des Bergkamms von oben. Bild 3: Oben Kriterium der kürzeren Diagonalen, in der Mitte Max-Min- Winkelkriterium und unten Max-Min-Radiuskriterium [6]. Bild 4: Triangulation nach Min-Max-Kriterium. Lokal optimal, da a(t 2 ) < a(t 1 ). Jedoch ist es nicht global optimal. Deshalb ist eine bessere Triangulation möglich [8]. Bild 5: Allgemeiner Fall der Triangulierung von vier Punkten. Alle vier Punkte bilden die konvexe Hülle. Bild 6: Ein Punkt liegt nicht auf dem Rand. Bild 7: Drei Punkte liegen auf einer Linie. Bild 8: Umkreiskriterium. Links im Bild wird das Umkreiskriterium verletzt. Durch Diagonalentausch (edge flip) wird rechts eine gültige Triangulierung erreicht. Es genügt eines der beiden Dreiecke zu überprüfen. Das Umkreiskriterium verhält sich in beiden Fällen äquivalent. Bild 9: Zwei lokal optimale Triangulierungen. Beide sind bzgl. Min-Max- Winkelkriterium optimal. Bild 10: Startdreieck Bild 11: Ein Punkt wird in die Triangulation eingefügt [5]. Bild 12: Die Umkreise werden bestimmt [5]. Bild 13: Neue Dreiecke entstehen [5]. Bild 14: Links ist eine konvexe Hülle und rechts eine nichtkonvexe Hülle Bild 15: Konvexe Hülle Bild 16: Dreieck Bild 17: Kreis mit drei Punkten aufziehen, die auf dem Kreis liegen. Bild 18: Links nichtkonvexe und rechts konvexe Stellen Bild 19: Nichtkonvexe Hülle. Schwarz ist der eigentliche Rand und grün die Dreiecke, die entfernt werden müssen. Bild 20: Viereck mit Löchern Bild 21: Gebietsaufteilung Bild 22: Begriffe des Voronoi-Diagramm Bild 23: Voronoi-Knoten und -Kanten Bild 24: Veranschaulichung der Dualität

7 II Bildverzeichnis VI Bild 25: Punkt im Kreis Bild 26: Punkt im Dreieck Bild 27: Lambert Material von der Website Bild 28: Emissives Material von der Website Bild 29: Specular Material von der Website Bild 30: Links: Oberfläche mit normierter Normalen; Rechts: Oberfläche mit Normalen und Winkel alpha Bild 31: Verhältnisse von alpha und der Helligkeit Bild 32: Texturen Bild 33: Eine x-datei Bild 34: XML-Datei Bild 35: Gummirand einer Vorderseite bei einem Viereck (Die Zahlen stellen die Indexnummern der Punkte dar) Bild 36: Seitenteil des Gummirandes (Die Zahlen stellen die Indexnummern der Punkte dar) Bild 37: Ausschnitt nichtkonvexe Ecke Bild 38: Wireframe Bild 39: Strukturglas Bild 40: Strukturglas mit Loch Bild 41: Bohrloch Bild 42: Senkbohrloch Bild 43: Fenster mit Kreisbögen Bild 44: Bogen Bild 45: Nichtkonvexe Ecken (ein Testbild; keine Fensterform) Bild 46: Testbild

8 1.0 Vorwort Seite Erklärung Ich erkläre hiermit, dass ich die vorliegende Arbeit selbständig und ohne Benutzung anderer als der angegebenen Hilfsmittel angefertigt habe. Die aus fremden Werken wörtlich oder sinngemäß übernommenen Gedanken sind unter Angabe der Quellen gekennzeichnet. Ich versichere, dass ich bisher keine Prüfungsarbeit mit gleichem oder ähnlichem Thema bei einer Prüfungsbehörde oder anderen Hochschule vorgelegt habe. Ort, Datum Unterschrift

9 1.0 Vorwort Seite Danksagung Herrn Jürgen Makowka danke ich für das Hilfe und die Möglichkeit zu dieser Arbeit. Herrn Michael Hartmann danke ich für die Teilnahme an dem Projekt. Mein besonderer Dank gilt Herrn Prof. Dr. Ulrich Abel, der mir als Betreuer immer mit Rat und Tat zur Seite stand, und auch Herrn Prof. Dr. Michael Guckert, der mich als Zweitprüfer unterstützt hat. Zuletzt möchte ich noch meiner Familie für ihre Unterstützung danken.

10 2.0 Einleitung Seite Einleitung 2.1 Ziel der Arbeit Im Unternehmen Albat und Wirsam (A+W) werden Fenster(-scheiben) im 2-Dimensionalen dargestellt. Da die Komplexität dieser Fensterscheiben immer mehr zu nimmt, wird eine 3-dimensionale (3D) Visualisierung benötigt. Zum Beispiel können einzelne Scheiben, aus denen ein Vielscheibenglas (VSG) besteht, unterschiedlich groß (z. B. durch eine Stufe) sein. Um zu wissen, an welcher Stelle diese einzelnen Scheiben sind, ist eine 3- dimensionale Ansicht hilfreich. Mit dieser Arbeit wird ein Teil dazu beigetragen, dass dies realisiert werden kann. 2.2 Problemstellung Gesucht wurde ein Algorithmus, der Oberflächen von Körpern in Dreiecke zerlegt. Diese Körper sind in unserem Fall Fensterscheiben, der Abstandhalter (das Metallstück zwischen zwei Fensterscheiben) des Fensters und der schwarze Gummi, der zwischen Glasrand und Abstandhalter liegt (Bild siehe Kapitel 9.2). Der Algorithmus sollte zudem erweitert werden, damit ein vorgegebener Glasrand und Löcher in der Scheibe möglich sind. Auch wichtig ist, dass wir uns in der Ebene befinden, also im R². Durch eine sorgfältige Internet- und Bücherrecherche wurde in kurzer Zeit der Begriff Delaunay-Triangulation gefunden, der die obigen Vorgaben erfüllte und eine Umsetzung ermöglichte. 2.3 Umsetzung der Arbeit Zur Umsetzung der Arbeit gehörten die Programmierung eines Delaunay- Algorithmus für das Projekt AWVision und das Nutzen von Ressourcen, die andere Programme des Unternehmens A+W bieten. Zur Umsetzung der Arbeit siehe Kapitel 5 bis 9. In Kapitel 3 werden die mathematischen Voraussetzungen für die nachfolgenden Kapitel geschaffen. Das vierte Kapitel beschäftigt sich mit einem Exkurs über Voronoi-Diagramme.

11 2.0 Einleitung Seite Verzeichnis der Kurzzeichen und Symbole K P T a x b a(t) p Kriterium Bezeichnung für Winkelkriterium Punktmenge Triangulation Vektorprodukt sei ein Winkelmaß für ein Dreiecks aus T (z.b. kleinster/größter Innenwinkel). Punkt aus einer Punktmenge

12 2.0 Einleitung Seite Begriffserklärung - Konvexe Menge Eine allgem. Teilmenge von M aus R² wird konvex genannt, wenn mit je zwei ihrer (beliebig gewählten) Punkte auch deren Verbindungsstrecke in der Menge liegt, d.h. wenn für alle gilt, dass ist. Eine Menge, die nicht konvex ist, wird nichtkonvexe Menge genannt. Oft wird dafür auch die Bezeichnung konkave Menge verwendet. Dies ist jedoch irreführend, weil konkav nicht die Negation von konvex ist. - Konvexe Hülle Der Durchschnitt (Schnittmenge) beliebig vieler konvexer Mengen ist konvex. Die konvexe Hülle einer Menge ist die kleinste konvexe Obermenge. Sie ist der Durchschnitt aller konvexen Mengen, in denen sie enthalten ist. - Nichtkonvexe Menge Diese Menge ist nichtkonvex. Polygone, die nichtkonvex sind, haben einspringende Ecken bspw. ein T (Gemeint ist die Form, nicht der Buchstabe) oder ein Loch (bspw. ein Torus). Warum nennt man diese Menge nicht konkav? Mit konkav und konvex bezeichnet man zwei zueinander gegensätzliche Eigenschaften (betreffend die Krümmung von Flächen und Kurven), wobei konkav aber nicht das Gegenteil von konvex bedeutet. Eine Fläche (oder Kurve) ist lokal (d.h. in der Nähe eines Punktes) konvex gekrümmt, wenn sie nach "außen" gewölbt ist, und sie ist konkav gekrümmt, wenn sie nach "innen" gewölbt ist. Ein Körper (oder eine Figur) wird immer von außen betrachtet. Er wird konvex genannt,

13 2.0 Einleitung Seite 6 wenn seine Oberfläche (der Rand) überall konvex gekrümmt ist. In analoger Weise würde man einen Körper konkav nennen, wenn seine Oberfläche (der Rand) überall konkav gekrümmt ist. Einen solchen Körper gibt es jedoch nicht. Natürlich kann man definieren, dass eine Menge konkav ist genau dann, wenn sie nicht konvex ist. Eine solche Definition wäre jedoch nicht treffend, sondern irreführend und würde auch der Bedeutung (nach innen gewölbt) nicht entsprechen. Eine Funktion, die nicht konvex ist, ist deshalb noch nicht konkav (Beispiel eine Linie parallel zu x-achse y = c). - Triangulation für R² Die Punkte der Dreiecke werden als Indexe angegeben, d. h. der erste Punkt aus der Punktmenge P erhält den Indices eins usw. Eine Menge aus Tripeln T:= {(a i, b i, c i ) a i, b i, c i ε {1,..., M}, 1 i P} heißt Triangulation von P, wenn folgendes gilt: - Für jedes i ε {1,..., M} Dreieck bilden die Punkte P ai, P bi, P ci die Eckpunkte eines Dreiecks. - Jedes Dreieck aus T enthält keine weiteren Punkte aus P außer genau den drei Eckpunkten. - Die Menge der inneren Punkte eines Dreiecks ist disjunkt zu der Menge der inneren Punkte jedes anderen Dreiecks. - Die Vereinigung aller Dreiecke aus T ist gleich der konvexen Hülle [P] von P. - Bei der Triangulation entstehen keine entarteten Dreiecke, d. h. die Dreiecke besitzen keine Punkte, die auf einer Linie liegen. - Ein Ziel sind wohlgeformte Dreiecke, d. h. die Dreiecke besitzen keine spitzen Winkel. Sei T eine Triangulation von P und sei D ein Dreieck aus T mit Eckpunkten P ai, P bi, P ci, dann heißen die Verbindungen P ai P bi, P bi P ci, P bi P ci Kanten (Dabei gilt: P ai P bi = P bi P ai ). Eine innere Kante ist die gemeinsame Kante zweier

14 2.0 Einleitung Seite 7 benachbarter Dreiecke aus T. Eine Kante, die nur zu einem Dreieck gehört, heißt eine Randkante. - Dreiecksnetz Das Resultat der Triangulation ist ein Netz aus Dreiecken. Es wird Dreiecksnetz genannt. - Planarer Graph Ein planarer Graph (auch plättbarer Graph) ist in der Graphentheorie ein Graph, der auf einer Ebene mit Punkten für die Knoten und Linien für die Kanten dargestellt werden kann, so dass sich die Kanten nicht schneiden. - Kollinear Punkte liegen auf einer Linie. - Startdreieck Ein Dreieck, welches zur Initialisierung der Triangulation dient. Dieses Dreieck schließt in seiner Fläche alle Punkte ein, die trianguliert werden sollen. Es wird auch als Initialisierungsdreieck oder Superdreieck bezeichnet. - WPF (Windows Presentation Foundation) WPF, enthalten im.net 3.0 (enthält Klassen), dient zur Ausgabe von 2-D- /3-D-Grafiken, Video, Audio und Bildern. Es setzt, im Gegensatz zu seinen Vorgängern GDI und GDI+, auf Directx auf und bietet dadurch volle Hardwarebeschleunigung.

15 3.0 Delaunay-Triangulation Seite Einführung Boris Nikolaevich Delone Die Delaunay-Triangulation erhielt ihren Namen von dem russischen Mathematiker Boris Nikolaevich Delone [1]. Boris Delone wurde 1890 in St. Petersburg geboren und verstarb Er absolvierte sein Studium im Jahr 1913, in dem er unter anderem Algebra und Zahlentheorie studierte, an der Universität von Kiew. Seine Arbeiten führten ihn in seine Geburtsstadt St. Petersburg zurück. Dort arbeitete er in verschiedenen mathematischen Instituten und machte sich dadurch einen Namen als Mathematiker. Von 1935 bis 1942 war er Professor an der Universität Moskau. Der Namen Delaunay entstand durch die Übersetzung seiner Werke in die französische Sprache. Das Wort Triangulation definiert der Duden folgendermaßen: Die Triangulation ist das Festsetzen eines Netzes von Dreiecken zur Landvermessung (Geodäsie).. Damit ist die Aufteilung einer bestimmten Fläche in einzelne Dreiecke gemeint, die die gegebene Fläche komplett abdecken Klassische Problemstellungen Ein klassisches Problem der algorithmischen Geometrie ist die Ermittlung der konvexen Hülle. Es handelt sich dabei um folgendes Problem: Gegeben seien n Nägel in einem Holzbrett, und um diese wird ein Gummiband gespannt. Die Lage des Gummibandes, nachdem es losgelassen wurde, soll bestimmt werden. Auch in höheren Dimensionen ist die konvexe Hülle für Punktmengen interessant. Im 3 dimensionalen Raum etwa können wir uns vorstellen, dass um die Punkte eine elastische Gummihaut gelegt wird. Das Problem wurde ausgiebig behandelt. Gründe dafür sind, dass es ein einfaches, sehr natürliches Problem ist. Viele andere Probleme sind darauf zurückzuführen. Natürlich gibt es aber auch Anwendungen, die aus anderen Teilbereichen kommen:

16 3.0 Delaunay-Triangulation Seite 9 Beispielsweise sind verschiedene Mixturen gegeben, die zwei Substanzen in verschiedenen Konzentrationen enthalten. Kann ein vorgegebenes Mischungsverhältnis durch Mischung dieser Mixturen erreicht werden? Das automatische Erkennen von verschiedenen Holzsorten. Dazu misst man für ausreichend viele Bretter einer Holzsorte (z. B. Buche) zwei Parameter z. B. Maserung und Helligkeit. Im Anschluss trägt man diese Punkte in eine Ebene ein und zeichnet die konvexe Hülle. Sollten nun Messwerte für eine unbekannte Holzsorte in der konvexen Hülle liegen, so kann man davon ausgehen, dass es sich um ein Buchenbrett handelt. Man ordne z. B. vier Tennisbälle so an, dass man möglichst wenig Verpackungsmaterial benötigt. Das ist eine Minimierung der Oberfläche der konvexen Hülle Gründe für die Verwendung der Delaunay-Triangulation Landschaftsoberflächen sind ebenfalls eine Einsatzmöglichkeit für die Delaunay-Triangulation. Wenn die Koordinaten in eine Ebene transformiert werden, kann eine Delaunay-Triangulation durchgeführt werden. Deswegen erhält man eine Fläche, die in einzelne Dreiecke vollständig aufgeteilt ist. Wird diese Fläche im 3-dimensionalen Raum unter Beibehaltung der Einteilung in Dreiecke auf ihre gegebene Höhe gezogen, wird man einen Körper (in diesem Beispiel eine Landschaftsfläche) erhalten, der aus einzelnen Dreiecksflächen gebildet wurde und eine Nährung der Höhe an einem beliebigen Punkt erlaubt. Das Bild 1 auf der nächsten Seite stellt eine solche Höheninterpolation dar. Es ist das Ergebnis der Delaunay- Triangulation in der Ebene zu erkennen. Die fett markierten Punkte in der Ebene stellen die gegebenen Punkte der Landschaftsoberfläche dar.

17 3.0 Delaunay-Triangulation Seite 10 Bild 1: Höhenprofil eines Bergkamms, der trianguliert wurde [2]. Sicherlich stellt sich jetzt die Frage, warum bei so einem Problem die Delaunay-Triangulation verwenden werden sollte und nicht irgendeine andere. Das nächste Bild veranschaulicht, welche möglichen Fehler auftreten, wenn nicht die Delaunay-Triangulation verwendet wird. Bild 2: Modell der Triangulation des Bergkamms von oben [2]. Die Abbildung zeigt den Verlauf eines Bergkamms. Dabei muss man sich vorstellen, dass man von oben auf den Bergrücken schaut. Der Bergkamm wird durch die senkrechte Line, die von oben nach unten verläuft,

18 3.0 Delaunay-Triangulation Seite 11 dargestellt. Wenn die Höhe des Punkte q gefragt ist, müssen nun die Höhen interpoliert werden. Der linke Teil in Bild 2 gibt eine realistische Auskunft von genau 985 Meter. Blickt man nun den rechten Teil der Abbildung an, erhält man den Wert 23 Meter, der eindeutig zu niedrig ist. Der Grund für dieses Ergebnis ist das Kriterium (siehe Kapitel ), unter dem die Triangulation durchgeführt wurde. Die Triangulation im linken Teil wurde auf möglichst maximale Winkel (Max-Min-Winkelkriterium, siehe ) durchgeführt. Der Fehler im rechten Teil entsteht durch Zulassen von sehr kleinen, spitzen Winkel. Eine wichtige Eigenschaft der Delaunay- Triangulation ist, dass sie den minimalen Winkel in einem Dreieck optimiert. Damit wird der minimale Winkel möglichst groß und somit werden spitze Dreiecke vermieden. Bei der Delaunay-Triangulation wird das sogenannte Max-Min-Winkelkriterium benutzt. Die Delaunay-Triangulation ist dafür bekannt wohlgeformte Dreiecke (es werden spitzwinklige Dreiecke vermieden) zu erzeugen, d. h. es wird angestrebt die Bildung von langen, dünnen Dreiecken zu vermeiden. Die resultierenden Dreiecke überlappen sich nicht und vermaschen eine beliebig große Punktmenge flächendeckend und eindeutig. Die Delaunay- Triangulation ist die zum Voronoi-Diagramm, auch als Dirichlet-Tesselation (Parkettierung) bezeichnete, duale 1 Struktur (Der Exkurs Voronoi- Diagramme ist in Kapitel 4 zu finden). 1 Dual: Zu einen zusammenhängenden, ebenen Graphen ist der duale Graph G* derjenige Graph, dessen Ecken in den Flächen von G liegen und dessen Kanten wie folgt bestimmt sind: Ist e eine Kante von G mit Fläche X auf der einen und Fläche Y auf der anderen Seite, so sind die Ecken X*, Y* (X* liegt in der Fläche X und Y* liegt in der Fläche Y) von G* durch eine Kante e* verbunden. (Siehe Bild 38 und Kapitel 4).

19 3.0 Delaunay-Triangulation Seite Verwendung der Delaunay-Triangulation Sie wird verwendet zur Darstellung von Landschaftsbilder, Spielen, Animationen (Filme), menschlichen Körperansichten und bei CAD-Programmen und Lasertechnik, usw Bedingungen für eine Delaunay-Triangulation Siehe Der inkrementelle Algorithmus Voraussetzungen Die Nachbarschaft einer Kante wird von maximal zwei Dreiecken gebildet. Randkanten haben nur ein Nachbardreieck (Das Dreieck, welches die Kante besitzt). Definition: Wenn ein Dreieck die Kante eines anderen Dreiecks besitzt, bezeichnet man das als eine Nachbarschaft. Demnach besitzt ein Dreieck maximal drei Nachbardreiecke Kriterien beim Triangulieren Bei einer Triangulation von vier Punkten gibt es bereits mehr als ein Dreieck und die Triangulation ist nicht eindeutig. Dabei ist bereits für diesen einfachen Fall eine Technik zur Auswahl der geeigneten Triangulation notwendig. (Notation a() bezeichnet ein Winkelmaß. Siehe 2.4). In diesem Abschnitt wird immer von vier Punkten ausgegangen, die trianguliert werden sollen. Kriterium der kürzeren Diagonalen

20 3.0 Delaunay-Triangulation Seite 13 Eine Triangulation T von vier Punkten heißt bessere Triangulation als T' genau dann, wenn gilt d < d', wobei d die Länge der Diagonalen D T der Triangulation T und d' die Länge der Diagonalen D T der Triangulierung T' bezeichnet. Dieses Kriterium ist nicht in der Lage die Erzeugung langer, dünner, also spitzer, Dreiecke zu vermeiden. In der Charakteranimation wie auch in der FEM (Finite-Element-Methode) ist man bestrebt, kleine Winkel zu vermeiden, um wohlgeformte" Dreiecke (s. Kap. 2.5) zu erhalten. Max-Min-Winkelkriterium: der kleinste vorkommende Dreieckswinkel wird maximiert Eine Triangulation T von vier Punkten heißt bessere Triangulation als T' genau dann, wenn gilt a(t) > a(t') mit a(t) = min{a(t j ) T j T}, wobei a(t j ) den kleinsten Winkel im Dreieck T j bezeichnet. Es ist das Kriterium des größten, kleinsten Winkels und vermeidet lange, spitze Dreiecke. Es liefert stets für vier Punkte eine eindeutige Entscheidung. Es gilt als nicht allgemein, wenn von vier Punkten drei Punkte kollinear sind. Es existiert dann in diesem Fall ohnehin nur eine gültige Triangulierung (siehe folgenden Abschnitt). Min-Max-Winkelkriterium: der größte vorkommende Dreieckswinkel wird minimiert Eine Triangulation T von vier Punkten heißt bessere Triangulation als T' genau dann, wenn gilt a(t) < a(t') mit a(t) = min{a(t j ) T j T}, wobei a(t j ) den größten Winkel im Dreieck T j bezeichnet. Finite-Element-Methoden approximieren, basierend auf einer endlichen Zahl von Dreiecksflächensegmenten, eine Funktion und erlauben das dynamische Verhalten von Objekten zu simulieren. Es werden beispielsweise das Verformungsverhalten von Automobilkarosserien oder thermodynamische Vorgänge in Turbinen und Verbrennungsmotoren simuliert. Die Konvergenz dieser Verfahren und damit die Fehlerabschätzung hängen nicht allein von der Größe des kleinsten Winkels ab. Zu große Winkel sind ebenfalls ungünstig.

21 3.0 Delaunay-Triangulation Seite 14 BERN und EPPSTEIN (vgl. [3] und [4]) weisen auf Arbeiten hin, in denen theoretisch dargelegt wird, wie sich die Konvergenz der FEM bei Auftreten großer Dreieckswinkel verschlechtert. Statt den kleinsten Winkel zu maximieren, minimiert das Min-Max-Winkelkriterium daher den größten Winkel (Häufig führen das Max-Min- und das Min- Max-Winkelkriterium zur gleichen Triangulierung. Vergleichende Tests mit Zufalls-Punktmengen zeigten Abweichungen in nur ca. 10 % der Fälle. Durch diese Methode wird eine lokale Optimalität erreicht, die die globale Optimalität nicht mit einbezieht. Siehe Kapitel ). Weitere Kriterien, die kurz vorgestellt werden: Max-Min-Radiuskriterium Maximiere für die Triangulation von vier Punkten den kleinsten Radius, der Kreise, die in die beiden angrenzenden Dreiecke einbeschriebenen sind. Min-Max-Radiuskriterium Minimiere für die Triangulation von vier Punkten den größten Radius, der Kreise, die in die beiden angrenzenden Dreiecke einbeschriebenen sind. Max-Min-Flächenkriterium Maximiere bei der Triangulation von vier Punkten den kleinsten Flächeninhalt der beiden Dreiecke. Max-Min-Höhenkriterium Maximiere für die Triangulation von vier Punkten die kleinste Höhe in beiden Dreiecken.

22 3.0 Delaunay-Triangulation Seite 15 Minimale Summe der Kantenlängen Minimiere die Summe der Längen der fünf Kanten der vier Punkte (minimum weight triangulation oder minimum length triangulation). Dies ist ein einfaches Maß für die Größe der Dreiecke. Beispiele: Bild 3: Oben Kriterium der kürzeren Diagonalen, in der Mitte Max-Min-Winkelkriterium und unten Max-Min-Radiuskriterium [6]

23 3.0 Delaunay-Triangulation Seite 16 Bild 4: Triangulation nach Min-Max-Kriterium. Lokal optimal, da a(t 2 ) < a(t 1 ). Jedoch ist es nicht global optimal. Deshalb ist eine bessere Triangulation möglich [8]. Das Max-Min-Winkelkriterium ist das einzige bekannte Kriterium, für das alle lokalen Optima stets auch globale Optima sind, da der Algorithmus stets das lokale Optimum (Siehe ) durch das Umkreiskriterium (Siehe ) einhält Fälle bei der Triangulierung von vier Punkten Definition (Lokal optimale Triangulierung): Eine Triangulierung T heißt lokal optimal bzgl. eines Kriteriums K genau dann, wenn jedes Viereck in T, das von zwei Dreiecken gebildet wird, die sich eine Kante teilen, optimal trianguliert ist bzgl. K Erster Fall Man betrachte nun - als lokalen Fall - die Triangulation einer Menge von vier Punkten, die ein konvexes Viereck bilden. Das heißt, dass Viereck ist identisch mit der konvexen Hülle seiner vier Eckpunkte. Außerdem sind die Punkte nicht kollinear. Dann ist die Triangulierung nicht eindeutig. Es gibt zwei Möglichkeiten (siehe Bild 5).

24 3.0 Delaunay-Triangulation Seite 17 Bild 5: Allgemeiner Fall der Triangulierung von vier Punkten. Alle vier Punkte bilden die konvexe Hülle Zweiter Fall Die Bedingung des konvexen Vierecks bedeutet (Erster Fall), dass sich alle Punkte ausschließlich auf dem Rand der konvexen Hülle befinden. Befindet sich einer der Punkte innerhalb der konvexen Hülle, dann gibt es nur eine mögliche Triangulierung bei der drei Dreiecke entstehen (siehe Bild 6). Bild 6: Ein Punkt liegt nicht auf dem Rand Dritter Fall Sind drei Punkte kollinear, dann ist ebenfalls nur eine Triangulierung möglich und es entstehen zwei Dreiecke (Bild 7).

25 3.0 Delaunay Triangulation Seite 18 Bild 7: Drei Punkte liegen auf einer Linie Das Umkreiskriterium Hierbei wird zu einem Dreieck ein weiterer Punkt hinzugefügt. Durch das bekannte Dreieck kann der Umkreis des Dreiecks errechnet werden. Nun muss ermittelt werden, ob der neue Punkt innerhalb oder außerhalb des Umkreises liegt. Sobald er außerhalb liegt, wird der Punkt mit den nächsten zwei Eckpunkten des Dreiecks durch Kanten verbunden. Wenn er innerhalb liegt, wird er auch mit den nächsten zwei Eckpunkten verbunden. Jedoch wird zusätzlich die Diagonale des entstanden Vierecks vertauscht (siehe Bild 8), damit der eingefügte Punkte nicht im Umkreis liegt. Die lokale Eigenschaft das Innere eines Umkreises jedes Dreiecks enthält keine weiteren Punkte (Siehe Abb. unten) ist äquivalent zum Max-Min- Winkelkriterium und ein Verstoß dagegen lässt sich durch Diagonalentausch (Edge flip) aufheben. Das lokale Umkreiskriterium zur Triangulierung von jeweils vier Punkten impliziert das globale Umkreiskriterium für große Punktmengen. Bei dem für sämtliche Dreiecke der Triangulierung gelten muss, dass ihr jeweiliger Umkreis keine weiteren Punkte aus der Punktmenge P beinhalten darf.

26 3.0 Delaunay-Triangulation Seite 19 Bild 8: Umkreiskriterium. Links im Bild wird das Umkreiskriterium verletzt. Durch Diagonalentausch (edge flip) wird rechts eine gültige Triangulierung erreicht. Es genügt eines der beiden Dreiecke zu überprüfen. Das Umkreiskriterium verhält sich in beiden Fällen äquivalent. Dieses einfache Kriterium ersetzt somit das Max-Min-Winkelkriterium ab Kapitel Im nächsten Kapitel wird das Max-Min-Winkelkriterium allerdings noch benötigt Optimale Triangulation Mit Hilfe der für Vierecke eingeführten Entscheidungskriterien aus können auch größere Punktmengen trianguliert werden. Man beginnt bei einer Triangulation mit einem Dreieck und nimmt jeweils einen Punkt hinzu. Damit kann eine optimale Triangulierung erzeugt werden. Dabei stellt sich die Frage, welches Kriterium aus einem lokalen Optimum ein globales Optimum erzeugt? Definition: Eine Triangulation heißt global optimal bzgl. eines Kriteriums K genau dann, wenn jedes Viereck, definiert - durch je zwei entlang ihrer Kanten aneinander anschließenden Dreiecke von T - optimal trianguliert ist bzgl. K. Problem: Es können dabei verschiedene lokal optimale Triangulierungen entstehen (siehe Bild 9). Das ganze ist abhängig von der Reihenfolge.

27 3.0 Delaunay-Triangulation Seite 20 Bild 9: Zwei lokal optimale Triangulierungen. Beide sind bzgl. Min-Max-Winkelkriterium optimal. Hierzu werden die lokalen Maße des betrachteten Kriteriums für alle Dreiecke der Triangulation T in einem lexikographisch sortierten Vektor zusammengefasst und die Vektoren lexikographisch verglichen. Für jede Triangulierung T der Punktmenge P mit m Dreiecken wird ein Vektor a(t) = (a 1,, a m ) durch das lokale Entscheidungskriterium aufgestellt, bei dem die Komponenten a i = a i (T j ) der Größe nach sortiert werden. Wenn z. B. beim Min-Max-Winkelkriterium nun M Dreiecke entstehen, sind 3*m Winkel vorhanden, die sortiert werden müssen. Nun wird jede Triangulation, die durch das Min-Max-Winkelkriterium erzeugt wurde, miteinander verglichen. Dadurch wird die beste Triangulation ermittelt. Denn eine Triangulation T gilt als global optimal, falls keine von T verschiedene Triangulation T' existiert, deren Vektor kleiner (minimierendes Kriterium) oder größer (maximierendes Kriterium) ist. Definition: Eine Triangulierung T einer Punktmenge P heißt global optimal bzgl. eines Kriteriums K genau dann, wenn mit dem obigen Vektormaß a(t) gilt: a(t) >= a(t') (bzw. <=) für jede Triangulierung T' von P gilt. Anmerkung: Die global optimale Triangulation ist, bis auf Änderungen, die das Optimalitätsmaß a(t) konstant halten (neutrale Fälle), eindeutig. Ist eine Triangulation global optimal, so ist sie auch lokal optimal. Umgekehrt ergibt nur das Max-Min-Winkelkriterium aus einer lokal optimalen Triangulation zwingend eine global optimale Triangulation und somit wird das lexikographische Vergleichen der verschiedenen Triangulationen anderer Kriterien hinfällig, da es beim Max-Min-Winkelkriterium nur eine Triangulation gibt. Lokal optimale Triangulation bezüglich anderer lokaler Entscheidungskriterien (Min-Max-Winkelkriterium oder minimales Verhältnis von Umkreis- und Dreiecksflächen) sind oft weit entfernt vom globalen Optimum. Hoschek (vgl. [8], S. 324) zeigt, dass das Max-Min- Winkelkriterium das einzige bekannte Kriterium ist, bei welchem stets lokale Optima auch globale Optima sind. Die mit dem Max-Min- Winkelkriterium erzeugte Triangulierung ist äquivalent zur Delaunay- Triangulierung und somit genau die richtige.

28 3.0 Delaunay-Triangulation Seite Der inkrementelle Algorithmus 1. Als erstes werden drei neue Punkte eingefügt mit denen ein Startdreieck aufgebaut wird. Das Startdreieck soll alle Punkte in seiner Fläche beinhalten, die trianguliert werden sollen. Das Startdreieck initialisiert die Triangulation. Es ist sozusagen die Startinitialisierung. 2. Ein Punkt wird zu der bestehenden Triangulation eingefügt. 3. Feststellen der Dreiecke aus der bereits bestehenden 4. Entfernen dieser Dreiecke aus der bestehenden Triangulation, 5. Verbinden der Randpunkte der Umgebung (Fläche), in der der neue Punkt liegt. So entstehen die neuen Kanten und somit auch Dreiecke. Zuerst muss das Startdreieck erzeugt werden. Die vier letzten obigen Punkte werden dann immer wieder abgearbeitet für alle Punkte, die trianguliert werden sollen. Nun die ersten fünf Punkte nochmals erläutert mit jeweils einem Bild. Zu 1:

29 3.0 Delaunay-Triangulation Seite 22 Bild 10: Startdreieck Es wird ein Startdreieck gebaut, das alle Punkte, die trianguliert werden sollen, in seiner Fläche enthält. Zu 2: Bild 11: Ein Punkt wird in die Triangulation eingefügt [5]

30 3.0 Delaunay-Triangulation Seite 23 Ein Punkt wird zu der bestehenden Triangulation eingefügt. Zu 3 und 4: Bild 12: Die Umkreise werden bestimmt [5] Die Dreiecke, deren Umkreis den Punkt (der in die Triangulation aufgenommen werden soll) enthalten, werden gelöscht. Zu 5: Bild 13: Neue Dreiecke entstehen [5]

31 3.0 Delaunay-Triangulation Seite 24 Es entstehen neue Dreiecke zwischen dem hinzugefügtem Punkt und den Ecken der Umgebung (Fläche), in der der Punkt liegt. Am Ende der Triangulation werden alle Dreiecke, die einen Punkt des Startdreiecks haben, gelöscht. Pseudo-Code for each sample point in the vertex list initialize the edge buffer endfor for each triangle currently in the triangle list endfor calculate the triangle circumcircle center and radius if the point lies in the triangle circumcircle then endif add the three triangle edges to the edge buffer remove the triangle from the triangle list delete all doubly specified edges from the edge buffer this leaves the edges of the enclosing polygon only add to the triangle list all triangles formed between the point and the edges of the enclosing polygon remove any triangles from the triangle list that use the supertriangle vertices remove the supertriangle vertices from the vertex list end Wie zu sehen ist, ist dies nur der Algorithmus für eine Triangulation ohne das Herausnehmen der Löcher oder das Einhalten des Randes. Das wird noch ergänzt (siehe Kapitel 7 und 3.4).

32 3.0 Delaunay-Triangulation Seite Ergebnisse des Algorithmus Graphentheoretisch stellt die Triangulation einen planaren (Def. siehe 2.5), zusammenhängenden Graph dar, der die konvexe Hülle der Punktmenge vollständig umschließt. Wenn jeder Punkt in die Triangulation aufgenommen wurde, gibt es einen Zusammenhang. Die Anzahl der Dreiecke ist etwa gleich groß wie die Anzahl der Außenkanten, da die Delaunay-Triangulation ein planarer Graph ist. Nun der Beweis: Voraussetzungen P habe n Außenkanten t entspricht der gesuchten Zahl der Dreiecke Beweis Lemma Eulersche Polyederformel Der Satz besagt: Seien e die Anzahl der Ecken, f die Anzahl der Flächen und k die Anzahl der Kanten eines konvexen Polyeders. Dann gilt: e + f k = 2 In Worten bedeutet, dass: Anzahl der Ecken plus Anzahl der Flächen minus Anzahl der Kanten gleich zwei. Bei der Triangulation gehört jede Innenkante zu genau 2 Dreiecken und jede der n Außenkanten zu einem Dreieck Gesamt-Kantenzahl k = (3t + n)/2 (Jedes Dreieck besitzt drei Kanten. Addiert mit den Außenkanten und dividiert durch 2, da alle Kanten doppelt gezählt wurden). Die Eulersche Polyederformel beschreibt eine Eigenschaft von konvexen Polyedern, die auch bei planaren Graphen gilt. Für k setzt man (3t + n)/2 ein. Für e wird die Zahl der Außenkanten n eingesetzt und f wird durch t + 1 (Anzahl der Dreiecke und ein Außengebiet) ersetzt: e k + f = 2 n (3t+n)/2 + t + 1 = 2 t = n 2 die Zahl der Dreiecke liegt fest. Die Formel gilt nur, wenn P keine Löcher hat und der Rand konvex ist. Wenn es Punkte gibt, die kollinear auf dem Rand liegen, müssen diese kol-

33 3.0 Delaunay-Triangulation Seite 26 linearen Punkte abzogen werden. Also würde das Ergebnis n 2 (Anzahl der kollinearen Punkte) lauten. 3.3 Mathematische Grundlagen Konvexe und nichtkonvexe Hüllen Definition Als konvex (lat.: convexus gewölbt, gerundet) bezeichnet man Formen (Flächenteile, Linien), die nach außen gewölbt sind. Definition siehe 2.5. Bild 14: Links ist eine konvexe Hülle und rechts eine nichtkonvexe Hülle

34 3.0 Delaunay-Triangulation Seite 27 Konvexe Hülle Definition siehe 2.5 Bild 15: Konvexe Hülle Als nichtkonvex bezeichnet man Formen, die nach innen gewölbt sind. Definition siehe Flächeninhalt von Dreiecken Wenn man eine Dreiecksfläche berechnen möchte und man gegen den Uhrzeigersinn das Dreieck durchläuft, kann man die Punkte markieren mit z. B. (siehe Bild 16) P 0, P 1 und P 2 und bekommt die Koordinaten x 0 und y 0 für P 0, x 1 und y 1 für P 1, x 2 und y 2 für P Berechnung Durch die Hälfte der Determinante von

35 3.0 Delaunay-Triangulation Seite x x x y y y kann der Flächeninhalt der drei Punkte bestimmt werden. Als Lösung, wenn die Determinante ausgerechnet wird, erhält man (x 1 * y 2 + x 2 * y 0 + x 0 * y 1 - x 2 * y 1 - x 0 * y 2 - x 1 * y 0 )*0.5. Die Ergebnisse können negativ und positiv sein. Wenn die Durchlaufrichtung im Uhrzeigersinn ist, sind die Ergebnisse negativ und mit (-1) zu multiplizieren. Die Ergebnisse bei dieser Berechnung gegen den Uhrzeigersinn sind positiv. Das Ergebnis hängt also von der Orientierung der Punkte ab. Ein anderer Rechenweg wäre über das Kreuzprodukt (auch: Vektorprodukt genannt). Die Rechnung lautet dort: 0.5 * a x b Bild 16: Dreieck

36 3.0 Delaunay-Triangulation Seite Kreis mit 3 Punkten erzeugen Für das Umkreiskriterium wird diese Rechung benötigt, da immer wieder ausgerechnet werden muss, ob der Punkt, welcher zu der Triangulation hinzugefügt werden soll, im Umkreis der Dreiecke ist, die bereits durch die Triangulation entstanden sind Berechnung Bild 17: Kreis mit drei Punkten aufziehen, die auf dem Kreis liegen. Wie auf dem Bild oben zu sehen, ist der Kreismittelpunkt relativ einfach zu berechnen. Als erstes muss die Steigung m a der Geraden a zwischen den Punkten P 1, P 2 und die Steigung m b der Geraden b zwischen den Punkten P 2, P 3 ermittelt werden. Die Punkte haben die Koordinaten x 1 und y 1 für P 1, x 2 und y 2 für P 2 und x 3 und y 3 für P 3. m a = (y 2 y 1 ) / (x 2 - x 1 ) m b = (y 3 - y 2 ) / (x 3 x 2 ) Diese beiden Steigungen (m a und m b ) müssen negiert und davon der Kehrwert genommen werden, da die Steigung der Geraden y a und y b. (im Bild 17 sind die Indices groß geschrieben) lotrecht/senkrecht sind zu den Steigungen m a und m b. -1/m a = -(x 2 - x 1 ) / (y 2 y 1 ) (Steigung der Geraden a im Bild 17)

37 3.0 Delaunay-Triangulation Seite 30-1/m b = -(x 3 x 2 ) / (y 3 - y 2 ) (Steigung der Geraden b im Bild 17) Nun wird der Kreismittelpunkt berechnet. Dazu wurden die beiden Gleichungen y a und y b der Geraden aufgestellt. Diese erhält man, da die Geraden, die Steigungen von oben besitzen und die neuen Geraden y a und y b durch die Mittelpunkte der Geraden zwischen den Punkten P 1 und P 2 bzw. P 2 und P 3 gehen. So das x verschoben ist, um den Mittelpunkt der Geraden zwischen den Punkten P 1 und P 2 bzw. P 2 und P 3. Der y- Achsenabschnitt ist der Mittelpunkt der Geraden zwischen den Punkten P 1 und P 2 bzw. P 2 und P 3. y a = -1/ma (x (x1 + x2)/2) + (y1 + y2)/2 y b = -1/mb (x (x2 + x3)/2) + (y2 + y3)/2 Die beiden Gleichungen y a und y b werden für y (y a = y b ) gleichgesetzt und nach x aufgelöst. x c (der x-wert des Kreismittelpunktes) wird somit errechnet. Heraus kommt, nach einigem Umformen, die Gleichung: Dann wird die Lösung x c für x entweder in die Gleichung y a oder y b eingesetzt, um y c (der y-wert des Kreismittelpunktes) zu berechnen. Der Radius wird in folgender Weise berechnet. dx = x 2 x c dy = y 2 - y c rsqr = (dx * dx + dy * dy)

38 3.0 Delaunay-Triangulation Seite Punkt im Kreis Da man den Kreisradius kennt durch die Berechung in , kann ein Punkt P darin unterschieden werden, ob dieser im Kreis ist oder nicht. Dazu muss nur verglichen werden, wie groß der Abstand zwischen P (Mit den Punkten (P x /P y )) und Kreismittelpunkt M k (Mit den Punkten (M kx /M ky )) ist. dx = P x M kx dy = P y M ky drsqr = (dx * dx + dy * dy) Ist der Abstand drsqr kleiner wie der Radius rsqr (aus dem Abschnitt vorher) liegt der Punkt im Kreis. Bei gleichen Werten liegt er auf dem Kreisrand, und ist der Abstand größer liegt der Punkt außerhalb des Kreises Berechnung eines Kreisbogens Analytische Lösung Auf diese Berechnung wird im gesamten Algorithmus immer wieder zurückgegriffen, wenn z. B. Kreisbögen oder Bohrlöcher ins Spiel kommen. Deshalb wird kurz vorgestellt wie man Kreisbögen berechnet. Dazu benötigt man nur den Startwinkel des Kreisbogen im Bogenmaß (bei welchem Bogenmaß der Kreisbogen beginnt. 0 für 0, PI/2 für 90, PI für 180 usw.), Endwinkel des Kreisbogen im Bogenmaß (bei welchem Bogenmaß der Kreisbogen endet), Radius des Kreisbogen, Kreismittelpunkt des Kreisbogen und die Auflösung, das heißt mit wie vielen Punkten der Kreis aufgespannt werden soll. Der Gesamtwinkel ist nichts weiter als Endwinkel minus Startwinkel. Dieser wird einfach durch die Anzahl der Punkte, die den Kreis aufziehen sollen, dividiert und man erhält den Wert, der in die Variable resolution geschrieben wird. In einer For-Schleife, welche von Start- zum Endwinkel läuft und immer um den Wert resolution erhöht wird, werden die Kreisbogenpunkte durch die zwei Formeln auf der nächsten Seite berechnet:

39 3.0 Delaunay-Triangulation Seite 32 arcs.centre.x + radius * Math.Cos(alpha) die den x-wert und arcs.centre.x + radius * Math.Sin(alpha) die den y-wert berechnet. Alpha hat herbei denselben Wert wie der Gesamtwinkel. 3.4 Sonderfälle Sonderfälle sind Probleme, die nicht durch die Delaunay-Triangulation gelöst werden, jedoch so wichtig sind, dass sie analysiert und gelöst werden müssen Nichtkonvexe Hülle Einleitung und Idee Die Definition konvexer und auch nichtkonvexer Hüllen kann man in 2.5 und nachlesen. Ein Objekt, welches trianguliert werden soll, kann auch eine nichtkonvexe Hülle besitzen. Es muss ein Weg gefunden werden, der diese nichtkonvexen Stellen finden kann, da das Ergebnis der Triangulation eine konvexe Hülle ist. Dazu sollte erst mal erklärt werden, woran sich konvexe und nichtkonvexe Stellen unterscheiden. Wie in der Definition beschrieben, sind konvexe Stellen nach außen gewölbt. Während nichtkonvexe nach innen gewölbte Stellen sind. Alle Stellen bestehen aus Dreiecken und deshalb kann man benutzen. Denn konvexe Hüllen haben ein positives Ergebnis beim Berechnen des Flächeninhalt der einzelnen Dreiecke und nichtkonvexe ein negatives, da bei einer konvexen Stelle die Durchlaufrichtung gegen und bei einer nichtkonvexen Stelle die Durchlaufrichtung mit dem Uhrzeigersinn (siehe Bild 18) ist. Der nächste Punkt ist immer der Nachbar und damit kann dies genutzt werden. Das ist so, weil die Punkte, die man bekommt, gegen den Uhrzeigersinn sortiert sind.

40 3.0 Delaunay-Triangulation Seite 33 Bild 18: Links nichtkonvexe und rechts konvexe Stellen Es gibt ganze Seitenteile, die nichtkonvexe seien können (Siehe Bild 19). Bild 19: Nichtkonvexe Hülle. Schwarz der eigentliche Rand und grün die Dreiecke, die entfernt werden müssen.

41 3.0 Delaunay-Triangulation Seite 34 Wie auf Bild 19 zu sehen, sind die nichtkonvexen Stellen einfach nach innen gewölbte Dreiecke. Die durch unterscheidbar von nach außen gewölbten Dreiecken, also konvexen, sind. In wird der Flächeninhalt von Dreiecken durch das halbe Vektorprodukt berechnet und das Ergebnis ist positiv, wenn die Durchlaufrichtung gegen den Uhrzeigersinn und das Dreieck konvex ist. Bei einem nichtkonvexen Dreieck, ist das Ergebnis negativ. Wichtig ist auch, dass die Punkte gegen den Uhrzeigersinn gespeichert sind. Man muss also nur den Rand durchgehen und sich alle Dreiecke merken, welche einen Flächeninhalt kleiner Null besitzen und diese dann löschen Darstellung von Löchern Einleitung und Idee In diesem Abschnitt wird der Sachverhalt ausgenutzt, dass mehrere lokale Triangulationen eine globale ergeben. In der XML-Datei sind diese Punkte gesondert als Innenkonturen (inner contours) gespeichert. Die Punkte der Bohrlöcher werden ans Ende zu den anderen Punkte (Randpunkte der Scheibe), die trianguliert werden müssen, angehängt. Dann werden alle Punkte trianguliert und das Ergebnis sieht folgendermaßen aus:

42 3.0 Delaunay-Triangulation Seite 35 Bild 20: Viereck mit Löchern Wie man sieht, sind die Löcher durch Dreiecke aufgezogen, welche nicht nach außen ragen. Also muss man nun einfach alle Dreiecke löschen, deren Punkte einen höheren Indexwert haben als die Randpunkte (Indexwert siehe 2.5). Dabei dürfen aber die Dreiecke zwischen den Bohrlöchern nicht gelöscht werden. Im Kapitel 7 wird das Thema ausführlicher behandelt.

43 4.0 Exkurs Voronoi-Diagramm Seite Exkurs Voronoi-Diagramm Wenn von der Delaunay-Triangulation gesprochen wird, fällt immer wieder ein Name, der hier kurz erläutert werden soll, da es durch aus interessant ist, was sich dahinter verbirgt. 4.1 Das Postamtproblem Das Voronoi-Diagramm 2 befasst sich unter anderem mit dem Problem, welchen Einzugsbereich Postämter haben. Wenn sich z. B. ein Kunde fragt, welches Postamt für ihn liegt am nächsten? Es sind also Entfernungs- und Aufteilungssprobleme, die damit bearbeitet werden können. Ein Voronoi- Diagramm unterteilt eine Ebene mit Punkten in Regionen auf. Das Voronoi-Diagramm ist auch eine Struktur zur Speicherung von Mengen von Punkten, die sich auf Nachbarschaftsanfragen stützen. 2 Die Voronoi-Diagramme erhielten ihren Namen von dem Mathematiker M. G. Voronoi, der diese geometrische Konstruktion 1908 entdeckte. G. L. Dirichlet kannte dieses Problem bereits 1850, weshalb das Voronoi-Diagramm manchmal auch Dirichlet Tesselation genannt wird. Voronoi-Diagramme sind wichtige Konstruktionen, die durch Gitter definiert werden. Sie sind weit verbreitet in der Wissenschaft und werden auf den unterschiedlichsten Gebieten eingesetzt. Oft wurden sie nach der Person benannt, die sie als erstes in einem spezifischen Fachgebiet einsetzten. In der Meteorologie sind sie als Thiessen Polygone bekannt, um Polygone zu definieren, in deren Mitte sich eine Wetterstation befindet. Die Voronoi-Diagramme sind zudem bekannt als Wigner-Seitz cells in der Metallurgie oder als Blum's transform in der Biologie.

44 4.0 Exkurs Voronoi-Diagramm Seite 37 Bild 21: Gebietsaufteilung [6] Bild 22: Begriffe des Voronoi-Diagramm [6] In Bild 22 sind die Sprachkonventionen bei Voronoi-Diagrammen zu erkennen. 4.2 Begriffe Die wichtigsten Begriffe der Voronoi-Diagramme werden hier kurz erläutert.

45 4.0 Exkurs Voronoi-Diagramm Seite 38 Bild 23: Voronoi Knoten und Kanten [6] 1) Ein Voronoi-Knoten, der Mittelpunkt eines Kreises, (mittlerer blauer Punkt in Bild 15) definiert sich dadurch, dass der Umkreis des Knotens mindestens drei Punkte enthält, die die Postämter aus dem Beispiel (schwarze Punkte in Bild 15) darstellen sollen. 2) Am oberen blauen Punkt erkennt man eine Voronoi-Kante, die sich durch die Mittelsenkrechten der beiden Postämter (schwarzen Punkte in Bild 15) ergibt. 3) Voronoi-Zellen besitzen die Eigenschaft, dass sie konvexe Polygone (die weiße Fläche zwischen den Kanten in Bild 15) sind.

46 4.0 Exkurs Voronoi-Diagramm Seite 39 Bild 24: Veranschaulichung der Dualität Das Voronoi-Diagramm teilt eine Menge von Punkten (in der Ebene) in Gebiete ein. Dies wird erreicht durch Zeichnen der Mittelsenkrechten, die jede Seite des Dreiecks in der Mitte schneiden (siehe Bild 24). Diese Mittelsenkrechten treffen sich im Mittelpunkt des Umkreises bzw. im Voronoi- Knoten. Die Delaunay-Triangulation der Punktmenge P ergibt sich dann als duale Struktur (siehe Fußnote Seite 10) des Voronoi-Diagramms und erzeugt ein globales Optimum. Als nächstes einige Fälle, die beim Voronoi- Diagramm beachtet werden müssen. 4.3 Fälle bei der Voronoi-Konstruktion Punkt im Umkreis

47 4.0 Exkurs Voronoi-Diagramm Seite 40 Bild 25: Punkt im Kreis Die Dreiecke müssen nochmals berechnet werden. Die Umkreise der Dreiecke dürfen mehr als drei Voronoi-Punkte enthalten, wobei der Voronoi- Knoten der Mittelpunkt des Umkreises ist (siehe Abschnitt vorher) Weiterer Punkt im Dreieck selbst Bild 26: Punkt im Dreieck Bei einem weiteren Punkt im Dreieck entstehen drei neue Dreiecke. Also müssen diesmal neue Dreiecke im alten erzeugt werden. Das alte Dreieck fällt zudem weg, da es nun die drei neuen beinhaltet.

48 5.0 Fenster- und Glaseigenschaften Seite Fenster- und Glaseigenschaften Dieser Abschnitt ist wichtig für den Aufbau der Fensterscheibe und die Verwendung von Materialien, die in.net (Engl.: ausgesprochen dot net) 3.0 (Siehe Kapitel 6.2) zu Verfügung gestellt werden. 5.1 Fensteraufbau Das Fenster besteht natürlich aus Fensterscheiben, einem Abstandhalter zwischen den Glasscheiben, der meist eine silbrig, glänzende Oberfläche besitzt. Ein schwarzer, matter Gummi liegt zwischen Scheibenrand und Abstandhalter. Bis jetzt werden 2-fach-ISO-Fenster animiert, d. h. der Aufbau besitzt folgende Struktur: Scheibe, Abstandhalter, Scheibe Mehrfachisoliertes Glas (3-fach-ISO usw.) hat pro Scheibe, die es mehr enthält, noch einen Abstandhalter zwischen der neuen Scheibe und der, wo der Abstandhalter sonst noch aufliegt. Bei Glas im Innenausbau und den ISO-Fenstern müssen Dinge wie Innenausschnitte und Bohrlöcher berücksichtigt werden. Türen oder Dekorationsglas sind auch mehr als dekoratives Element bedacht und bestehen aus einer oder mehreren Scheiben ohne Abstandhalter. Außerdem kann Strukturglas vorkommen, d. h. die Vorder- und Rückseite der Glasscheibe ist z. B. aufgeraut.

49 5.0 Fenster- und Glaseigenschaften Seite Eigenschaften von Glas In diesem Abschnitt interessiert uns, welche Reflektions- und Refraktionseigenschaften Glas besitzt. Glas bricht einen Teil der Lichtstrahlen und reflektiert den anderen Teil. Wenn man durch Glas schaut, ist die andere Seite um wenige Millimeter versetzt. Also wird das Licht gebrochen. Wird jedoch auf Glasflächen geschaut, die viel Sonnenlicht reflektieren, sieht man ein weiß-gelbes Glanzlicht. Das sind die reflektierten Sonnenstrahlen. Am Übergang von Licht zwischen Luft und Glas kommt es abhängig vom Einfallswinkel und der Glassorte zu einer Reflektion von ca. 4-9% des einfallenden Lichts. Somit wird das restliche Sonnenlicht gebrochen. Diese Eigenschaften sollten nachgebildet werden mit Hilfe des.net 3.0 und dessen WPF (Windows Presentation Foundation beschrieben in Kapitel ). Durch das WPF kann man auf einige Materialarten zugreifen und diese bei Verlangen unterschiedlich stark transparent erscheinen lassen Materialarten des WPF Das WPF stellt einige Materialen zu Verfügung. Diese werden hier vorgestellt Lambert Material Das Lambert Material (auch diffuses Material genannt) eignet sich gut für matte Oberflächen. Es simuliert eine Art raue Oberfläche, welche die meisten Lichtstrahlen absorbiert und somit auch keine Glanzlichter (Specular Highlights) hat. Die Flächen erscheinen aus allen Richtungen betrachtet gleich hell, da sie das Licht mit gleicher Intensität in alle Richtungen gleichförmig reflektieren. Die Helligkeit eines Punktes hängt nur vom Winkel zwischen der Richtung zur Lichtquelle und der Flächennormalen ab. Im WPF kann zudem noch die Transparenz (Opacity) eingestellt werden. Viele Materialen unserer Alltagswelt können gut mit diesem Material nachgebildet werden, z. B. Papier, Holz usw.

50 5.0 Fenster- und Glaseigenschaften Seite 43 Bild 27: Lambert Material Emissives Material Die Eigenschaft "Emissive" gibt die Farbe an, die ein Objekt von Natur aus emittiert, unabhängig von dem Licht, welches auf das Objekt fällt. Diese Eigenschaft ist auch dann wichtig, wenn es kein Licht gibt. Sie lässt ein Objekt glühend erscheinen. Ein Objekt strahlt durch diese Eigenschaft jedoch selbst kein Licht aus. Benachbarte Objekte werden dadurch nicht heller dargestellt. Hier kann ebenfalls die Transparenz eingestellt werden. Lampen wären zum Beispiel mit einem solchen Material auszustatten. Bild 28: Emissives Material

51 5.0 Fenster- und Glaseigenschaften Seite Specular Material Mit der Eigenschaft Specular (Glanzpunkte) kann ein Effekt berücksichtigt werden, der in der Realität so oft vorkommt, dass er kaum noch wahrgenommen wird. Dieser Effekt entsteht durch Unregelmäßigkeiten in der O- berflächenstruktur eines Materials und ist als heller Fleck auf der Oberfläche eines Objektes sichtbar. Denken wir an ein Bild mit einem Apfel. Der Apfel selbst ist grün. Aber an der Stelle, an der besonders viel Licht auf den Apfel fällt, erscheint ein heller Fleck. Wenn stattdessen eine Farbe verwendet wird, die näher an der Farbe des dargestellten Objektes liegt, erscheint der Fleck weniger hell. Solche Farbwerte werden häufiger zur Darstellung von metallischen Gegenständen verwendet. Ansonsten werden glänzende Materialien - wie zum Beispiel Kunststoffe - auf diese Weise gut dargestellt. Auch hier kann optional eine Transparenz und dazu noch der Wert SpecularPower, der angibt wie stark die Reflektion sein soll, eingestellt werden. Bild 29: Specular Material

52 5.0 Fenster- und Glaseigenschaften Seite Verwendung der Materialen Im Fensteraufbau im Abschnitt 5.1 wurden die einzelnen Fensterteile beschrieben, die animiert werden sollen. Das Lambert Material wird für die matten Oberflächen des Gummis benutzt. Das Glas erhält ein Emissives und ein Specular Material. Der Abstandhalter bekommt ein Specular Material.

53 6.0 Verwendete Programmiersprachen und Ressourcen Seite Verwendete Programmiersprachen und Ressourcen Dieser Abschnitt wird klären, was ein XML ist, was.net 3.0 und speziell WPF alles bieten und welche Programmiersprache benutzt wurde. 6.1 C# (CSharp) C# ist eine rein, objektorientierte Programmiersprache, die der Softwarehersteller Microsoft (MS) im Rahmen seiner.net-strategie entwickelt hat und später als ein Standard von ECMA (European Computer Manufacturers Association) und ISO akzeptiert wurde. Die Sprache zeigt deutliche parallelen zu Java und C++. Viele Konzepte der beiden Sprachen finden sich in C# wieder Unterschiede C++ und C# Laufzeitumgebung 1) Sobald ein Objekt nicht länger benötigt wird, erfolgt das Löschen des Objektes über die Speicherbereinigung. Destruktoren (= Finalisierungsroutinen) können nicht mehr im gleichen Umfang wie in C++ zur Durchführung von Bereinigungsaufgaben eingesetzt werden. 2) Es gibt nur noch Zeiger im unsafe-modus. Diese werden jedoch selten eingesetzt. Also existieren keine generellen Zeiger mehr. C# verwendet deshalb Verweise, die denen von C++ ähneln. Der kompilierte Code (Ausgedrückt in der.net-zwischensprache IL) und auch die Metadaten, die Beschreibungen des kompilierten Codes enthalten, werden in Assembler kompiliert. Die include-dateien (.h Header Dateien) fallen weg, da alle.net-sprachen über die Metadaten die gleichen Informationen abfragen, wie sie die C++.h-Dateien enthalten.

54 6.0 Verwendete Programmiersprachen und Ressourcen Seite 47 3) Das Aufrufen von systemeigenem Code ist etwas zeitaufwendiger. 4) Eine Ausnahmebehandlung (Exception) wird anstatt einer Fehlerrückgabe verwendet C#-Objekte 1) Nur eine Einfachvererbung von Klassen ist möglich, obwohl das Implementieren von mehreren Schnittstellen zulässig ist, da C#-Objekte allesamt auf die Basisklasse Object zurückgehen. 2) In einer Struktur können sich kleine, schlanke Objekte befinden, die nicht dem Heap (wie Objekte), sondern einem Stack zugeordnet werden. 3) Objektboxing: Falls erforderlich ist dies bei C#-Strukturen und andere Wertetypen möglich (Einschließlich der integrierten Datentypen). Die Werte werden dann in einen Wrapper (Das Wrap ist die Hülle oder auch als Hüllenklasse bezeichnet) gepackt und in den Heap gelegt, um mit einem Objekt aus dem Heap kompatibel zu sein. Das vereinheitlicht das Typensystem und ermöglicht die Verwendung von Variablen als Objekte und zudem entsteht kein O- verhead, wenn eine Vereinheitlichung nicht erforderlich ist.

55 6.0 Verwendete Programmiersprachen und Ressourcen Seite C#-Anweisungen 1) Das new-schlüsselwort ist gleichzusetzen mit Abrufen einer neuen Kopie von einem Objekt. Das Objekt wird dem Heap zugeordnet, wenn es sich um einen Verweistyp handelt. Es wird dem Stack oder intern zugeordnet, wenn es sich um einen Wertetyp oder eine Struktur handelt. 2) Keine automatische Konvertierung von int in bool, d. h. boolsche Bedingungen müssen auch boolsche Variablen sein. 3) Switch-Anweisungen reduzieren die Fehlerzahl, da Fehlschläge verhindert werden. Switch kann nun auch für Zeichenfolgen (String o- der Char) verwendet werden. 4) Zum Iterieren über die Elemente von Arrays, Zeichenfolgen oder anderen Collections bietet C# die von Visual Basic übernommene foreach-schleife. 5) Über checked und unchecked werden arithmetische Operationen und Konvertierungen auf einen Überlauf geprüft. Beispiel (int besitzt Wertebereich von bis ): int i = , j = 5, k; k = checked(i + j); Es wird beim Überlauf nicht mit Zufallszahlen weitergerechnet, sondern es wird ein Ausnahmefehler ausgelöst. Somit wird die Berechnung nicht weiter fortgeführt.

56 6.0 Verwendete Programmiersprachen und Ressourcen Seite Funktionen, die in C# nicht zu Verfügung, stehen 1) Mehrfachvererbung 2) Const-Mitgliedsfunktionen oder Parameter. Const-Felder werden unterstützt. 3) Globale Variablen 4) Typedef. Es können nicht mehr Synonyme (oder andere Namen) für bestehende Datentypen gebildet werden. 6.2.net 3.0 In diesem Abschnitt wird kurz das.net 3.0 erläutert und einige Objekte aus.net 3.0, die in der Software benutzt wurden. Das.net-Framework (Framework heißt nichts anderes als Ansammlung von Klassen) 3.0 bündelt die Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), Windows Workflow Foundation (WFF) und Windows CardSpace (WCS) alias InfoCard. Zusätzlich sind alle Komponenten aus.net 2.0 (einschließlich ASP.Net, WinForms und ADO.Net) enthalten Einführung in das.net 3.0.net ist ein SDK (Software development kit) oder anders eine Plattform für aktuelle Programme, die für Programmiersprachen entwickelt wurden, die.net unterstützen (C# oder Visual Basic.net). Es ist eine Technologie, die verschiedene Betriebssystem-Funktionen zusammenfasst und an einem zentralen Punkt anbietet. Damit sollen veraltete Technologien und Vorgehensweisen der Programmierer wie z.b. COM 3 oder API 4 -Aufrufe im Programmcode ersetzt 3 COM (Component Object Model) ist von Microsoft um Windows Klassen aus DLLs zu importieren, damit Code wieder verwendet wird.

57 6.0 Verwendete Programmiersprachen und Ressourcen Seite 50 werden. Microsoft stellt diese Plattform als Umsetzung des Common- Language-Infrastructure-Standards 5 (CLI) für Windows zu Verfügung Einige wichtige Objekte und Methoden Einige Objekte wie die Materialtypen aus Kapitel wurden bereits vorgestellt. Das.net stellt jedoch bedeutend mehr zu Verfügung. In diesem Abschnitt werden einige Objekte und einige derer Funktionen beschrieben, die für die Umsetzung relevant waren Collection In.net gibt es eine Vielzahl von Collection (ein Array für Objekte) für verschiedene Typen. Eine Point3DCollection sammelt Punkte (einzelne Punkte mit drei Koordinaten im.net sind vom Typ Point3D), die aus drei Koordinaten bestehen. Für integer- und double-werte stellt.nett eine int32collection bzw. doublecollection zu Verfügung. Eine PointCollection sammelt Objekte z. B. Punkte, die aus zwei Koordinaten bestehen. Einige Methoden und Eigenschaften, die Collections immer besitzen: - Add(Point3D) fügt der Collection einen Punkt am Ende der Collection hinzu. - Insert(int, Point3D) fügt der Collection an einer bestimmten Stelle, die in dem int-wert steht, einen Punkt hinzu. - Remove(Point3D) löscht den Punkt aus einer Collection. 4 API (Application Programming Interface) ist eine Schnittstelle einer Software zu einer anderen, um die eine an die andere anzubinden. 5 Die CLI ist ein ISO/IEC/ECMA Standard, der Systeme spezifiziert und somit die sprachund plattformneutrale Anwendungsentwicklung und -ausführung ermöglicht.

58 6.0 Verwendete Programmiersprachen und Ressourcen Seite 51 - RemoveAt(int) löscht den Punkt an der Stelle des integer-wertes. - Clone(): Die Werte einer Collection werden einer anderen übertragen. Dabei sind beide Collection unterschiedliche Objekte im Heap, die nicht manipulieren werden können. Mit Collection A = Collection B kann man durch Collection B Collection A manipulieren. Wenn man Werte löscht oder hinzufügt in Collection B, wird das bei Collection A ebenfalls getan und umgekehrt. Es sind also die gleichen Objekte im Heap. - Count() gibt an wie viele Objekte eine Collection besitzt. Bei der Vector3DCollection, die Vektoren mit drei Koordinaten sammelt, kommen einige interessante mathematische Funktionen hinzu. Diese Collection vereinfacht die Normalenberechnung, falls man diese berechnen muss. Methoden: - AngleBetween(Vector3D, Vector3D): Winkel wird zwischen den beiden übergebenen Vektoren berechnet. - CrossProduct(Vector3D, Vector3D): Kreuzprodukt wird zwischen den beiden übergebenen Vektoren berechnet. - Divide(Vector3D, double): Jede Vektorkomponente wird durch den double Wert dividiert. - UnaryNegation(Vector3D) negiert jede Vektorkomponente WPF WPF dient zur Ausgabe von 2-D-/3-D-Grafiken, Video, Audio und Bildern. Es setzt, im Gegensatz zu seinen Vorgängern GDI und GDI+, auf Directx auf und bietet dadurch volle Hardwarebeschleunigung. WPF ist für die.net Sprachen C# und Visual Basic (VB) verfügbar. Es wird mit der Markup- Sprache XAML ausgeliefert. Die für das Entwerfen von Benutzeroberflächen (Graphic User Interface (GUI)) eingeführt wurde. XAML basiert auf

59 6.0 Verwendete Programmiersprachen und Ressourcen Seite 52 XUL (User Interface Language), das zu erst für das Mozilla Projekt entwickelt wurde, jedoch nun auch von anderer Software genutzt wird. Zudem entspricht XAML dem XML-Standard (Siehe 6.3) und ermöglicht es O- berflä-chenelemente hierarchisch anzuordnen. Dadurch wird eine strikte Trennung von Anwendungslogik und Oberflächendarstellung erreicht. XAML ist aber nicht weiter wichtig für die Umsetzung Voraussetzung damit WPF einen 3-D Körper darstellt Das Objekt MeshGeometry3D ist hierfür wichtig. Dieses Objekt besitzt folgende Werte, die wichtig waren: 1) Positions: eine Point3DCollection (sammelt Punkte mit drei Koordinaten Werten) 2) TriangleIndices: eine int32collection (sammelt Dreiecksindexe als int-werte) 3) Normals: eine Vector3DCollection (sammelt Vektoren mit drei Elementen) 4) Textures: eine PointCollection (sammelt Punkte mit zwei Koordinatenwerten) Die letzten beiden Collections sind optional und die ersten beiden verbindlich anzugeben. Der ersten Collection werden die Punkte mit den x, y, z Koordinaten übergeben, die z. B. das darzustellende Fenster besitzt. Die zweite bekommt die Dreiecksindices, die dadurch resultieren wie der Delaunay-Alogrithmus das Dreiecksnetz erzeugt. Die Dreiecke müssen gegen den Uhrzeigersinn beschrieben werden, wenn die Vorderseite sichtbar sein soll. Sind die Indexe im Uhrzeigersinn, sieht man die Scheibe erst, wenn man von der Rückseite auf das Fenster schaut. Die Indexe der Dreieckspunkte ergeben sich so: Der erste Punkt, der in der Point3DCollection Position ist, hat den Indexwert 0, der zweite den Wert 1 usw. Die Normalen werden in der dritten

60 6.0 Verwendete Programmiersprachen und Ressourcen Seite 53 Collection aufbewahrt. Wenn die Normalen nicht berechnet werden, macht dies das WPF selbständig. Die Werte dienen der Beleuchtung (näheres dazu im folgenden Abschnitt). Die Texturkoordinaten, die der letzte Collection übergeben werden, werden im übernächsten Kapitel behandelt Normalen Normalen sind Vektoren, die orthogonal von der Oberfläche stehen. Mit dem Kreuzprodukt von zwei Vektoren wird eine Normale berechnet. Dann sollte die Normale normiert werden, d. h. die Länge der Normale soll gleich eins sein. Das gelingt durch das ermitteln der Länge des Vektors, der durch das Vektorprodukt entstanden ist. Dann sollte man jede Vektorkomponente durch die ermittelte Länge dividieren. Jedem Punkt (Vertex normal) kann beim WPF eine Normale übergeben werden. WPF rechnet intern mit den Normalen weiter. Die Normale gibt an, in welchem Winkel (hier: alpha) die Normale und der Lichtstrahl stehen (siehe Bild 30). Aus dem Skalarprodukt der normierten Normale (Face normal) multipliziert mit dem normierten Lichtvektor wird alpha berechnet, dessen Kosinus die Helligkeit bestimmt. Die 3-D-Oberfläche ist am hellsten, wenn das Licht koaxial (parallel) zur Normalen auftrifft. Zeigt also die Normale in Richtung der Lichtquelle, soll die Farbe der Oberfläche hell sein. Zeigt dieser weg, wird sie umso dunkler. Sind Normale und Lichtstrahl parallel und haben die gleiche Richtung, ergibt das Punktprodukt 1 und somit volle Helligkeit. Stehen sie rechtwinkelig aufeinander, ist das Ergebnis 0 und zeigen sie entgegengesetzt ist es -1 (Siehe Bild 31). Bild 30: Links: Oberfläche mit normierter Normalen; Rechts: Oberfläche mit Normalen und Winkel alpha von [10]

61 6.0 Verwendete Programmiersprachen und Ressourcen Seite 54 Bild 31: Verhältnisse von alpha und der Helligkeit von [10] Wie oben beschrieben besitzt ein Dreieck, da jeder Punkt eine Normale besitzt, drei Normalen. Wenn zwei oder mehr Dreiecke (wie z.b. an einer Pyramidenspitze) zusammenstoßen, kann man die am Punkt versammelten Normalen zu einer Durchschnittsnormalen mitteln, die die Helligkeit der Ecke recht gut wiedergibt Texture mapping Um Oberflächen dreidimensionaler Modelle mit zweidimensionalen Bildern (Texturen) auszustatten (statt mit Material), gibt es das Verfahren der Musterabbildung (Texture mapping). Computergenerierte Bilder erscheinen durch Texturen detailreicher und realistischer. Das zugrundeliegende Modell muss nicht verändert oder verfeinert werden. Bei Strukturglas wird auf die triangulierte Scheibe einfach ein Bild auf die Vorder- und Rückseite gelegt. Deshalb wird Texture mapping benötigt. Für das Bestimmen eines Punktes in der Textur hat sich ein Koordinatensystem eingebürgert, in dem (0/0) die linke untere Ecke und (1/1) die rechte obere Ecke der Textur/des Bildes bezeichnet. Die beiden anderen Ecken sind dann folgerichtig (1/0) und (0/1). Die Koordinaten werden meist u und v genannt und sind Fließkommazahlen (double-werte). Wenn der Zahlenwert einer Texturkoordinate unter 0 oder über 1 ist und sich somit unter bzw. über dem Rand der Textur befindet, wird die Textur wiederholt.

62 6.0 Verwendete Programmiersprachen und Ressourcen Seite 55 Bild 32: Texturen Wie auf dem Bild 32 zu erkennen, werden die relativen Texturkoordinaten einfach auf die Oberflächenpunkte der Modelle gelegt. So muss man bei der Berechnung die Oberflächenpunkte in x- und y-richtung in Relation zu der Gesamtgröße des Modells in x- und y-richtung angeben (Siehe hierzu 7.11). Aus den Oberflächenpunkten kann man somit die Texturkoordinaten berechnen. Anmerkung: Bei WPF ist oben links (0/0) und unten rechts (1/1).

63 6.0 Verwendete Programmiersprachen und Ressourcen Seite x-datei Bild 33: Eine x-datei von [11] Die Übergabeparameter des WPF gleichen denen aus Directx, wo es auch möglich ist 3-D-Objekte zu erstellen, in dem - relativ einfach - in einer x- Datei (Siehe Bild 33) Werte eingetragen werden. Directx setzt das ganze dann visuell in einen Fenster um. Es gibt Punkte (VertexBuffer im Bild genannt) und Dreiecksindexe (IndexBuffer im Bild genannt). Texturkoordinaten und Normalen können auch in die x-datei geschrieben werden.

64 6.0 Verwendete Programmiersprachen und Ressourcen Seite XML In einem solchen Dateityp werden die Segmenttypen des Fensters, das zu triangulieren ist, gesichert. Wie Daten aus einer XML ausgelesen werden, wird in diesem Abschnitt besprochen Einleitung XML (Extensible Markup Language) modelliert Daten in Form einer Baumstruktur, die vom World Wide Web Consortium (W3C) definiert wurde. Dadurch definiert XML Regeln für den Aufbau von Dokumenten, die Daten enthalten und die einer fest vorgegebenen Struktur entsprechen. Für jeden Fall bei dem XML angewendet wird ("XML-Anwendung"), müssen die Details der jeweiligen Dokumente spezifiziert werden. Dies trifft insbesondere die Festlegung der Elemente und ihre Anordnung innerhalb des Dokumentenbaums zu. Eine Sprache wie XML zur Definition anderer Sprachen nennt man Metasprache. Das bedeutet, dass XML-Dateien sehr gut strukturierte Dateien sind. Sie können leicht von Programmen eingelesen werden. XML ist sehr weit verbreitet. XHTML, RSS und das Dateiformat des neuen Microsoft Office 2007 sind nur einige populäre und auf XML basierende Dateiformate. Ein weiterer Vorteil von XML ist seine Plattformunabhängigkeit. XML kann von Programmen jedes Betriebssystems eingelesen werden Aufbau einer XML Datei Wie bereits erwähnt, sind XML Dateien sehr gut strukturiert. XML Dateien bestehen aus einzelnen Elementen. Diese Elemente bestehen wiederum jeweils aus dem Start-Tag, dem Inhalt und dem End-Tag. Beispiel: <Benutzername>Robert</Benutzername> Der rote Text ist das Start-Tag. Der Text zwischen spitzen Klammern ist der Name des Tags. Der grüne Text ist das End-Tag. Es ist gleich aufge-

65 6.0 Verwendete Programmiersprachen und Ressourcen Seite 58 baut wie das Start-Tag. Der einzige Unterschied ist das / -Zeichen nach der spitzen Klammer. Wichtig ist, dass der Text zwischen den Spitzen Klammern identisch zu dem Text des Start-Tags ist. Zwischen diesen beiden Teilen ist der Name des Elements. In diesem Fall heißt es Robert. Beispiel für ein falsches Element: <Benutzer>Simon</Benutzerrrrr> Das ist falsch, da im End-Tag der Text (grün markiert) nicht dem Text des Start-Tags (rot markiert) entspricht. Richtig wäre zum Beispiel dieses Element, da der Text im Start- und End- Tag gleich ist: <Benutzer>Simon</Benutzer> Oder auch dieses: <Obst>Apfel</Obst> Verschachtelung XML-Elemente können ineinander verschachtelt werden. Zum Beispiel kann eine Liste mit Benutzernamen so aussehen: <Benutzerliste> <Benutzer>Robert</Benutzer> <Benutzer>Simon</Benutzer> </Benutzerliste> Wichtig ist, dass jedes Element einen Anfang und ein Ende hat. Zur besseren übersicht sind immer noch die Start-Tags rot und die End-Tags grün eingefärbt Attribute Attribute gehören ebenfalls noch zum Aufbau eines Elements, genauer gesagt gehören Sie zum Start-Tag. Mit Attributen können Sie zusätzliche In-

66 6.0 Verwendete Programmiersprachen und Ressourcen Seite 59 formationen (Variablen) in einem Element unterbringen. So könnte es in dem Beispiel der Benutzerliste unterschiedliche Benutzer geben: Standard-Benutzer und Premium-Benutzer Diese Information wird in einem Attribut mit dem Namen typ untergebracht. Attribute werden nach dem Namen des Start-Tags gesetzt. Beispiel: <Benutzer typ= standard >Robert</Benutzer> Beispiel für einen Premium-Benutzer: <Benutzer typ= premium >Simon</Benutzer> Der in den Beispielen rot gefärbte Text ist der Name des Attributs. Der blau gefärbte Text ist der Inhalt des Attributs. In der Benutzerliste schreibt man entweder premium oder standard. Das Element mit dem Namen Robert hat den Typ "standard". Man kann nun mit einer IF-Bedingung das Element Robert von Simon unterscheiden (IF(Element.Equals("Robert"))). Wenn man das Element Robert hat, in einer Variablen die von Typ Benutzer ist, kann man auf den typ zugreifen und ihn abfragen oder einer Variablen geben Elemente ohne echtes End-Tag Im Zusammenhang mit Attributen gibt es noch eine Besonderheit am Aufbau von Elementen. In dem vorherigen Beispiel wurde der Benutzernamen in den Inhalt des Tags geschrieben und der Typ des Benutzers in ein entsprechendes Attribut. Man könnte auch für beide Informationen Attribute verwenden. Dies würde dann so ausschauen: <Benutzername= Robert typ= standard ></Benutzer> Da in diesem Fall der Inhalt des Tags leer ist, könnte man das End-Tag weglassen. Es muss aber vor der schließenden, spitzen Klammer des Start-Tags ein / -Zeichen setzen.

67 6.0 Verwendete Programmiersprachen und Ressourcen Seite 60 Beispiel: <Benutzername= Robert typ= standard /> Das Start-Tag wird in diesem Fall Empty-Element-Tag genannt. In den folgenden Erklärungsbeispielen wird aber, wie vorher, der Benutzernamen in den Inhalt des Tags geschrieben Nur ein Wurzel-/Stammelement ist erlaubt XML-Dokumente brauchen immer genau ein Wurzel-/Stammelement. Das heißt, dass alle anderen Elemente in diesem Element verschachtelt sein müssen. Um das anschaulich zu machen, sieht man nun zwei Beispiele für XML-Dateien. Das erste Beispiel ist falsch, da es mehrere Wurzelelemente gibt. Im zweiten Beispiel sind alle anderen Elemente in dem Element Benutzerliste verschachtelt, welches das einzige Wurzelelement ist. FALSCH: (Kompletter Dateiinhalt) <Benutzer>Simon</Benutzer> <Benutzer>Thomas</Benutzer> RICHTIG: (Kompletter Dateiinhalt) <Programmbenutzer> <Benutzer>Simon</Benutzer> <Benutzer>Thomas</Benutzer> </Programmbenutzer> XML-Deklaration Am Anfang einer jeden XML-Datei sollte man eine XML-Deklaration setzen. Diese enthält Informationen zur XML-Version (wobei momentan die

68 6.0 Verwendete Programmiersprachen und Ressourcen Seite 61 Version 1.0 aktuell ist) und zum Zeichensatz der Datei. Diese XML- Deklaration sieht z.b. so aus: <?xml version="1.0" encoding="utf-8"?> Wie zu erkennen ist, hat dies vom Aufbau her eine große Ähnlichkeit zu XML-Elementen. So erkennt man die Attribute version und encoding. Mithilfe des Attributs version gibt man die XML-Version und im Attribut encoding den Zeichensatz ab. Wenn Sie XML-Dateien mithilfe des.net- Frameworks erzeugen, wird diese XML Deklaration automatisch erzeugt. Bild 34: XML Datei

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3 Lineare Funktionen Inhaltsverzeichnis 1 Proportionale Funktionen 3 1.1 Definition............................... 3 1.2 Eigenschaften............................. 3 2 Steigungsdreieck 3 3 Lineare Funktionen

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen können zwei Ebenen (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Wie heiÿt

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

3.2 Spiegelungen an zwei Spiegeln

3.2 Spiegelungen an zwei Spiegeln 3 Die Theorie des Spiegelbuches 45 sehen, wenn die Person uns direkt gegenüber steht. Denn dann hat sie eine Drehung um die senkrechte Achse gemacht und dabei links und rechts vertauscht. 3.2 Spiegelungen

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Definition und Begriffe

Definition und Begriffe Merkblatt: Das Dreieck Definition und Begriffe Das Dreieck ist ein Vieleck. In der Ebene ist es die einfachste Figur, die von geraden Linien begrenzt wird. Ecken: Jedes Dreieck hat drei Ecken, die meist

Mehr

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x + 400 y = 520 300x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x + 400 y = 520 300x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775, Aufgabenpool für angewandte Mathematik / 1. Jahrgang V B, C, D Drinks Ein gastronomischer Betrieb kauft 300 Dosen Energydrinks (0,3 l) und 400 Liter Flaschen Mineralwasser und zahlt dafür 50, Euro. Einen

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Lineare Gleichungssysteme 1 Zwei Gleichungen mit zwei Unbekannten Es kommt häufig vor, dass man nicht mit einer Variablen alleine auskommt, um ein Problem zu lösen. Das folgende Beispiel soll dies verdeutlichen

Mehr

Konzepte der Informatik

Konzepte der Informatik Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

Formelsammlung zur Kreisgleichung

Formelsammlung zur Kreisgleichung zur Kreisgleichung Julia Wolters 6. Oktober 2008 Inhaltsverzeichnis 1 Allgemeine Kreisgleichung 2 1.1 Berechnung des Mittelpunktes und Radius am Beispiel..... 3 2 Kreis und Gerade 4 2.1 Sekanten, Tangenten,

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Abschlussprüfung Realschule Bayern II / III: 2009 Haupttermin B 1.0 B 1.1

Abschlussprüfung Realschule Bayern II / III: 2009 Haupttermin B 1.0 B 1.1 B 1.0 B 1.1 L: Wir wissen von, dass sie den Scheitel hat und durch den Punkt läuft. Was nichts bringt, ist beide Punkte in die allgemeine Parabelgleichung einzusetzen und das Gleichungssystem zu lösen,

Mehr

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort: Tangentengleichung Wie Sie wissen, gibt die erste Ableitung einer Funktion deren Steigung an. Betrachtet man eine fest vorgegebene Stelle, gibt f ( ) also die Steigung der Kurve und somit auch die Steigung

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Plotten von Linien ( nach Jack Bresenham, 1962 )

Plotten von Linien ( nach Jack Bresenham, 1962 ) Plotten von Linien ( nach Jack Bresenham, 1962 ) Ac Eine auf dem Bildschirm darzustellende Linie sieht treppenförmig aus, weil der Computer Linien aus einzelnen (meist quadratischen) Bildpunkten, Pixels

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung. Lineare Gleichungen mit einer Unbekannten Die Grundform der linearen Gleichung mit einer Unbekannten x lautet A x = a Dabei sind A, a reelle Zahlen. Die Gleichung lösen heißt, alle reellen Zahlen anzugeben,

Mehr

Thema: Winkel in der Geometrie:

Thema: Winkel in der Geometrie: Thema: Winkel in der Geometrie: Zuerst ist es wichtig zu wissen, welche Winkel es gibt: - Nullwinkel: 0 - spitzer Winkel: 1-89 (Bild 1) - rechter Winkel: genau 90 (Bild 2) - stumpfer Winkel: 91-179 (Bild

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

Einführung in die Algebra

Einführung in die Algebra Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv

Mehr

Bauteilattribute als Sachdaten anzeigen

Bauteilattribute als Sachdaten anzeigen Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...

Mehr

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung Anleitung zur Daten zur Datensicherung und Datenrücksicherung Datensicherung Es gibt drei Möglichkeiten der Datensicherung. Zwei davon sind in Ges eingebaut, die dritte ist eine manuelle Möglichkeit. In

Mehr

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term

Mehr

! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006

!  # $  % & Nicki Wruck worldwidewruck 08.02.2006 !"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst

Mehr

Aufgabe 1. Zunächst wird die allgemeine Tangentengleichung in Abhängigkeit von a aufgestellt:

Aufgabe 1. Zunächst wird die allgemeine Tangentengleichung in Abhängigkeit von a aufgestellt: Aufgabe 1 1.1. Bestimmung von D max : 1. Bedingung: x >0 ; da ln(x) nur für x > 0 definiert ist. 2. Bedingung: Somit ist die Funktion f a nur für x > 0 definiert und sie besitzt eine Definitionslücke an

Mehr

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

Mehr

Advanced Rendering Interior Szene

Advanced Rendering Interior Szene Advanced Rendering Interior Szene in Cinema 4D 11-11.5 Als erstes, sollten Sie ihre Szene in Cinema 4D öffnen. vergewissern sie sich, ob alle Licht quellen die evtl. mit importiert wurden, aus der Szene

Mehr

Repetitionsaufgaben: Lineare Funktionen

Repetitionsaufgaben: Lineare Funktionen Kantonale Fachschaft Mathematik Repetitionsaufgaben: Lineare Funktionen Zusammengestellt von Irina Bayer-Krakvina, KSR Lernziele: - Wissen, was ein Steigungsdreieck einer Geraden ist und wie die Steigungszahl

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

Mehr

Die Übereckperspektive mit zwei Fluchtpunkten

Die Übereckperspektive mit zwei Fluchtpunkten Perspektive Perspektive mit zwei Fluchtpunkten (S. 1 von 8) / www.kunstbrowser.de Die Übereckperspektive mit zwei Fluchtpunkten Bei dieser Perspektivart wird der rechtwinklige Körper so auf die Grundebene

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

Lichtbrechung an Linsen

Lichtbrechung an Linsen Sammellinsen Lichtbrechung an Linsen Fällt ein paralleles Lichtbündel auf eine Sammellinse, so werden die Lichtstrahlen so gebrochen, dass sie durch einen Brennpunkt der Linse verlaufen. Der Abstand zwischen

Mehr

Nachhilfe-Kurs Mathematik Klasse 13 Freie Waldorfschule Mitte

Nachhilfe-Kurs Mathematik Klasse 13 Freie Waldorfschule Mitte Nachhilfe-Kurs Mathematik Klasse 13 Freie Waldorfschule Mitte März 2008 Zusammenfassung IB 1. Lagebeziehungen zwischen geometrischen Objekten 1.1 Punkt-Gerade Ein Punkt kann entweder auf einer gegebenen

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

10.1 Auflösung, Drucken und Scannen

10.1 Auflösung, Drucken und Scannen Um einige technische Erläuterungen kommen wir auch in diesem Buch nicht herum. Für Ihre Bildergebnisse sind diese technischen Zusammenhänge sehr wichtig, nehmen Sie sich also etwas Zeit und lesen Sie dieses

Mehr

1. Zuerst muss der Artikel angelegt werden, damit später die Produktvarianten hinzugefügt werden können.

1. Zuerst muss der Artikel angelegt werden, damit später die Produktvarianten hinzugefügt werden können. Produktvarianten und Downloads erstellen Produktvarianten eignen sich um Artikel mit verschiedenen Optionen wie bspw. ein Herrenhemd in den Farben blau, grün und rot sowie in den Größen S, M und L zu verkaufen.

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

Übungen zur Experimentalphysik 3

Übungen zur Experimentalphysik 3 Übungen zur Experimentalphysik 3 Prof. Dr. L. Oberauer Wintersemester 2010/2011 7. Übungsblatt - 6.Dezember 2010 Musterlösung Franziska Konitzer (franziska.konitzer@tum.de) Aufgabe 1 ( ) (8 Punkte) Optische

Mehr

Rekursionen. Georg Anegg 25. November 2009. Methoden und Techniken an Beispielen erklärt

Rekursionen. Georg Anegg 25. November 2009. Methoden und Techniken an Beispielen erklärt Methoden und Techniken an Beispielen erklärt Georg Anegg 5. November 009 Beispiel. Die Folge {a n } sei wie folgt definiert (a, d, q R, q ): a 0 a, a n+ a n q + d (n 0) Man bestimme eine explizite Darstellung

Mehr

Wir basteln einen Jahreskalender mit MS Excel.

Wir basteln einen Jahreskalender mit MS Excel. Wir basteln einen Jahreskalender mit MS Excel. In meinen Seminaren werde ich hin und wieder nach einem Excel-Jahreskalender gefragt. Im Internet findet man natürlich eine ganze Reihe mehr oder weniger

Mehr

Anhand des bereits hergeleiteten Models erstellen wir nun mit der Formel

Anhand des bereits hergeleiteten Models erstellen wir nun mit der Formel Ausarbeitung zum Proseminar Finanzmathematische Modelle und Simulationen bei Raphael Kruse und Prof. Dr. Wolf-Jürgen Beyn zum Thema Simulation des Anlagenpreismodels von Simon Uphus im WS 09/10 Zusammenfassung

Mehr

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock infach Ihr Weg zum finanzellen Erfolg Geld Florian Mock FBV Die Grundlagen für finanziellen Erfolg Denn Sie müssten anschließend wieder vom Gehaltskonto Rückzahlungen in Höhe der Entnahmen vornehmen, um

Mehr

Falten regelmäßiger Vielecke

Falten regelmäßiger Vielecke Blatt 1 Gleichseitige Dreiecke Ausgehend von einem quadratischen Stück Papier kann man ohne weiteres Werkzeug viele interessante geometrische Figuren nur mit den Mitteln des Papierfaltens (Origami) erzeugen.

Mehr

1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen

1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen 3D-Rendering Ulf Döring, Markus Färber 07.03.2011 1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen Anzeigefläche (a) Worin besteht das Sichtbarkeitsproblem?

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

Paper Computer Science Experiment. Computation (NP-Vollständigkeit) Steinerbäume

Paper Computer Science Experiment. Computation (NP-Vollständigkeit) Steinerbäume Paper Computer Science Experiment Great Principles of Computing Computation (NP-Vollständigkeit) Thema Steinerbäume Unterrichtsform Entdeckendes Lernen, Einzelarbeit, Lernen am Modell Voraussetzung Bäume

Mehr

3. LINEARE GLEICHUNGSSYSTEME

3. LINEARE GLEICHUNGSSYSTEME 176 3. LINEARE GLEICHUNGSSYSTEME 90 Vitamin-C-Gehalt verschiedener Säfte 18,0 mg 35,0 mg 12,5 mg 1. a) 100 ml + 50 ml + 50 ml = 41,75 mg 100 ml 100 ml 100 ml b) : Menge an Kirschsaft in ml y: Menge an

Mehr

1 C H R I S T O P H D R Ö S S E R D E R M A T H E M A T I K V E R F Ü H R E R

1 C H R I S T O P H D R Ö S S E R D E R M A T H E M A T I K V E R F Ü H R E R C H R I S T O P H D R Ö S S E R D E R M A T H E M A T I K V E R F Ü H R E R L Ö S U N G E N Seite 7 n Wenn vier Menschen auf einem Quadratmeter stehen, dann hat jeder eine Fläche von 50 mal 50 Zentimeter

Mehr

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE!

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE! 9 TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE! An den SeniorNETclub 50+ Währinger Str. 57/7 1090 Wien Und zwar gleich in doppelter Hinsicht:!"Beantworten Sie die folgenden Fragen und vertiefen Sie damit Ihr

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Tutorial Speichern. Jacqueline Roos - Riedstrasse 14, 8908 Hedingen, 044 760 22 41 jroos@hispeed.ch - www.forums9.ch

Tutorial Speichern. Jacqueline Roos - Riedstrasse 14, 8908 Hedingen, 044 760 22 41 jroos@hispeed.ch - www.forums9.ch Jacqueline Roos - Riedstrasse 14, 8908 Hedingen, 044 760 22 41 jroos@hispeed.ch - www.forums9.ch Tutorial Speichern Wer ein Fotobuch zusammenstellen möchte, der sucht oft auf dem ganzen Computer und diversen

Mehr

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel von Ricardo Gantschew btk Berlin Dozent / Till Nagel 01 IDEE Einige kennen vielleicht GoogleTrends. Hierbei handelt es sich um eine Anwendung, bei der man verschiedenste Begriffe auf die Häufigkeit ihrer

Mehr

Data Mining: Einige Grundlagen aus der Stochastik

Data Mining: Einige Grundlagen aus der Stochastik Data Mining: Einige Grundlagen aus der Stochastik Hagen Knaf Studiengang Angewandte Mathematik Hochschule RheinMain 21. Oktober 2015 Vorwort Das vorliegende Skript enthält eine Zusammenfassung verschiedener

Mehr

Grundlagen der Informatik

Grundlagen der Informatik Mag. Christian Gürtler Programmierung Grundlagen der Informatik 2011 Inhaltsverzeichnis I. Allgemeines 3 1. Zahlensysteme 4 1.1. ganze Zahlen...................................... 4 1.1.1. Umrechnungen.................................

Mehr

Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test?

Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test? Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test? Auch wenn die Messungsmethoden ähnlich sind, ist das Ziel beider Systeme jedoch ein anderes. Gwenolé NEXER g.nexer@hearin gp

Mehr

Abituraufgabe zur analytischen Geometrie, Hessen 2013, B2, Grundkurs (TR)

Abituraufgabe zur analytischen Geometrie, Hessen 2013, B2, Grundkurs (TR) Abituraufgabe zur analytischen Geometrie, Hessen 2013, B2, Grundkurs (TR) 1 Bei Ausgrabungen wurden die Überreste einer 4500 Jahre alten Pyramide entdeckt. Die Abbildung zeigt die Ansicht der Pyramidenruine

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Lösung. Prüfungsteil 1: Aufgabe 1

Lösung. Prüfungsteil 1: Aufgabe 1 Zentrale Prüfung 01 Lösung Diese Lösung wurde erstellt von Cornelia Sanzenbacher. Sie ist keine offizielle Lösung des Ministeriums für Schule und Weiterbildung des Landes. Prüfungsteil 1: Aufgabe 1 a)

Mehr

EINFACHES HAUSHALT- KASSABUCH

EINFACHES HAUSHALT- KASSABUCH EINFACHES HAUSHALT- KASSABUCH Arbeiten mit Excel Wir erstellen ein einfaches Kassabuch zur Führung einer Haushalts- oder Portokasse Roland Liebing, im November 2012 Eine einfache Haushalt-Buchhaltung (Kassabuch)

Mehr

Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren

Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren Um die Platinen zu bedrucken, muß der Drucker als allererstes ein wenig zerlegt werden. Obere und seitliche Abdeckungen entfernen:

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

3.1. Die komplexen Zahlen

3.1. Die komplexen Zahlen 3.1. Die komplexen Zahlen Es gibt viele Wege, um komplexe Zahlen einzuführen. Wir gehen hier den wohl einfachsten, indem wir C R als komplexe Zahlenebene und die Punkte dieser Ebene als komplexe Zahlen

Mehr

CdsComXL. Excel add-in für Bearbeitung und Auswertung der CDS-daten. ComXL-020/D, 0102. Spur 9 014.700. Spur 7 014.680. Spur 5 014.660. Spur 3 014.

CdsComXL. Excel add-in für Bearbeitung und Auswertung der CDS-daten. ComXL-020/D, 0102. Spur 9 014.700. Spur 7 014.680. Spur 5 014.660. Spur 3 014. Excel add-in für Bearbeitung und Auswertung der CDS-daten CdsComXL 100 50 0 Spur 9 014.700 Spur 7 014.680 014.660 014.640 Spur 3 Spur 5 014.620 Spur 1 014.600 ComXL-020/D, 0102 Inhaltsverzeichnis 1. Installation----------------------------------------------------------------------------------------------------

Mehr

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten! Mathefritz 5 Terme und Gleichungen Meine Mathe-Seite im Internet kostenlose Matheaufgaben, Skripte, Mathebücher Lernspiele, Lerntipps, Quiz und noch viel mehr http:// www.mathefritz.de Seite 1 Copyright

Mehr

Bilder Schärfen und Rauschen entfernen

Bilder Schärfen und Rauschen entfernen Bilder Schärfen und Rauschen entfernen Um alte Bilder, so wie die von der Olympus Camedia 840 L noch dazu zu bewegen, Farben froh und frisch daherzukommen, bedarf es einiger Arbeit und die habe ich hier

Mehr

Extrema von Funktionen in zwei Variablen

Extrema von Funktionen in zwei Variablen Wirtschaftswissenschaftliches Zentrum Universität Basel Mathematik für Ökonomen 1 Dr. Thomas Zehrt Extrema von Funktionen in zwei Variablen Literatur: Gauglhofer, M. und Müller, H.: Mathematik für Ökonomen,

Mehr

Basteln und Zeichnen

Basteln und Zeichnen Titel des Arbeitsblatts Seite Inhalt 1 Falte eine Hexentreppe 2 Falte eine Ziehharmonika 3 Die Schatzinsel 4 Das Quadrat und seine Winkel 5 Senkrechte und parallele Linien 6 Ein Scherenschnitt 7 Bastle

Mehr

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Beamen in EEP Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Zuerst musst du dir 2 Programme besorgen und zwar: Albert, das

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V

Mehr

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser Seite 1 von 14 Cookie-Einstellungen verschiedener Browser Cookie-Einstellungen verschiedener Browser, 7. Dezember 2015 Inhaltsverzeichnis 1.Aktivierung von Cookies... 3 2.Cookies... 3 2.1.Wofu r braucht

Mehr

a n + 2 1 auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert:

a n + 2 1 auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert: Beispiel: Wir untersuchen die rekursiv definierte Folge a 0 + auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert: ( ) (,, 7, 5,...) Wir können also vermuten, dass die Folge monoton fallend

Mehr

Stift-Karussell in M-Plot einrichten

Stift-Karussell in M-Plot einrichten Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version 1.0 Voraussetzungen für diesen Workshop Die M-Quest Suite 2005 oder höher ist auf einem Rechner installiert Das Produkt M-Plot Suite ist

Mehr

Quadratische Gleichungen

Quadratische Gleichungen Quadratische Gleichungen Aufgabe: Versuche eine Lösung zu den folgenden Zahlenrätseln zu finden:.) Verdoppelt man das Quadrat einer Zahl und addiert, so erhält man 00..) Addiert man zum Quadrat einer Zahl

Mehr

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Allgemein: Das RSA-Verschlüsselungsverfahren ist ein häufig benutztes Verschlüsselungsverfahren, weil es sehr sicher ist. Es gehört zu der Klasse der

Mehr

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1 Abiturprüfung Mathematik (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe Für jedes t f t () + t R ist die Funktion f t gegeben durch = mit R. Das Schaubild von f t heißt K t.. (6 Punkte)

Mehr

Umgekehrte Kurvendiskussion

Umgekehrte Kurvendiskussion Umgekehrte Kurvendiskussion Bei einer Kurvendiskussion haben wir eine Funktionsgleichung vorgegeben und versuchen ihre 'Besonderheiten' herauszufinden: Nullstellen, Extremwerte, Wendepunkte, Polstellen

Mehr

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Informatik Kurs Simulation. Hilfe für den Consideo Modeler Hilfe für den Consideo Modeler Consideo stellt Schulen den Modeler kostenlos zur Verfügung. Wenden Sie sich an: http://consideo-modeler.de/ Der Modeler ist ein Werkzeug, das nicht für schulische Zwecke

Mehr

EINMALEINS BEZIEHUNGSREICH

EINMALEINS BEZIEHUNGSREICH EINMALEINS BEZIEHUNGSREICH Thema: Übung des kleinen Einmaleins; operative Beziehungen erkunden Stufe: ab 2. Schuljahr Dauer: 2 bis 3 Lektionen Materialien: Kleine Einmaleinstafeln (ohne Farben), Punktefelder

Mehr

Animationen erstellen

Animationen erstellen Animationen erstellen Unter Animation wird hier das Erscheinen oder Bewegen von Objekten Texten und Bildern verstanden Dazu wird zunächst eine neue Folie erstellt : Einfügen/ Neue Folie... Das Layout Aufzählung

Mehr

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei

Mehr

Lineare Differentialgleichungen erster Ordnung erkennen

Lineare Differentialgleichungen erster Ordnung erkennen Lineare Differentialgleichungen erster Ordnung In diesem Kapitel... Erkennen, wie Differentialgleichungen erster Ordnung aussehen en für Differentialgleichungen erster Ordnung und ohne -Terme finden Die

Mehr

Wie löst man Mathematikaufgaben?

Wie löst man Mathematikaufgaben? Wie löst man Mathematikaufgaben? Manfred Dobrowolski Universität Würzburg Wie löst man Mathematikaufgaben? 1 Das Schubfachprinzip 2 Das Invarianzprinzip 3 Das Extremalprinzip Das Schubfachprinzip Verteilt

Mehr

http://www.olympiade-mathematik.de 2. Mathematik Olympiade 2. Stufe (Kreisolympiade) Klasse 7 Saison 1962/1963 Aufgaben und Lösungen

http://www.olympiade-mathematik.de 2. Mathematik Olympiade 2. Stufe (Kreisolympiade) Klasse 7 Saison 1962/1963 Aufgaben und Lösungen 2. Mathematik Olympiade Saison 1962/1963 Aufgaben und Lösungen 1 OJM 2. Mathematik-Olympiade Aufgaben Hinweis: Der Lösungsweg mit Begründungen und Nebenrechnungen soll deutlich erkennbar in logisch und

Mehr

Vorstellung Microsoft Mathematics 4.0

Vorstellung Microsoft Mathematics 4.0 Vorstellung Microsoft Mathematics 4.0 Inhaltsverzeichnis Plotten einer Funktion... 3 Lösen von Gleichungen... 5 Lösen von Gleichungssystemen... 6 Der Dreieck-Assistent... 8 Vergleich von Mathematics mit

Mehr

Gutes Leben was ist das?

Gutes Leben was ist das? Lukas Bayer Jahrgangsstufe 12 Im Hirschgarten 1 67435 Neustadt Kurfürst-Ruprecht-Gymnasium Landwehrstraße22 67433 Neustadt a. d. Weinstraße Gutes Leben was ist das? Gutes Leben für alle was genau ist das

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! (bei z.b. Google Microsoft Powertoys suchen, oder diesen Link verwenden )

Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! (bei z.b. Google Microsoft Powertoys suchen, oder diesen Link verwenden ) Wie erstelle ich Fotogalerien? Wie kann ich die auf meiner Homepage präsentieren? Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! Die ist eine Lösung für Windows XP Diese Lösung

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr