Computer Graphik (CS231) Projektübungsblatt 3

Größe: px
Ab Seite anzeigen:

Download "Computer Graphik (CS231) Projektübungsblatt 3"

Transkript

1 UNIVERSITÄT BASEL Prof. Dr. Thomas Vetter Departement Mathematik und Informatik Bernoullistrasse 16 CH 456 Basel Clemens Blumer Tobias Maier Fabian Brix Computer Graphik (CS231) Projektübungsblatt 3 Ausgabe in Woche 12 ( ). Vorführung der laufenden Programme im Tutorium Woche 14 ( ). Zu erreichende Mindestpunktzahl: 13 von 25 Punkten OpenGL arbeitet nach dem Prinzip einer Statemachine. Das bedeutet, dass nicht bei jedem Funktionsaufruf alle Parameter gesetzt werden müssen, sondern viele Variablen global gehalten werden. Der Grund liegt darin, dass man z. B. nicht für jeden Vertex die Transformation an die Grafikkarte schicken möchte (was langsam wäre) sondern lieber einmal die Transformation festlegt und alle folgenden Vertices ensprechend verarbeitet. In dieser Aufgabe soll die Koordinatentransformation von OpenGL emuliert werden. Auf den kommenden Aufgabenblättern werden wir diese Idee weiterverfolgen und zusätzliche Funktionalität zur Statemachine hinzufügen. Die Beleuchtung und Texturierung der Dreiecke wird dann auf den Blättern 4 und 5 behandelt. Auf diesem Aufgabenblatt werden wir den Rasterizer für die Dreiecke von Aufgabenblatt 1 weiter verwenden. Konkret bedeutet das für diese Aufgabe: Wir setzten die Statemachine in einen bestimmten Zustand, indem wir die Grösse des framebuffers und Parameter für die Transformation der Vertices festlegen. Danach werden die (Objekt-)Koordinaten gegeben durch tarray<f3vector> vertex und die dazugehörige Farbe tarray<frgba> color durch die Renderingpipeline geschickt. Zusätzlich gibt es sechs Listen mit Indizes. Je nach Art der Liste werden verschiedene Primitiven in den Framebuffer gerendert: Punkte (tarray<int> pvi für die Vertices bzw. tarray<int> pci für die Farben), Linien (tarray<tuple2> lvi, tarray<tuple2> lci) und Dreiecke (tarray<tuple3> tvi, tarray<tuple3> tci) Alle diese Listen werden in der Klasse Mesh verwaltet. Diese Klasse wird von uns vorgegeben. Ausserdem stellen wir einen OBJReader zur Verfügung, mit dem man Objekte, die im Alias/Wavefront-Objectformat (*.obj) gespeichert sind, in die Klasse Mesh einlesen kann. Wir haben die Renderingpipeline so gebaut, dass sie OpenGL-kompatibel ist, d.h., die zu implementierenden Methoden entsprechen semantisch OpenGL-Funktionen. Für eine Erklärung der

2 2 einzelnen zu implementierenden Transformationen verweisen wir auf die Vorlesung, Foliesatz 6. Im StateMachineRenderer werden folgende Buffer verwendet: timage<float> zbuffer; Depth buffer: Hier ist zu jedem Pixel der Abstand zur near- Clippingplane gespeichert (Aufgabe 5). timage<frgba> framebuffer; Hier wird das fertige Bild hineingerendert. timage<f3vector> bbuffer; Zum Testen können Sie hier die Baryzentrischen Koordinaten λ 1, λ 2, λ 3 speichern (Freiwillig). Aufgabe 1 - Modelview Matrix (6 Punkte ) Fügen Sie der KlasseStateMachineRenderer aus Aufgabenblatt 1 folgende Funktionaliät hinzu: Die Modelview Matrix M wird per default (also im Konstruktor der Klasse StateMachineRenderer) auf die Einheitsmatrix gesetzt: 1 M = 1 1 Wenn diese Matrix als Modelview Matrix verwendet wird, bedeutet dass, dass die Kamera im Urprung steht, in Richtung der negativen z-achse schaut und aufrecht steht (d.h (, 1, ) T ist oben). Der Befehl setrotationx(float alpha) erzeugt eine Matrix für eine Rotation der Objekte um die x-achse (mit Rotationswinkel α) und multipliziert die aktuelle Modelview Matrix damit: 1 M := M cos α sin α sin α cos α Der Befehl void setrotationy(float alpha) erzeugt eine Matrix für eine Rotation der Objekte um die y-achse (mit Rotationswinkel α) und multipliziert die aktuelle Modelview Matrix damit: cos α sin α M := M 1 sin α cos α Der Befehl void setrotationz(float alpha) erzeugt eine Matrix für eine Rotation der Objekte um die z-achse (mit Rotationswinkel α) und multipliziert die aktuelle Modelview Matrix damit: cos α sin α M := M sin α cos α 1

3 (freiwillig:) Der Befehl void setrotation(float alpha, const f3vector& axis) erzeugt eine Matrix für eine Rotation der Objekte um die Achse durch die Punkte ((,, ) T ) und ((x, y, z) T ) und multipliziert die aktuelle Modelview Matrix damit. Der Befehl void settranslation(const f3vector& offset) erzeugt eine Matrix für eine Translation der Objekte und multipliziert die aktuelle Modelview Matrix damit: 1 x M = M 1 y 1 z Der Befehl void setscale(const f3vector& scale) erzeugt eine Matrix für eine Skalierung der Objekte und multipliziert die aktuelle Modelview Matrix damit: x M = M y z 3 Der Befehl void multmodelviewmatrix(const f4matrix& A) Modelview Matrix mit einer Matrix A: multipliziert die aktuelle M := M A Aufgabe 2 - Projektionsmatrix (3 Punkte ) Fügen Sie der Klasse StateMachineRenderer folgende Funktionaliät hinzu: Die Projektionsmatrix P wird per default ebenfalls auf die Einheitsmatrix gesetzt: 1 P = 1 1 Der Befehl setfrustum(float l,float r,float b,float t,float n,float f) erzeugt eine Matrix für die perspektivische Projektion und setzt die aktuelle Projektionsmatrix: P := 2n r l r+l 2n t b r l t+b t b f+n f n 1 2fn f n

4 Aufgabe 3 - Koordinaten Transformation (6 Punkte ) 4 Ziel dieser Aufgabe ist es, die OpenGL-Renderingpipeline zu implementieren. Dies soll in der Methode render() der Klasse StateMachineRenderer passieren. Das Objekt, das gerendert werden soll, liegt anfangs in Objektkoordinaten (x o, y o, z o ) T in dem Array tarray<f3vector> vertex der Klasse Mesh vor. Schritt1: Modelview Transformation Die Objektkoordinaten werden in Eye Koordinaten (Membervariable tarray<f4vector> eyecoord der Klasse StateMachineRenderer) transformiert. x e y e z e w e = M Schritt2: Projektion Die Eye Koordinaten werden in Clip Koordinaten (tarray<f4vector> clipcoord) transformiert. x c y c z c = P Schritt3: Perspektivische Division Die Normalized device Koordinaten (tarray<f3vector> normdevcoord) sind dann: x d y d = z d Bemerkung: Nach dieser Transforamtion befinden sich die sichtbaren Koordinaten im folgenden Bereich: (x d, y d, z d ) [ 1, 1] [ 1, 1] [, 1] x o y o z o 1 x e y e z e w e x c y c z c

5 Schritt4: Viewport Transformation Hierzu wird die Breite (p x ) und Höhe (p y ) des Fensters in Pixeln benötigt. (o x, o y ) ist das Zentrum des Bildes, normalerweise: (o x, o y ) = ( px 2, py 2 ). x w y w z w = p x2 x d + o x p y 2 y d + o y f n 2 z d + n+f 2 Dabei ist zu beachten, dass die Koordinaten hier so gewählt sind, wie in der Mathemathik üblich: die y-achse ziegt nach oben. Dagegen ist bei timage der Ursprung oben links, wie bei Matrizen üblich. Die fertig transformierten Koordinaten werden in tarray<f3vector> viewcoord gespeichert. Schritt5: Rastern Die Arrays für Punkte (tarray<int> pvi), Linien (tarray<tuple2> lvi) und Dreiecke (tarray<tuple3> tvi) enthalten die Indizes für die Koordinaten in tarray<f3vector> viewcoord. Die Farben an den jeweiligen End- bzw. Eckpunkten sind durch die Indizes tarray<int> pci, tarray<tuple2> lci, tarray<tuple3> tci gegeben. Verwenden Sie dazu Ihren Rasterizer aus Aufgabenblatt 1. Beispiel für die Verwendung der Indizes: mesh.color[mesh.pci[i]] 5 Aufgabe 4 - Beispiel ( Punkte) Um das Debugging zu erleichtern geben wir hier eine Menge von Koordinaten (die die Ecken einer Pyramide beschreiben). Testen Sie ihren Algorithmus mit dem Testprogramm Transformation Pipeline Test und vergleichen Sie die Ausgabe mit tests.txt. Aufgabe 5 - zbuffer (4 Punkte ) Verwenden Sie die z-komponente der Window Koordinaten um einen zbuffer zu implementieren. Verwenden Sie dazu den zbuffer. Setzen Sie den zbuffer in der Methode setframebuffersize auf die grösse des Framebuffers. In der Methode clear() wird der zbuffer mit dem Wert der far-clipping-plane (c far) initalisiert. Ändern Sie dann Ihre Shaderfunktionen, sodass ein Pixel nur dann gezeichnet wird, wenn nicht bereits ein grösserer Wert im zbuffer eingetragen ist. Stellen Sie sicher, dass nur Punkte gezeichnet werden, deren zbuffer-wert im gültigen Bereich n < z w < f liegt. Aufgabe 6 - Quaternionen (6 Punkte) Ziele dieser Aufgabe ist eine Vertiefung der Vorlesung im Bereich Quaternionen und die Imple-

6 Allgemeine Hinweise Um ein an einem Bildschirm zu betrachtendes Objekt interaktiv zu rotieren eignet sich das Modell eines Trackballs sehr gut. Daher soll in dieser Übung ein sogenannt virtueller Trackball realisiert werden, indem die Bewegungen einer Maus entsprechend interpretiert werden. Wie in der Folge noch erklärt, müssen dazu die zweidimensionalen Mauskoordinaten in geeigneter Form auf einen virtuellen 6 Trackball mentierung projiziert eines werden. virtuellen Trackballs mittels Quaternionen q = s + v 1 i + v 2 j + v 3 k. Ein Quaternion wird in dieser Übung als Vektor quat[4] vom Typ float behandelt. Dabei haben die Um ein an einem Bildschirm zu betrachtendes Objekt interaktiv zu rotieren eignet sich das einzelnen Koeffizienten die folgende Bedeutung: q[]=x; q[1]=y; q[2]=z und q[3]=c; Im Gegensatz Modell eines zu den Trackballs Vorlesungsunterlagen sehr gut. Daher und soll allen in dieser mathematischen Übung ein Abhandlungen sogenannt virtueller liegt der Trackball Realteil eines realisiert Quaternions werden, also indem an der dieletzten Bewegungen Stelle. Dies einerhat Maus den entsprechend Vorteil, dass alle interpretiert Operationen werden. auf dem Wie Imaginärteil der Folge mittels nochvektoroperationen erklärt, müssen dazu direkt die auf zweidimensionalen q durchgeführt werden Mauskoordinaten können, ohne indass geeigneter Addressarith- Form in metik auf einen notwendig virtuellen wird. Trackball projiziert werden. Das Codegerüst kann wie üblich direkt von der Webseite geladen, in einem persönlichen Verzeichnis gespeichert Das allgemeine und mit Vorgehen der Visual fürc++ die6. Realisierung Programmierumgebung des Trackballs bearbeitet kann wie werden. folgt beschrieben werden: Aus einer Mausbewegung im Viewer-Window muss die Rotationsachse a sowie der Rotationswinkel φ einer virtuellen Kugel ermittelt werden. Die Rotationsachse ergibt sich aus dem Webseite Kreuzprodukt der Vorlesung: der beiden Vektoren x und y, die sich wiederum aus der Projektion der Koordinaten im Viewer-Window auf den virtuellen Trackball ergeben. Der Rotationswinkel kann mittels einfacher trigonometrischer Zusammenhänge berechnet werden. Aus der Rotationsachse sowie dem Rotationswinkel kann ein Quaternion gebildet werden, welches die Rotation vollständig Das allgemeine Vorgehen für die Realisierung des Trackballs kann wie folgt beschrieben werden: Aus beschreibt. Für jedes Teilstück einer Bewegung kann ein neues Quaternion berechnet werden, einer Mausbewegung im Viewer-Window respektive aus einem linearen Teilstück einer kontinuierlichen um die Bewegung aktuelle Rotation muss die zu Rotationsachse beschreiben. Die a sowie einzelnen der Rotationswinkel Quaternionen müssen einer aufmultipliziert virtuellen Kugel ermittelt werden, damit werden. eine Die längere Rotationsachse Bewegung ergibt simuliert sich aus werden dem Kreuzprodukt kann. der beiden Vektoren x und y, die sich wiederum aus der Projektion der Koordinaten im Viewer-Window auf den virtuellen Trackball Um ergeben. das Objekt Der im Rotationswinkel Viewer tatsächlich kann zu drehen, mittels muss einfacher an StateMachineRenderer trigonometrischer Zusammenhänge eine Rotationsmatrixwerden. übergeben werden. Dies bedeutet, dass das berechnete Quaternion in eine Rotations- berechnet Aus matrix der Rotationsachse umgewandelt werden sowie dem muss. Rotationswinkel kann ein Quaternion gebildet werden, welches die Ressourcen Grundlagen Trackball x y Rotationswinkel x y y Viewer-Window Rotationsachse a Ein Teil der benötigten Funktionen ist in der Klassen Trackball<T> und Quaternion<T> (Trackball.h und Trackball.icc) bereits implementiert. Ausserdem ist in GLWindow die Benutzung der Klasse Trackball<T> demonstriert. Implementieren bzw. vervollständigen Sie die folgenden Methoden: Die Methode project(int x, int y) der Klasse trackball<t>. Hier muss die Mauskoordinate in eine 3D-Koordinate auf dem virtuellen Trackball umgewandelt werden. Dabei sollen die Bildschirmkoordinaten auf folgenden, quadratischen Bereich abgebildet werden: (x, y) [ 1, 1] [ 1, 1]. Dadurch vereinfacht sich die Behandlung von nicht quadratischen Bildschirmen und der Bildschirm passt immer in den vorgegebenen, virtuellen Trackball (radius = 2). Den Konstruktor der Klasse quaternion<t>, der ein Quaternion aus einer Rotationsachse

7 a und dem Rotationswinkel φ baut. 7 s = cos( φ 2 ) v 1 = a x sin( φ 2 ) v 2 = a y sin( φ 2 ) v 3 = a z sin( φ 2 ) Den Operator operator*= der Klasse quaternion<t>, der eine Quaternionen-Multiplikation durchführt (siehe Vorlesung). Die Methode getmatrix() der Klasse quaternion<t>, die ein Quaternion in eine Rotationsmatrix umwandelt: 1 2(v2 2 + v2 3 ) 2(v 1v 2 sv 3 ) 2(v 3 v 1 + v 2 s) M = 2(v 1 v 2 + v 3 s) 1 2(v3 2 + v2 1 ) 2(v 2v 3 v 1 s) 2(v 3 v 1 v 2 s) 2(v 2 v 3 + v 1 s) 1 2(v2 2 + v2 1 ) Die Methode mousemove() der Klasse trackball<t>, welche die Rotationsachse a und den Rotationswinkel φ aus der Mausbewegung und die neue Rotationsmatrix berechnet. Sie können die Variable t3vector<t> last projected verwenden um die letzten virtuellen Trackballkoordinaten zwischenzuspeichern. blatt2/include/quaternion.h blatt2/include/trackball.h

Computer Graphik (CS231) Installation der Software

Computer Graphik (CS231) Installation der Software UNIVERSITÄT BASEL Prof. Dr. Thomas Vetter Departement Mathematik und Informatik Bernoullistrasse 16 CH 4056 Basel Clemens Blumer Tobias Maier Fabian Brix http://informatik.unibas.ch/lehre/fs13/cs231/ Computer

Mehr

Computer Graphik (CS231) - Installation der Software

Computer Graphik (CS231) - Installation der Software UNIVERSITÄT BASEL Prof. Dr. Thomas Vetter Departement Mathematik und Informatik Spiegelgasse 1 CH 4051 Basel Tobias Maier (tobias.maier@unibas.ch) Jasenko Zivanov (jasenko.zivanov@unibas.ch) Marc Schmidlin

Mehr

Computer Graphik. Mitschrift von www.kuertz.name

Computer Graphik. Mitschrift von www.kuertz.name Computer Graphik Mitschrift von www.kuertz.name Hinweis: Dies ist kein offizielles Script, sondern nur eine private Mitschrift. Die Mitschriften sind teweilse unvollständig, falsch oder inaktuell, da sie

Mehr

Transformationen im 3D-Raum

Transformationen im 3D-Raum Thomas Jung Repräsentation von 3D-Oberflächen Aufbau von Szenen Transformationen im 3D-Raum Projektionstranformationen Anwendung in OpenGL Geometrietransformationen bilden die Basis für die Computergrafik

Mehr

Erinnerung. Arbeitsschritte der Computergraphik. Modellierung. Animation. Rendering. Ausgabemedium. Generierung

Erinnerung. Arbeitsschritte der Computergraphik. Modellierung. Animation. Rendering. Ausgabemedium. Generierung Erinnerung Arbeitsschritte der Computergraphik Modellierung Animation Generierung Ausgabemedium Graphik/-Pipeline Wandelt die Beschreibung einer Szene im dreidimensionalen Raum in eine zweidimensionale

Mehr

VHDL - Grundlagen des Pointrenderings

VHDL - Grundlagen des Pointrenderings VHDL - Grundlagen des Pointrenderings Marc Reichenbach, Timo Nieszner Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 2013 1 / 25 Rendern von Dreiecksnetzen Quelle: Inf9, CG-Slides grobmaschiges

Mehr

Softwareprojekt Spieleentwicklung

Softwareprojekt Spieleentwicklung Softwareprojekt Spieleentwicklung Prototyp I (2D) Prototyp II (3D) Softwareprojekt 12.04. 19.04. 26.04. 03.05. 31.05. Meilenstein I 28.06. Meilenstein II Prof. Holger Theisel, Tobias Günther, OvGU Magdeburg

Mehr

Workshop: Einführung in die 3D-Computergrafik. Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar

Workshop: Einführung in die 3D-Computergrafik. Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar Workshop: Einführung in die 3D-Computergrafik Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar 1 Organisatorisches Tagesablauf: Vormittags: Theoretische Grundlagen Nachmittags: Bearbeitung

Mehr

Praktikum: Spieleengine im Eigenbau

Praktikum: Spieleengine im Eigenbau Seite 1/17 Praktikum Spieleengine im Eigenbau Alexander Weggerle, Tobias Bäuerle 19.10.09 http://www.saschawillems.de Praktikum: Spieleengine im Eigenbau Seite 2/17 Praktikum Spieleengine im Eigenbau Alexander

Mehr

3D-Transformationen. Kapitel Translation Skalierung

3D-Transformationen. Kapitel Translation Skalierung Kapitel 13 3D-Transformationen Wie im weidimensionalen Fall, werden die Definitionspunkte der Objekte als Spaltenvektoren mit homogener Koordinate geschrieben. Die notwendigen Transformationen werden wieder

Mehr

Koordinatensysteme und Clipping

Koordinatensysteme und Clipping Koordinatensysteme und Clipping Michael Olp Inhaltsverzeichnis 1 Einführung in die perspektivische Projektion 1 1.1 Projektion von Liniensegmenten....... 1 2 Koordinatensysteme 2 2.1 Modeling....................

Mehr

Kapitel 2: Mathematische Grundlagen

Kapitel 2: Mathematische Grundlagen [ Computeranimation ] Kapitel 2: Mathematische Grundlagen Prof. Dr. Stefan M. Grünvogel stefan.gruenvogel@fh-koeln.de Institut für Medien- und Phototechnik Fachhochschule Köln 2. Mathematische Grundlagen

Mehr

y x x y ( 2x 3y + z x + z

y x x y ( 2x 3y + z x + z Matrizen Aufgabe Sei f R R 3 definiert durch ( ) x 3y x f = x + y y x Berechnen Sie die Matrix Darstellung von f Aufgabe Eine lineare Funktion f hat die Matrix Darstellung A = 0 4 0 0 0 0 0 Berechnen Sie

Mehr

Brückenkurs Mathematik. Mittwoch Freitag

Brückenkurs Mathematik. Mittwoch Freitag Brückenkurs Mathematik Mittwoch 5.10. - Freitag 14.10.2016 Vorlesung 4 Dreiecke, Vektoren, Matrizen, lineare Gleichungssysteme Kai Rothe Technische Universität Hamburg-Harburg Montag 10.10.2016 0 Brückenkurs

Mehr

Matrizen. Jörn Loviscach. Versionsstand: 12. April 2010, 19:00 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung.

Matrizen. Jörn Loviscach. Versionsstand: 12. April 2010, 19:00 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Matrizen Jörn Loviscach Versionsstand: 12. April 2010, 19:00 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. 1 Matrix Ein rechteckige Anordnung von mathematischen Objekten

Mehr

Einleitung 2. 1 Koordinatensysteme 2. 2 Lineare Abbildungen 4. 3 Literaturverzeichnis 7

Einleitung 2. 1 Koordinatensysteme 2. 2 Lineare Abbildungen 4. 3 Literaturverzeichnis 7 Sonja Hunscha - Koordinatensysteme 1 Inhalt Einleitung 2 1 Koordinatensysteme 2 1.1 Kartesisches Koordinatensystem 2 1.2 Polarkoordinaten 3 1.3 Zusammenhang zwischen kartesischen und Polarkoordinaten 3

Mehr

Definition, Abbildungsmatrix, Spiegelung, Projektion

Definition, Abbildungsmatrix, Spiegelung, Projektion Bau und Gestaltung, Mathematik 2, T. Borer Aufgaben 5-2/ Aufgaben 5 Lineare Abbildungen Definition, Abbildungsmatrix, Spiegelung, Projektion Lernziele - beurteilen können, ob eine gegebene Abbildung linear

Mehr

2D-Transformationen. Kapitel 6. 6.1 Translation. 6.2 Skalierung

2D-Transformationen. Kapitel 6. 6.1 Translation. 6.2 Skalierung Kapitel 6 2D-Transformationen Mit Hilfe von Transformationen ist es möglich, die Position, die Orientierung, die Form und die Größe der grafischen Objekte zu manipulieren. Transformationen eines Objekts

Mehr

Kapitel 3: Geometrische Transformationen

Kapitel 3: Geometrische Transformationen [ Computeranimation ] Kapitel 3: Geometrische Transformationen Prof. Dr. Stefan M. Grünvogel stefan.gruenvogel@fh-koeln.de Institut für Medien- und Phototechnik Fachhochschule Köln 3. Geometrische Transformationen

Mehr

3D-Transformationen. Kapitel Translation Skalierung

3D-Transformationen. Kapitel Translation Skalierung Kapitel 3 3D-Transformationen Wie im weidimensionalen Fall, werden die Definitionspunkte der Objekte als Spaltenvektoren mit homogener Koordinate geschrieben. Die notwendigen Transformationen werden wieder

Mehr

Übungen Mathematik I, M

Übungen Mathematik I, M Übungen Mathematik I, M Übungsblatt, Lösungen (Stoff aus Mathematik 0).0.0. Berechnen Sie unter Verwendung des binomischen Lehrsatzes ( x + y) 7 Lösung: Nach dem binomischen Lehrsatz ist ( x + y) 7 = 7

Mehr

Seminar 3-D Grafik Mathematische Grundlagen, Räume, Koordinatensysteme, Projektionen. Hermann Schwarz Marko Pilop

Seminar 3-D Grafik Mathematische Grundlagen, Räume, Koordinatensysteme, Projektionen. Hermann Schwarz Marko Pilop Seminar 3-D Grafik Mathematische Grundlagen, Räume, Koordinatensysteme, Projektionen Hermann Schwarz Marko Pilop 2003-11-20 http://www.informatik.hu-berlin.de/~pilop/3d_basics.pdf {hschwarz pilop}@informatik.hu-berlin.de

Mehr

WiMa-Praktikum 1. Woche 8

WiMa-Praktikum 1. Woche 8 WiMa-Praktikum 1 Universität Ulm, Sommersemester 2017 Woche 8 Lernziele In diesem Praktikum sollen Sie üben und lernen: Besonderheiten der For-Schleife in Matlab Wiederholung des Umgangs mit Matrizen und

Mehr

Lineare Abbildungen (Teschl/Teschl 10.3, 11.2)

Lineare Abbildungen (Teschl/Teschl 10.3, 11.2) Lineare Abbildungen (Teschl/Teschl.3,.2 Eine lineare Abbildung ist eine Abbildung zwischen zwei Vektorräumen, die mit den Vektoroperationen Addition und Multiplikation mit Skalaren verträglich ist. Formal:

Mehr

EVC Repetitorium Blender

EVC Repetitorium Blender EVC Repetitorium Blender Michael Hecher Felix Kreuzer Institute of Computer Graphics and Algorithms Vienna University of Technology INSTITUTE OF COMPUTER GRAPHICS AND ALGORITHMS Filter Transformationen

Mehr

VU Einführung in Visual Computing 1. Test Gruppe A

VU Einführung in Visual Computing 1. Test Gruppe A 26.04.2013 186.822 VU Einführung in Visual Computing 1. Test Gruppe A Matrikelnummer: Nachname: Punkte: Studienkennzahl: Vorname: Bitte tragen sie Ihre Matrikelnummer, Studienkennzahl sowie Vor- und Nachname

Mehr

Übungspaket 23 Mehrdimensionale Arrays

Übungspaket 23 Mehrdimensionale Arrays Übungspaket 23 Mehrdimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung mehrdimensionaler Arrays Kapitel: 49 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:

Mehr

Kapitel 3. Transformationen

Kapitel 3. Transformationen Oyun Namdag Am 08.11.2007 WS 07/08 Proseminar Numerik: Mathematics for 3D game programming & computer graphics Dozenten: Prof. Dr. V. Schulz, C. Schillings Universität Trier Kapitel 3 Transformationen

Mehr

Probelektion zum Thema. Shadow Rendering. Shadow Maps Shadow Filtering

Probelektion zum Thema. Shadow Rendering. Shadow Maps Shadow Filtering Probelektion zum Thema Shadow Rendering Shadow Maps Shadow Filtering Renderman, 2006 CityEngine 2011 Viewport Real reconstruction in Windisch, 2013 Schatten bringen viel Realismus in eine Szene Schatten

Mehr

Universität Osnabrück Fachbereich Mathematik / Informatik. 5. Vorlesung ( )

Universität Osnabrück Fachbereich Mathematik / Informatik. 5. Vorlesung ( ) Universität Osnabrück Fachbereich Mathematik / Informatik 5. Vorlesung (06.05.2013) Prof. Dr. rer. nat. Oliver Vornberger Nico Marniok, B. Sc. Erik Wittkorn, B. Sc. Game Application Layer Rückblick Game

Mehr

Wertebereich und Genauigkeit der Zahlendarstellung

Wertebereich und Genauigkeit der Zahlendarstellung Wertebereich und Genauigkeit der Zahlendarstellung Sowohl F als auch C kennen bei ganzen und Floating Point-Zahlen Datentypen verschiedener Genauigkeit. Bei ganzen Zahlen, die stets exakt dargestellt werden

Mehr

1 Fraktale Eigenschaften der Koch-Kurve

1 Fraktale Eigenschaften der Koch-Kurve Anhang Inhaltsverzeichnis Fraktale Eigenschaften der Koch-Kurve iii. Einführung.................................. iii.2 Defintion.................................... iii.3 Gesamtlänge der Koch-Kurve........................

Mehr

++ + = 0 so erhält man eine quadratische Gleichung mit zwei Variablen dx+ey+f = 0 1.1

++ + = 0 so erhält man eine quadratische Gleichung mit zwei Variablen dx+ey+f = 0 1.1 Hauptachsentransformation. Einleitung Schneidet man den geraden Kreiskegel mit der Gleichung = + und die Ebene ++ + = 0 so erhält man eine quadratische Gleichung mit zwei Variablen +2 + +dx+ey+f = 0. Die

Mehr

Planare Projektionen und Betrachtungstransformation. Quelle: Angel (2000)

Planare Projektionen und Betrachtungstransformation. Quelle: Angel (2000) Planare Projektionen und Betrachtungstransformation Quelle: Angel (2) Gliederung Einführung Parallelprojektionen Perspektivische Projektionen Kameramodell und Betrachtungstransformationen Mathematische

Mehr

Computergraphik Grundlagen

Computergraphik Grundlagen Computergraphik Grundlagen V. Die Rendering-Pipeline Prof. Stefan Schlechtweg Hochschule Anhalt Fachbereich Informatik Inhalt Lernziele 1. Der Begriff Rendering 2. Die Rendering-Pipeline Geometrische Modellierung

Mehr

Brückenkurs Mathematik

Brückenkurs Mathematik Brückenkurs Mathematik 6.10. - 17.10. Vorlesung 3 Geometrie Doris Bohnet Universität Hamburg - Department Mathematik Mi 8.10.2008 1 Geometrie des Dreiecks 2 Vektoren Länge eines Vektors Skalarprodukt Kreuzprodukt

Mehr

Matrizen. Spezialfälle. Eine m nmatrix ist ein rechteckiges Zahlenschema mit. m Zeilen und n Spalten der Form. A = (a ij ) =

Matrizen. Spezialfälle. Eine m nmatrix ist ein rechteckiges Zahlenschema mit. m Zeilen und n Spalten der Form. A = (a ij ) = Matrizen Eine m nmatrix ist ein rechteckiges Zahlenschema mit m Zeilen und n Spalten der Form a 11 a 12 a 1n A = a ij = a 21 a 22 a 2n a m1 a m2 a mn Dabei sind m und n natürliche und die Koezienten a

Mehr

R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung.

R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung. R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung. Carsten Szardenings c.sz@wwu.de 7. Mai 2015 A 2 B 3 C 4 D 5 F 6 R 16 S 17 V 18 W 19 Z 20 H 7 I 8 K 9

Mehr

Komplexe Zahlen. (a, b) + (c, d) := (a + c, b + d) (a, b) (c, d) := (a c b d, a d + b c)

Komplexe Zahlen. (a, b) + (c, d) := (a + c, b + d) (a, b) (c, d) := (a c b d, a d + b c) Komplexe Zahlen Wir betrachten Zahlenpaare (a, b, (c, d R und definieren eine Addition und eine Multiplikation wie folgt: (a, b + (c, d := (a + c, b + d (a, b (c, d := (a c b d, a d + b c Satz: R mit dieser

Mehr

Programmieren mit DirectX

Programmieren mit DirectX 2D 3D Programmieren mit DirectX Teil 3: Malte Ried Fachhochschule Gießen-Friedberg 30. Oktober 2005 Inhalt 2D 3D 1 2D 2 3D 3 2D 3D Bis jetzt Windows-Fenster, das man schließen kann initialisiertes Direct3D

Mehr

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth Lineare Algebra Mathematik II für Chemiker Daniel Gerth Überblick Lineare Algebra Dieses Kapitel erklärt: Was man unter Vektoren versteht Wie man einfache geometrische Sachverhalte beschreibt Was man unter

Mehr

Computer-Graphik I Transformationen & Viewing

Computer-Graphik I Transformationen & Viewing lausthal Motivation omputer-raphik I Transformationen & Viewing Man möchte die virtuelle 3D Welt auf einem 2D Display darstellen. Zachmann lausthal University, ermany zach@in.tu-clausthal.de. Zachmann

Mehr

Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 5. Blatt Für den 26. und

Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 5. Blatt Für den 26. und Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 5. Blatt Für den 26. und 27.5.2008 Organisatorisches Um auf die Mailingliste aufgenommen zu werden schicke einfach eine

Mehr

OpenGL. (Open Graphic Library)

OpenGL. (Open Graphic Library) OpenGL (Open Graphic Library) Agenda Was ist OpenGL eigentlich? Geschichte Vor- und Nachteile Arbeitsweise glscene OpenGL per Hand Debugging Trend Was ist OpenGL eigentlich? OpenGL ist eine Spezifikation

Mehr

1 Matrizenrechnung zweiter Teil

1 Matrizenrechnung zweiter Teil MLAN1 1 Literatur: K. Nipp/D. Stoffer, Lineare Algebra, Eine Einführung für Ingenieure, VDF der ETHZ, 4. Auflage, 1998, oder neuer. 1 Matrizenrechnung zweiter Teil 1.1 Transponieren einer Matrix Wir betrachten

Mehr

Computer Vision I. Nikos Canterakis. Lehrstuhl für Mustererkennung, Universität Freiburg

Computer Vision I. Nikos Canterakis. Lehrstuhl für Mustererkennung, Universität Freiburg Nikos Canterakis Lehrstuhl für Mustererkennung, Universität Freiburg Gliederung 6 Endliche Kameras Die Lochkamera Die Projektive Kamera Die projektive Kamera Spalten von P Zeilen von P Hauptpunkt und Hauptachse

Mehr

Kapitel 4: Schattenberechnung

Kapitel 4: Schattenberechnung Kapitel 4: Schattenberechnung 1 Überblick: Schattenberechnung Motivation Schattenvolumen Shadow Maps Projektive Schatten 2 Motivation Wesentlich für die Wahrnehmung einer 3D-Szene Eigentlich ein globaler

Mehr

(12) Wiederholung. Vorlesung Computergrafik T. Grosch

(12) Wiederholung. Vorlesung Computergrafik T. Grosch (12) Wiederholung Vorlesung Computergrafik T. Grosch Klausur 18.7. 14 16 Uhr, Hörsaal 5 (Physik) 2 Zeitstunden 8 Aufgaben Drei Aufgabentypen Übungsaufgaben Wissensfragen zur Vorlesung Transferfragen Unterschiedlicher

Mehr

2.2 Projektionen und Kameramodelle

2.2 Projektionen und Kameramodelle Graphikprog. GRUNDLEGENDE VERFAHREN UND TECHNIKEN. Projektionen und Kameramodelle Nachdem alle Objekte einer Szenerie mittels der besprochenen Transformationen im D-Weltkoordinatensystem platziert sind,

Mehr

geschlossene Schachtel mit einem kleinen Loch

geschlossene Schachtel mit einem kleinen Loch Kameramodellierung Lochkamera Kamerakonstante Kamerazentrum geschlossene Schachtel mit einem kleinen Loch ideale Kamera: Loch hat keine Ausdehnung die Strahlen sind ein Büschel von Geraden Abbildung erfolgt

Mehr

1 Transformationen. 1.1 Transformationsmatrizen. Seite 1

1 Transformationen. 1.1 Transformationsmatrizen. Seite 1 Seite 1 1 Transformationen 1.1 Transformationsmatrizen In den folgenden Teilaufgaben sind die Koeffizienten von 4 4 Transformationsmatrizen zur Repräsentation von affinen Abbildungen im R 3 zu bestimmen.

Mehr

Entwicklung einer Programmbibliothek zur Simulation von Hautdeformation durch Knochen und Muskeln

Entwicklung einer Programmbibliothek zur Simulation von Hautdeformation durch Knochen und Muskeln Entwicklung einer Programmbibliothek zur Simulation von Hautdeformation durch Knochen und Muskeln Universität Koblenz Institut für Computervisualistik Arbeitsgruppe Computergraphik Betreuer und Prüfer

Mehr

4. Kapitel 3D Engine Geometry

4. Kapitel 3D Engine Geometry 15.11.2007 Mathematics for 3D Game Programming & Computer Graphics 4. Kapitel 3D Engine Geometry Anne Adams & Katharina Schmitt Universität Trier Fachbereich IV Proseminar Numerik Wintersemester 2007/08

Mehr

Theoretische Physik 1, Mechanik

Theoretische Physik 1, Mechanik Theoretische Physik 1, Mechanik Harald Friedrich, Technische Universität München Sommersemester 2009 Mathematische Ergänzungen Vektoren und Tensoren Partielle Ableitungen, Nabla-Operator Physikalische

Mehr

Klausur Grundlagen der Programmierung

Klausur Grundlagen der Programmierung Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel

Mehr

Körper sind nullteilerfrei

Körper sind nullteilerfrei Mathematik I für Informatiker Komplexe Zahlen p. 1 Körper sind nullteilerfrei Für Elemente a, b eines Körpers gilt stets: Aus a b = 0 folgt a = 0 oder b = 0. Beweis: Aus a b = 0 und a 0 folgt also b =

Mehr

Bildtransformationen. Geometrische Transformationen Grauwert-Interpolation

Bildtransformationen. Geometrische Transformationen Grauwert-Interpolation Bildtransformationen Geometrische Transformationen Grauwert-Interpolation Transformation Transformation zwei Schritte geometrische Transformation (Trafo der Koordinaten) Neuberechnung der Pielwerte an

Mehr

13. Klasse TOP 10 Grundwissen 13 Geradengleichungen 01

13. Klasse TOP 10 Grundwissen 13 Geradengleichungen 01 . Klasse TOP 0 Grundwissen Geradengleichungen 0 Punkt-Richtungs-Form Geraden sind gegeben durch einen Aufpunkt A (mit Ortsvektor a) auf der Geraden und einen Richtungsvektor u: x = a + λ u, λ IR. (Interpretation:

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Unterlagen zur Veranstaltung Einführung in die Objektorientierte Programmierung Mit Processing Alexis Engelke Sommer 2012 Alexis Engelke Inhalt Level 1: Geometrie Hintergrundfarben Punkte, Linien und deren

Mehr

3.3. Drehungen und Spiegelungen

3.3. Drehungen und Spiegelungen 3.3. Drehungen und Spiegelungen Drehungen und Spiegelungen in der Ebene Die Multiplikation einer komplexen Zahl z = x + i y (aufgefaßt als Punkt oder Ortsvektor der Ebene) mit der Zahl w = e ( ) = i φ

Mehr

Mathematischer Vorkurs für Physiker WS 2012/13: Vorlesung 1

Mathematischer Vorkurs für Physiker WS 2012/13: Vorlesung 1 TU München Prof. P. Vogl Mathematischer Vorkurs für Physiker WS 2012/13: Vorlesung 1 Komplexe Zahlen Das Auffinden aller Nullstellen von algebraischen Gleichungen ist ein Grundproblem, das in der Physik

Mehr

OOP und Angewandte Mathematik. Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik

OOP und Angewandte Mathematik. Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik WS 2011/12 Inhalt Test-Besprechung! Ziele verdeutlichen Große Bild von OOP Wiederholung: Einbettung als Technik

Mehr

Praktikum 3: Klassen im Zusammenspiel

Praktikum 3: Klassen im Zusammenspiel : Klassen im Zusammenspiel 1. Lernziele Die folgenden, in der Vorlesung behandelten Themen sollen vertieft und angewendet werden: Programmierung Klassen- und Objektmodell Einbinden von externen Bibliotheken

Mehr

Darstellung runder Objekte in OpenGL ES. 1 Darstellung eines Zylinders oder Kegels. Inhaltsverzeichnis. Berechnen der Punkte.

Darstellung runder Objekte in OpenGL ES. 1 Darstellung eines Zylinders oder Kegels. Inhaltsverzeichnis. Berechnen der Punkte. Seite 1 von 9 Darstellung runder Objekte in OpenGL ES Inhaltsverzeichnis Darstellung runder Objekte in OpenGL ES...1 1Darstellung eines Zylinders oder Kegels...1 Berechnen der Punkte...1 Darstellung als

Mehr

Symplektische Geometrie

Symplektische Geometrie Symplektische Geometrie Def. Eine symplektische Form auf U R 2n ist eine geschlossene, nichtausgeartete 2-Differentialform. }{{}}{{} d.h. dω = 0 wird gleich definiert Wir bezeichnen sie normalerweise mit

Mehr

Addition, Subtraktion und Multiplikation von komplexen Zahlen z 1 = (a 1, b 1 ) und z 2 = (a 2, b 2 ):

Addition, Subtraktion und Multiplikation von komplexen Zahlen z 1 = (a 1, b 1 ) und z 2 = (a 2, b 2 ): Komplexe Zahlen Definition 1. Eine komplexe Zahl z ist ein geordnetes Paar reeller Zahlen (a, b). Wir nennen a den Realteil von z und b den Imaginärteil von z, geschrieben a = Re z, b = Im z. Komplexe

Mehr

Lineare Algebra: Determinanten und Eigenwerte

Lineare Algebra: Determinanten und Eigenwerte : und Eigenwerte 16. Dezember 2011 der Ordnung 2 I Im Folgenden: quadratische Matrizen Sei ( a b A = c d eine 2 2-Matrix. Die Determinante D(A (bzw. det(a oder Det(A von A ist gleich ad bc. Det(A = a b

Mehr

Übungskomplex Reelle Zahlen. Rechnen mit Gleitkommazahlen

Übungskomplex Reelle Zahlen. Rechnen mit Gleitkommazahlen Übungskomplex Reelle Zahlen Rechnen mit Gleitkommazahlen Hinweise zur Übung Benötigter Vorlesungsstoff Einheiten 1-3 (C-Tutorial) Einheiten Reelle Zahlen 61 Aufgabe Kreisberechnung a) Schreiben Sie zwei

Mehr

Tutorium Mathematik II, M Lösungen

Tutorium Mathematik II, M Lösungen Tutorium Mathematik II, M Lösungen März 03 *Aufgabe Bestimmen Sie durch Hauptachsentransformation Lage und Typ der Kegelschnitte (a) 3x + 4x x + 3x 4x = 0, (b) 3x + 4x x + 3x 4x 6 = 0, (c) 3x + 4x x +

Mehr

Gruppentheorie und Symmetrie in der Chemie

Gruppentheorie und Symmetrie in der Chemie Gruppentheorie und Symmetrie in der Chemie Martin Schütz Institut für theoretische Chemie, Universität Stuttgart Pfaffenwaldring 55, D-70569 Stuttgart Stuttgart, 26. April 2002 Mathematische Definition

Mehr

ProKu Sommersemester 2015 Aufgabenblatt 4

ProKu Sommersemester 2015 Aufgabenblatt 4 ProKu Sommersemester 2015 Aufgabenblatt 4 Raphael Münster Jordi Paul Adam Kosik Dirk Ribbrock Peter Zajac March 16, 2015 Aufgabe 19: Verbesserte Numerische Lineare Algebra, Speicherverwaltung a) Analysieren

Mehr

Diskrete Modellierung

Diskrete Modellierung Diskrete Modellierung Wintersemester 2016/17 Martin Mundhenk Uni Jena, Institut für Informatik 24. Oktober 2016 3.2 Erzeugen von Datentypen Der Datentyp Charge Charge ist eine Datentyp für geladene Teilchen

Mehr

Vorkurs Mathematik Übungen zu Komplexen Zahlen

Vorkurs Mathematik Übungen zu Komplexen Zahlen Vorkurs Mathematik Übungen zu Komplexen Zahlen Komplexe Zahlen Koordinatenwechsel Aufgabe. Zeichnen Sie die folgende Zahlen zunächst in ein (kartesisches) Koordinatensystem. Bestimmen Sie dann die Polarkoordinaten

Mehr

7. Wie lautet die Inverse der Verkettung zweier linearer Abbildungen? 9. Wie kann die Matrixdarstellung einer linearen Abbildung aufgestellt werden?

7. Wie lautet die Inverse der Verkettung zweier linearer Abbildungen? 9. Wie kann die Matrixdarstellung einer linearen Abbildung aufgestellt werden? Kapitel Lineare Abbildungen Verständnisfragen Sachfragen Was ist eine lineare Abbildung? Erläutern Sie den Zusammenhang zwischen Unterräumen, linearer Unabhängigkeit und linearen Abbildungen! 3 Was ist

Mehr

Shadingalgorithmen zur Visualisierung nanostrukturierter Oberflächen

Shadingalgorithmen zur Visualisierung nanostrukturierter Oberflächen Universität Hamburg Fachbereich Informatik Arbeitsbereich Technische Aspekte Multimodaler Systeme Seminar Informatikanwendungen in Nanotechnologien Betreuer: Bernd Schütz Sommersemester 2014 Shadingalgorithmen

Mehr

Übungspaket 23 Mehrdimensionale Arrays

Übungspaket 23 Mehrdimensionale Arrays Übungspaket 23 Mehrdimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung mehrdimensionaler Arrays Kapitel: 49 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:

Mehr

Gleichungen dritten und vierten Grades und Konstruktionen mit mehr als Zirkel und Lineal

Gleichungen dritten und vierten Grades und Konstruktionen mit mehr als Zirkel und Lineal 1 Gleichungen dritten und vierten Grades und Konstruktionen mit mehr als Zirkel und Lineal Holger Stephan Weierstraß Institut für Angewandte Analysis und Stochastic (WIAS) e-mail: stephan@wias-berlin.de

Mehr

Matrizen und Drehungen

Matrizen und Drehungen Matrizen und Drehungen 20. Noember 2003 Diese Ausführungen sind im wesentlichen dem Skript zur Vorlesung Einführung in die Theoretische Physik I und II on PD Dr. Horst Fichtner entnommen. Dieses entstand

Mehr

Lineare Algebra und analytische Geometrie I (Unterrichtsfach) Lösungsvorschlag

Lineare Algebra und analytische Geometrie I (Unterrichtsfach) Lösungsvorschlag MATHEMATISCHES INSTITUT DER UNIVERSITÄT MÜNCHEN Dr E Schörner WS / Blatt 6 Übungen zur Vorlesung Lineare Algebra und analytische Geometrie I (Unterrichtsfach) Lösungsvorschlag Wir verwenden das Unterraumkriterium,

Mehr

Freie Rotation im Raum

Freie Rotation im Raum Freie Rotation im Raum Quaternionen und Matrizen Inhaltsverzeichnis 1 Grundlagen 2 1.1 Ziel................................................... 2 1.2 Was ist ein Koordinatensystem?..................................

Mehr

4 Lineare Abbildungen und Matrizen

4 Lineare Abbildungen und Matrizen Mathematik I für inf/swt, Wintersemester /, Seite 8 4 Lineare Abbildungen und Matrizen 4 Kern und Injektivität 4 Definition: Sei : V W linear Kern : {v V : v } ist linearer eilraum von V Ü68 und heißt

Mehr

Rang einer Matrix. 1-E1 Ma 1 Lubov Vassilevskaya

Rang einer Matrix. 1-E1 Ma 1 Lubov Vassilevskaya Rang einer Matrix 1-E1 Ma 1 Lubov Vassilevskaya Unterdeterminante einer nichtquadratischen Matrix M ist eine nichtquadratische 2,3-Matrix: M = 6 2 3 0 5 7 Durch Streichen einer der drei Spalten kann man

Mehr

MC-Serie 11: Eigenwerte

MC-Serie 11: Eigenwerte D-ERDW, D-HEST, D-USYS Mathematik I HS 14 Dr. Ana Cannas MC-Serie 11: Eigenwerte Einsendeschluss: 12. Dezember 2014 Bei allen Aufgaben ist genau eine Antwort richtig. Lösens des Tests eine Formelsammlung

Mehr

Komplexe Zahlen (Seite 1)

Komplexe Zahlen (Seite 1) (Seite 1) (i) Motivation: + 5 = 3 hat in N keine Lösung Erweiterung zu Z = 2 3 = 2 hat in Z keine Lösung Erweiterung zu Q = 2 / 3 ² = 2 hat in Q keine Lösung Erweiterung zu R = ± 2 ² + 1 = 0 hat in R keine

Mehr

Numerisches Programmieren

Numerisches Programmieren Technische Universität München WS /3 Institut für Informatik Prof Dr Hans-Joachim Bungartz Dipl-Inf Christoph Riesinger Dipl-Inf Dipl-Math Jürgen Bräckle Numerisches Programmieren Programmieraufgabe: Polnominterpolation,

Mehr

Computergrafik 1. 2D Rendering

Computergrafik 1. 2D Rendering Computergrafik 2D Rendering Hearn/Baker 32., 3.4-3.6,5. 5.8, 6. 6.8, 6. Based on material b Werner Purgathofer, Gerhard Reitmar and Dieter Schmalstieg 2D Racasting Inhalt Einfaches Rendering Model 2D Transformationen

Mehr

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt Übungen zur Ingenieur-Mathematik III WS 9/ Blatt 4..9 Aufgabe : Berechnen Sie das Volumen des Volltorus, der durch Rotation der reisscheibe { x,, z R 3, x b + z a } mit < a < b um die z-achse entsteht.

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Rückblick Schleifen while do-while for Methoden Verfahren: Intervallschachtelung 2 Wo

Mehr

Java 3D. Linien, Flächen und Objekte Axel Bartsch, Okt. 2002

Java 3D. Linien, Flächen und Objekte Axel Bartsch, Okt. 2002 Java 3D Linien, Flächen und Objekte Axel Bartsch, Okt. 2002 Virtual World Koordinaten System Grundlagen zur Definition visueller Objekte Shape3D Unterklasse der Leaf-Klasse Eigenschaften des visuellen

Mehr

Lineare Abbildungen (Teschl/Teschl 10.3, 11.2)

Lineare Abbildungen (Teschl/Teschl 10.3, 11.2) Lineare Abbildungen Teschl/Teschl.3,. Eine lineare Abbildung ist eine Abbildung zwischen zwei Vektorräumen, die mit den Vektoroperationen Addition und Multiplikation mit Skalaren verträglich ist. Formal:

Mehr

2. Aufgabe Vereinfachen Sie die folgenden Ausdrücke so, dass möglichst wenige Multiplikationen ausgeführt werden müssen!

2. Aufgabe Vereinfachen Sie die folgenden Ausdrücke so, dass möglichst wenige Multiplikationen ausgeführt werden müssen! Studiengang: PT/LOT/PVHT Semester: WS 9/ lgebra Serie: 2 Thema: Matrizen, Determinanten. ufgabe Gegeben sind die Matrizen = µ 2 3 2 µ 3 2 4, B = 2 Berechnen Sie: a) 2 + 3B b) B 2 c) B T d) B T e) T B f)

Mehr

"rendern" = ein abstraktes geometrisches Modell sichtbar machen

rendern = ein abstraktes geometrisches Modell sichtbar machen 3. Grundlagen des Rendering "rendern" = ein abstraktes geometrisches Modell sichtbar machen Mehrere Schritte: Sichtbarkeitsberechnung Beleuchtungsrechnung Projektion Clipping (Abschneiden am Bildrand)

Mehr

Institut für Informatik und Angewandte Kognitionswissenschaften

Institut für Informatik und Angewandte Kognitionswissenschaften Grundlegende Programmiertechniken (»Programmierung«), WS 2007/2008 Übungsblatt 5 Präsenzaufgaben: 11, 12, 13 Hausaufgabe: 14 Aufgabe 11 STRING- UND OBJEKT-VERGLEICH String s1 = new String("Test String");

Mehr

Praktikum 3: Klassen im Zusammenspiel

Praktikum 3: Klassen im Zusammenspiel : Klassen im Zusammenspiel 1. Lernziele Die folgenden, in der Vorlesung behandelten Themen sollen vertieft und angewendet werden: Programmierung Klassen- und Objektmodell Einbinden von externen Bibliotheken

Mehr

Unterprogramme, Pointer und die Übergabe von Arrays

Unterprogramme, Pointer und die Übergabe von Arrays Unterprogramme, Pointer und die Übergabe von Arrays Unterprogramme Wie schon im Abschnitt über Funktionen erwähnt, versteht man unter einem Unterprogramm im engeren Sinn eine Prozedur, welche die Werte

Mehr

1. Definition der komplexen Zahlen Ziel: neuerliche Zahlbereichserweiterung, so dass auch Quadratwurzeln aus negativen Zahlen

1. Definition der komplexen Zahlen Ziel: neuerliche Zahlbereichserweiterung, so dass auch Quadratwurzeln aus negativen Zahlen Komplexe Zahlen Mathe I / 12.11.08 1. Definition der komplexen Zahlen Ziel: neuerliche Zahlbereichserweiterung, so dass auch Quadratwurzeln aus negativen Zahlen gezogen werden können (in nicht möglich!).

Mehr

44 Orthogonale Matrizen

44 Orthogonale Matrizen 44 Orthogonale Matrizen 44.1 Motivation Im euklidischen Raum IR n haben wir gesehen, dass Orthonormalbasen zu besonders einfachen und schönen Beschreibungen führen. Wir wollen das Konzept der Orthonormalität

Mehr

Mathematik II Frühlingsemester 2015 Kapitel 8: Lineare Algebra 8.5 Eigenwerte und Eigenvektoren

Mathematik II Frühlingsemester 2015 Kapitel 8: Lineare Algebra 8.5 Eigenwerte und Eigenvektoren Mathematik II Frühlingsemester 215 Kapitel 8: Lineare Algebra 8.5 Eigenwerte und Eigenvektoren www.math.ethz.ch/education/bachelor/lectures/fs215/other/mathematik2 biol Prof. Dr. Erich Walter Farkas http://www.math.ethz.ch/

Mehr

JAVA für Nichtinformatiker - Probeklausur -

JAVA für Nichtinformatiker - Probeklausur - JAVA für Nichtinformatiker - Probeklausur - Die folgenden Aufgaben sollten in 150 Minuten bearbeitet werden. Aufgabe 1: Erläutere kurz die Bedeutung der folgenden Java-Schlüsselwörter und gib Sie jeweils

Mehr