1.1 Verwendung von GLUT
|
|
- Jasmin Baumhauer
- vor 7 Jahren
- Abrufe
Transkript
1 1.1 Verwendung von GLUT Grundlegende Funktionsweise - Öffnen eines Fensters - Registrieren von Callback-Routinen - Start einer Hauptroutine, die erst beim Schließen des Fensters verlassen wird - Beim Auftreten eines Events in der Hauptroutine wird die zu diesem Event registrierte Callback-Routine aufgerufen - Nach Abarbeitung der Callback-Funktion wird die Programmkontrolle wieder an die Hauptroutine übergeben 1-1
2 1.2 Initialisieren und Öffnen eines Fensters Vorgehensweise - Spezifikation der Fenstereigenschaften - Single- oder Double-Buffered (für Animationen) - RGBA-Farbmodell oder Color-Look-Up-Table - Position und Größe auf dem Bildschirm - Erstellen und Öffnen des Fensters 1-2
3 1.2 Initialisieren und Öffnen eines Fensters void glutinit(int argc, char **argv) - Initialisierung der GLUT-Library -> muß vor allen anderen GLUT-routinen aufgerufen werden - Verarbeitung von Kommandozeilen-Optionen - Window-System abhängig 1-3
4 1.2 Initialisieren und Öffnen eines Fensters void glutinitdisplaymode(unsigned int mode) - Initialisierung des Darstellungsmodus des zu öffnenden Fensters - Disjunktion verschiedener Modus-Bits - Farbschema: GLUT_RGBA oder GLUT_INDEX - Frame-Buffer: GLUT_SINGLE oder GLUT_DOUBLE - Buffer-Enabling: GLUT_DEPTH, GLUT_STENCIL oder GLUT_ACCUM - Default: GLUT_RGBA GLUT_SINGLE 1-4
5 1.2 Initialisieren und Öffnen eines Fensters void glutinitwindowsize(int width, int height) - Initialisierung der Größe des zu öffnenden Fensters in Pixeln void glutinitwindowposition(int x, int y) - Initialisierung der Position des zu öffnenden Fensters relativ zum Display in Pixeln 1-5
6 1.2 Initialisieren und Öffnen eines Fensters int glutcreatewindow(char *name) - Öffnet das zuvor spezifizierte Fenster mit dem angegebenen Namen in der Titelleiste - Das Fenster wird erst beim Aufruf der Hauptroutine dargestellt! - Der Rückgabewert dient zur eindeutigen Identifikation des Fensters bei der Nutzung mehrerer Fenster in einer Anwendung 1-6
7 1.3 Behandlung von Fenster- und Eingabeevents Callback-Funktionen - Bei der Ausführung eines OpenGL-Programms wird die Kontrolle von einer Hauptroutine der OpenGL Bibliothek übernommen. - Beim Auftreten bestimmter Events (Keyboard, Mouse, Veränderungen am Fenster) wird eine sog. Callback-Funktion von der Hauptroutine aufgerufen, sofern diese definiert ist. - In der Callback-Funktion kann der Benutzer definieren, wie auf das entsprechende Event reagiert werden soll. - Anschließend geht die Kontrolle wieder an die Hauptroutine über - Die Signatur und entsprechende Registrierungs-Methoden für die Callback-Funktionen sind durch OpenGL vorgegeben 1-7
8 1.3 Behandlung von Fenster- und Eingabeevents void glutdisplayfunc (void (*func)(void)) - Spezifiziert die Callback-Funktion, die aufgerufen wird, wenn der Fensterinhalt dargestellt werden muß - Nach dem ersten Öffnen des Fensters - Nach Modifikation (Größenänderung, Öffnen nach Iconisierung) des Fensters - Wenn mittels Aufruf der Funktion glutpostredisplay() ausdrücklich ein Neuzeichnen gestartet wird. Bsp.: void display(void) { int main (int argc, char **argv) { glclear (GL_COLOR_BUFFER_BIT); /* clear all pixels */... glcolor3f (1.0, 1.0, 1.0); glutdisplayfunc(display); glbegin(gl_polygon);... glvertex3f (0.25, 0.25, 0.0); } glvertex3f (0.75, 0.25, 0.0); glvertex3f (0.75, 0.75, 0.0); glend(); glflush (); } 1-8
9 1.3 Behandlung von Fenster- und Eingabeevents void glutreshapefunc (void (*func)(int width, int height)) - Spezifiziert die Callback-Funktion, die aufgerufen wird, wenn die Fenstergeometrie verändert wird - Default: - Sollte durch Aufruf von glviewport(posx, posy, viewportwidth, viewportheight) ein Clipping des Displays an der neuen Fenstergröße bewirken - Sollte das Seitenverhältnis bei der Änderung der Projektionsmatrix berücksichtigen void reshape(int width, int height) { } glviewport (0, 0, width, height); - Anschließend wird stets die Display-Funktion aufgerufen 1-9
10 1.3 Behandlung von Fenster- und Eingabeevents void glutkeyboardfunc (void (*func)(unsigned char key, int x, int y)) - Spezifiziert die Callback-Funktion, die aufgerufen wird, wenn eine Taste gedrückt wird. - Der Parameter key enthält den ASCII-Wert des gedrückten Buchstabens - Die Parameter x und y beschreiben die Mausposition in Koordinaten des Fensters (Pixeln) zu dem Zeitpunkt, an dem der Buchstabe gedrückt wurde. Anwendung: Unterschiedliche Art der Tastensteuerung in verschiedenen Bereichen eines Fensters. Beispiel: Cursortasten bewirken am Rand eines Windows ein Verschieben der Szene, bewirken aber über einem Objekt ein Verschieben des Objekts 1-10
11 1.3 Behandlung von Fenster- und Eingabeevents void glutmousefunc (void (*func)(int button, int state, int x, int y)) - Spezifiziert die Callback-Funktion, die aufgerufen wird, wenn ein Mausknopf gedrückt oder losgelassen wird - Parameter: - Button: Spezifiziert den gedrückten Mausknopf: GLUT_LEFT_BUTTON GLUT_MIDDLE_BUTTON GLUT_RIGHT_BUTTON - State: Drücken oder Loslassen des Knopfes: GLUT_UP oder GLUT_DOWN - x und y geben die Position des Events in Fenster-Koordinaten an 1-11
12 1.3 Behandlung von Fenster- und Eingabeevents void glutmotionfunc (void (*func)(int x, int y)) - Spezifiziert die Callback-Funktion, die aufgerufen wird, wenn die Maus bei einer gedrückten Taste bewegt wird - Wird eine Taste länger gehalten und die Maus bewegt, werden fortlaufend entsprechende Events ausgelöst und die Callback- Funktion aufgerufen - Die Mausposition wird in Fensterkoordinaten an die Callback- Funktion übergeben 1-12
13 1.3 Behandlung von Fenster- und Eingabeevents void glutpostredisplay (void) - Veranlasst explizit einen Aufruf der unter glutdisplayfunc() registrierten Callback-Funktion zur Darstellung des Fensters - Ist selbst keine Callback-Funktion - Kann z.b. bei der Reaktion auf Maus- oder Keyboard-Events nötig sein 1-13
14 1.4 Initialisierung einer Farbtabelle void glutsetcolor (GLint index, GLfloat r, GLfloat g, GLfloat b) - Neben dem RGBA-Modus kann die Farbe von Objekten auch über eine Color-Look-Up-Table festgelegt werden - Vorteil: Pro Pixel muß nur der Index in der Farbtabelle gespeichert werden, nicht der komplette RGB(A)-Wert -> Pro Pixel wird weniger Speicherplatz benötigt. - Bei Bildschirmdarstellung nicht mehr nötig. Typische Anwendung: Bildkompression - Nachteil: Nur eine begrenzte Anzahl an Farben aus der RGB(A)- Palette darstellbar (eben so viele wie Tabellen-Einträge) - glutsetcolor spezifiziert einen Tabelleneintrag - Farbwerte r, g, b sind auf [0; 1] normiert 1-14
15 1.5 Zeichnen dreidimensionaler Objekte - GLUT bietet eine Reihe vorgefertigter dreidimensionaler Modelle - Die Modelle sind jeweils in Wireframe- und in Solid-Darstellung implementiert - Die Solid-Darstellung enthält auch Oberflächennormalen zur Benutzung in Shading-Routinen - Ein Objekt, der Teapot generiert auch Texturkoordinaten 1-15
16 1.5 Zeichnen dreidimensionaler Objekte Verfügbare Modelle Kugel: void glutwiresphere(gldouble Radius, GLint Auflösung der Längengrade, GLint Auflösung der Breitengrade); void glutsolidsphere(gldouble Radius, GLint Auflösung der Längengrade, GLint Auflösung der Breitengrade); Würfel: void glutwirecube(gldouble Größe); void glutsolidcube(gldouble Größe); 1-16
17 1.5 Zeichnen dreidimensionaler Objekte Verfügbare Modelle Torus: void glutwiretorus(gldouble innerer Radius, GLdouble äußerer Radius, GLint Anzahl der Seiten pro Ring, GLint Anzahl der Ringe); void glutsolidtorus(gldouble innerer Radius, GLdouble äußerer Radius, GLint Anzahl der Seiten pro Ring, GLint Anzahl der Ringe); Tetraeder: void glutwiretetrahedron(void); void glutsolidtetrahedron(void); 1-17
18 1.5 Zeichnen dreidimensionaler Objekte Verfügbare Modelle Oktaeder: void glutwireoctahedron(void); void glutsolidoctahedron(void); Dodekaeder: void glutwiredodecahedron(gldouble Radius); void glutsoliddodecahedron(gldouble Radius); Ikosaeder: void glutwireicosahedron(void); void glutsolidicosahedron(void); 1-18
19 1.5 Zeichnen dreidimensionaler Objekte Verfügbare Modelle Kegel: void glutwirecone(gldouble Radius, GLdouble Höhe, GLint Anzahl Seitenelemente, GLint Anzahl Höhenelemente); void glutsolidcone(gldouble Radius, GLdouble Höhe, GLint Anzahl Seitenelemente, GLint Anzahl Höhenelemente); Teapot: void glutwireteapot(gldouble Größe); void glutsolidteapot(gldouble Größe); 1-19
20 1.6 Verwalten eines Hintergrundprozesses void glutidlefunc (void (*func) (void)) - Spezifiziert die Callback-Funktion, die aufgerufen wird, wenn kein anderes Event aufgetreten ist Bsp: - Ausführung von Hintergrundprozessen - Animation void display(void) { // animate something... }... int main(int argc, char **argv) {... glutdisplayfunc(display); glutidlefunc(display);... } 1-20
21 1.7 Starten der Hauptroutine void glutmainloop (void) - Startet die Hauptroutine - Wird erst bei Schließen des Fensters (Beenden des Programms) wieder verlassen - Ruft registrierte Callback-Funktionen bei den entsprechenden Events auf 1-21
22 1.8 Double Buffering und einfache Animation Grundlegende Funktionen - Display-Funktion muß regelmäßig aufgerufen werden - Framerate beachten - Schnellstmögliche Wiederholung im Single-Buffer Mode liefert sehr schlechte Resultate - Abhilfe: Double-Buffering Initialisierung des DisplayMode: glutinitdisplaymode(glut_double OTHER_FLAGS); Tauschen der Buffer nach Beendigung des Zeichenvorgangs: glutswapbuffers(); 1-22
23 1.8 Double Buffering und einfache Animation Animation der Szene - Neues Rendern eines jeden Frames in den nicht aktiven Buffer - Richtiger Buffer wird im Double-Buffer Mode automatisch gewählt - Rendering mit geänderten Parametern in der Display-Funktion - Beispiel: Rotierte Szene: Zustand setzen, um Transformationen auf das Modell wirken zu lassen: glmatrixmode(gl_modelview); Initialisierung der Transformationsmatrix glloadidentity(); Rotation um bestimmten Winkel (in Grad) um eine Achse glrotatef(glfloat Winkel, GLfloat AchseX, GLfloat AchseY, GLfloat AchseZ); 1-23
24 1.9 Übungsaufgabe Stellen Sie in einer Szene einen Torus dar, bei dem durch Eingabe der Zeichen + und - die Auflösung der einzelnen Patches modifiziert werden kann. Ergänzen Sie Ihr Programm so, daß durch Mausklick zwischen Wire-Frame und Solid-Darstellung gewechselt werden kann Ergänzen Sie Ihr Programm weiterhin so, daß durch Mausbewegung die Farbe des Torus geändert werden kann Lassen Sie die Szene um eine beliebige Achse Rotieren 1-24
Das OpenGL Utility Toolkit GLUT. Verwendung von GLUT
Verwendung von GLUT Grundlegende Funktionsweise - Öffnen eines Fensters - Registrieren von Callback-Routinen - Start einer Hauptroutine, die erst beim Schließen des Fensters verlassen wird - Beim Auftreten
MehrProgrammierpraktikum 3D Computer Grafik
Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Einführung die Computergrafik: GLUT und OpenGL. Teilnehmer und Abgaben Nachname Abeldt Brucker Dimitrova Gebhardt Goldhofer Lauber Promesberger
MehrÜbungsstunde 5 zu Computergrafik 1
Institut für Computervisualistik Universität Koblenz 19. un 20. November 2012 Inhaltsverzeichnis 1 Transformationen Translation Skalierung Rotation 2 Reihenfolge von Transformationen Beispiele 3 Programmieraufgabe
MehrProgrammieren mit OpenGL und GLUT
Programmieren mit OpenGL und GLUT Prof. Dr. Manfred Brill Oktober 2003 Inhaltsverzeichnis 1 OpenGL 1 1.1 Bibliotheken und Header-Dateien.... 1 1.2 OpenGL Datentypen... 2 2 GLUT 3 2.1 Ein typisches GLUT-Hauptprogramm........
MehrComputergraphik Grundlagen
Prof. Stefan Schlechtweg-Dorendorf Hochschule Anhalt (FH) Köthen Fachbereich Informatik Wintersemester 2010/2011 1 / 27 Teil II CG-Programmierung und OpenGL 2 / 27 Inhalt 1. Computergraphik-Programmierung
MehrGraphische Datenverarbeitung und Bildverarbeitung
Graphische Datenverarbeitung und Bildverarbeitung Hochschule Niederrhein Transformationen in OpenGL Graphische DV und BV, Regina Pohle, 18. Ereignisverarbeitung und Transformationen 1 Einordnung in die
MehrKapitel 21: OpenGl 1
Kapitel 21: OpenGl 1 OpenGl Programming Guide 2 OpenGl 200 Befehle in OpenGL Library (geometrische Primitive, Attribute) glcolor3f(1.0,0.0,0.0); glrotatef(30.0,0.0,0.0,1.0); 50 Befehle in OpenGl Utility
MehrSpiele, Simulation, dynamische Systeme
Spiele, Simulation, dynamische Systeme Einführung in OpenGL und GLUT Sebastian Skalec (11038991) Christian Fehmer (11042419) Was können wir nach dem Vortrag? Erstellen eines OpenGL-Fensters Motivation
MehrSeitenanzahl 44 GLUT. Anmerkungen, Feedback, etc. sind natürlich wie immer herzlich Willkommen.
Seitenanzahl 44 GLUT Autor: Joachim F. Rohde Homepage: http://www.joachimrohde.com Kontakt: webmaster@joachimrohde.de Datum der letzten Änderung: 03.06.2003 Datum der Veröffentlichung: 04.05.2005 Info:
MehrComputergrafik SS 2008 Oliver Vornberger. Kapitel 21: OpenGl
Computergrafik SS 2008 Oliver Vornberger Kapitel 21: OpenGl 1 OpenGl Programming Guide 2 OpenGl 200 Befehle in OpenGL Library (geometrische Primitive, Attribute) glcolor3f(1.0,0.0,0.0); glrotatef(30.0,0.0,0.0,1.0);
MehrBitmaps. - Definition eigener Zeichenmuster - Definition eigener Schriften. Zeichnen auf Pixel- und Bitmap-Ebene
Bitmaps Grundlagen - Bitmaps sind rechteckige Arrays bestehend aus 0 und 1 Werten - Sie dienen als Zeichenmaske in einem rechteckigen Fensterbereich - Bei gegebner Zeichenfarbe f=(r, B, G) werden die Pixel,
MehrOpenGL. Kapitel Grundlagen
Kapitel 21 OpenGL 21.1 Grundlagen OpenGL bietet eine Schnittstelle zwischen dem Anwenderprogramm und der Grafikhardware eines Computers zum Modellieren und Projizieren von dreidimensionalen Objekten. Diese
MehrEinführung in OpenGL. Einführung in OpenGL
OpenGL: Einführung/Standard - OpenGL (Open Graphics Library) ist ein Standard für 3D Rendering und 3D Hardware-Beschleunigung - OpenGL läuft unter Windows, MacOS, Linux, Unix, - Website: http://opengl.org
Mehr7.1 Polygon Offset. Anwendung - Darstellung von Polygonen als Teil von Oberflächen - Beispiel: Gradlinien auf der Erde - Schwierigkeit:
7.1 Polygon Offset Anwendung - Darstellung von Polygonen als Teil von Oberflächen - Beispiel: Gradlinien auf der Erde - Schwierigkeit: - Polygone sollen einmal als Fläche und einmal in Wireframe-Darstellung
MehrGrafikprogrammierung (Echtzeitrendering)
(Echtzeitrendering) erfordert Unterstützung für beide Aufgaben der Computergrafik Geometrische Modellierung Datenstrukturen für geometrische Modelle Schnittstellen für deren Kombination Bildsynthese Rendering
MehrEine Einführung in OpenGL
Eine Einführung in OpenGL Inhaltsverzeichnis 1 Übersicht 2 1.1 Was ist OpenGL?........................... 2 1.2 Was leistet OpenGL?......................... 2 2 Erste Schritte mit OpenGL 3 2.1 Grundstrukturen...........................
MehrEinführung in OpenGL. Thomas Kalbe 30.10.2007. Technische Universität Darmstadt. thomas.kalbe@gris.informatik.tu-darmstadt.de
Einführung in OpenGL Thomas Kalbe Technische Universität Darmstadt thomas.kalbe@gris.informatik.tu-darmstadt.de 30.10.2007 3D Graphic APIs 2 / 42 API: Application Programming Interface low-level graphic
MehrWer bin ich. 1. Übung zu Computergraphik 2. Allgemeines zur Übung. OpenGL allgemeines. Aufbau OpenGL Programm. Hauptprogramm
Wer bin ich. Übung u Computergraphik 2 Prof. Dr. Stefan Müller Thorsten Grosch Thorsten Grosch, AG Computergraphik Seit.7.2002 an der Uni Koblen Raum MB 9 Fragen ur Übung: Forum auf der Übungsseite http://www.uni-koblen.de/~cg/veranst/ws004/cg2_uebung.html
MehrComputergrafik II. OpenGL Einführung
Computergrafik II OpenGL Einführung OpenGL Rein prozedurales Interface Keine direkten Klassen/Objekte Verwaltung von OpenGL-Strukturen mittels Identifier Explizites funktionales Erzeugen/Löschen von Objekten
Mehr(6) Polygon Clipping. Vorlesung Computergraphik I S. Müller U N I V E R S I T Ä T KOBLENZ LANDAU
(6) Polygon Clipping Vorlesung Computergraphik I S. Müller KOBLENZ LANDAU Wiederholung I Clipping Berechnung eines Ausschnitts Test der Gültigkeit der Parameter bei Putpixel zu teuer, daher Clipping z.b.
MehrOpenGL Transformationen: Modeling
OpenGL Transformationen: Modeling transponiert! Punkt-Trfn = Matrizen-Multiplikationen von links (s.o.): v neu = T n (... ) T 2 T 1 v alt = T gesamt v alt OpenGL: Laden mat[16]: glloadmatrix{fd}(mat) Matrizen-Multiplikation:
MehrAugmented Reality Einführung in GLUT
LMU München, LFE Medieninformatik 3..26 Augmented Reality Einführung in GLUT Übung Augmented Reality Sebastian Boring, Arnd Vitzthum Montag, 3. Oktober 26 LMU München Medieninformatik Butz/Boring/Vitzthum
Mehr(12) OpenGL-Pipeline. Vorlesung Computergraphik I S. Müller U N I V E R S I T Ä T KOBLENZ LANDAU
(12) OenGL-Pieline Vorlesung Comutergrahik I S. Müller KOBLENZ LANDAU Wiederholung I Was assiert, wenn Kein glulookat verwendet wird? Kamera ist im Ursrung, Blick entlang der neg. -Achse, Rechtssstem,
MehrÜbung Augmented Reality Einführung in GLUT. Agenda (I)
Übung Augmented Reality Einführung in GLUT Fabian Hennecke 5.5.9 LMU München Medieninformatik Butz/Hennecke Augmented Reality SS9 5.5.9 Folie Agenda (I) OpenGL Utility Toolkit (GLUT) Initialisierung Callback-Funktionen
MehrComputergrafik 1 Übung
Prof. Dr. Andreas Butz Dipl.-Medieninf. Hendrik Richter Dipl.-Medieninf. Raphael Wimmer Computergrafik 1 Übung 4 1 Was ist OpenGL? OpenGL = Open Graphics Library API für Echtzeit-3D-Grafik Hardwarebeschleunigt
MehrLicht. Elektromagnetische Strahlung Emitter > Reflektor -> Auge. Sichtbares Spektrum: 400nm 700nm. Universität Frankfurt
Licht Elektromagnetische Strahlung Emitter > Reflektor -> Auge Sichtbares Spektrum: 400nm 700nm Farbwahrnehmung Farbbeschreibung I Farbton - rot, gelb, blau,... Helligkeit Nähe zu schwarz oder weiss Sättigung
Mehr3D-Sicht, Projektionen
3D-Sicht, Projektionen Typische Struktur eines Grafik- Programms, das erst in einem verborgenen Speicher zeichnet, den es nach Fertigstellung der Grafik sichtbar macht (Double Buffering): void draw (void)
MehrEine solche Programmierschnittstelle ist GLUT (OpenGL Utility Toolkit - Aussprache wie glutttony ).
OpenGL Open Graphics Library (OpenGL: Silicon Graphics Inc.) www.opengl.org Aktuelle Version: 4.4 (2013) 1982-92: IRIS GL (für SGI-Rechner) Seit 1992 frei verfügbar Definitionsgremium: OpenGL ARB (Architecture
Mehr2.10 Lichtquellen und Beleuchtung
2.10 Lichtquellen und void glshademodel(glenum model) - Setzt das angegebene Shading Model (GL_FLAT oder GL_SMOOTH) 2_4-1 2.10 Lichtquellen und Lokales smodell in OpenGL für n Lichtquellen k s 2_4-2 2.10
Mehr2.10 Lichtquellen und Beleuchtung
2.10 Lichtquellen und void glshademodel(glenum model) - Setzt das angegebene Shading Model (GL_FLAT oder GL_SMOOTH) 2-1 2.10 Lichtquellen und Lokales smodell in OpenGL für n Lichtquellen k s 2-2 2.10 Lichtquellen
MehrKlausur Computergrafik WS 2008 / 09
Fachhochschule Gießen-Friedberg Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 27. März 2009 Klausur Computergrafik WS 2008 / 09 Personalien: Name, Vorname:...
MehrEinstieg in die Informatik mit Java
1 / 18 Einstieg in die Informatik mit Java Applets Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung
MehrEine schnelle Processing-Einführung. von Thomas Rau
Eine schnelle Processing-Einführung von Thomas Rau Inhaltsverzeichnis 1 Was Processing ist 3 2 Der Sketch 3 2.1 Die setup()-methode................................... 3 2.2 Die draw()-methode....................................
MehrBRYCE 5 Mini Anleitung
BRYCE 5 Mini Anleitung Abstrakt Panoramisch von David Brinnen März 2005 Deutsch & HTML Version von Hans-Rudolf Wernli Farbkleckse > Wer mit einem Fotoapparat schon einmal ein Panorama aufgenommen hat,
MehrOpenGL auf Mac OS X und ios
OpenGL auf Mac OS X und ios Torsten Kammer 28.4.2011 CocoaHeads Aachen Grundlagen API für hardwarebeschleunigte 3D-Grafik Kann auch für schnelles 2D verwendet werden Grundlage von Core Image, Core Animation,
MehrEinführung OpenGL und GLUT WPF Spiele, Simulation und dynamische Systeme
Einführung OpenGL und GLUT WPF Spiele, Simulation und dynamische Systeme bei Prof. Dr. Wolfgang Konen erstellt von: Sebastian Skalec, 11038991 Christian Fehmer, 11042419 Fachhochschule Köln Campus Gummersbach
Mehr2.10 Lichtquellen und Beleuchtung
2.10 Lichtquellen und void glshademodel(glenum model) - Setzt das angegebene Shading Model (GL_FLAT oder GL_SMOOTH) 2-1 2.10 Lichtquellen und Lokales smodell in OpenGL für n Lichtquellen k s 2-2 2.10 Lichtquellen
MehrManagen Sie Ihr 3D-Gebäudemodell interaktiv. Von Anfang an.
Managen Sie Ihr 3D-Gebäudemodell interaktiv. Von Anfang an. 1 Einführung: DESITE SHARE Autor: jmh, jh, ah DESITE: 2.2.1 2 1 Einführung in DESITE SHARE Die Anwendung DESITE SHARE ist die kostenlose Viewer-Version
MehrWindows 8.1 Wichtiges in Kürze
Windows 8.1 Wichtiges in Kürze E. Jähnert 2013 Sperrbildschirm Sperrbildschirm verlassen: > mit der Maus nach oben ziehen oder klicken oder beliebige Taste betätigen In diesem Bereich bekommen Sie erste
MehrKlausur Computergrafik für Bachelor-Studierende WS 2010 / 11
Fachhochschule Gießen-Friedberg Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 8. Februar 2011 Klausur Computergrafik für Bachelor-Studierende WS 2010 / 11 Personalien:
MehrTim Pommerening v0.0.1 (ohne Gewähr) Seite 1 von 6
Tim Pommerening v0.0.1 (ohne Gewähr) Seite 1 von 6 Formelsammlung: GDV Bezeichnung Gefülltes regelmäßiges n-eck Formel /** * Zeichnet ein gefülltes n-eck. * x0, y0 : Koordinaten des Mittelpunkts. * r0
MehrAufgabe 2: Zweifacher de Casteljau
Aufgabe 2: Zweifacher de Casteljau Evaluationen auf Bézier Patches können mit dem de Casteljau Algorithmus berechnet werden Prinzipiell einfach den normalen Algorithmus für Kurven mehrfach anwenden, denn
MehrBlender Tutorial Dresden in 3D
Blender Tutorial Dresden in 3D Einführung In Blender wird viel mit Tastenkürzeln gearbeitet. (Die Kürzel sind am Ende nochmal gelistet). Damit diese Kürzel funktionieren, müsst ihr mit der Maus über dem
Mehr7.4 Tesselierung von Polygonen
Anwendungsgebiet - OpenGL kann direkt nur einfache konvexe Polygone anzeigen - Polygone sind einfach, wenn - sie selbstdurchdringungsfrei sind - sie keine doppelten Ecken enthalten - an einer Ecke genau
MehrGraphische Benutzungsoberflächen mit Java. Einführung in NetBeans
Graphische Benutzungsoberflächen mit Java Einführung in NetBeans Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung
MehrProseminar Computergrafik: OpenGL. Marcel Heckel
Proseminar Computergrafik: OpenGL Marcel Heckel 23.5.26 . Inhalt 1. Allgemein Was ist OpenGL Geschichte 2. Etwas 3D-Mathematik Das Koordinatensystem Vektoren Matrizen 3. Grundlegendes zu OpenGL Arbeitsweise
MehrGraphische Primitive Punkte Geradenstücke (Liniensegmente) Polygone
Graphische Primitive Punkte Geradenstücke (Liniensegmente) Polygone Punkte glvertex3f (50.0, 50.0, 0.0) glvertex2f (50.0, 50.0) glvertex4f (50.0, 50.0, 0.0,1.0) GLfloat vect[3] = {50.0, 50.0, 0.0} glvertex3fv
MehrDirectX und OpenGL. Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch, 15. Februar 2006
DirectX und OpenGL Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch, 15. Februar 2006 2 Inhalt Einleitung Übersicht DirectX und Komponenten Übersicht OpenGL Sprachlicher Aufbau OpenGL Sprachlicher
MehrEinführung in die Programmierung für NF. Übung 08
Einführung in die Programmierung für NF Übung 08 Inhalt Eventbehandlung in Java Swing Einführung in die Programmierung für NF Übung 08 2 Eventbehandlung in Java Swing Wir haben bereits einige grafische
MehrKlausur Computergrafik für Bachelor-Studierende SS 2015
Technische Hochschule Mittelhessen Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 27. Juli 2015 Klausur Computergrafik für Bachelor-Studierende SS 2015 Personalien:
MehrDiana Lange. Generative Gestaltung Die Processing Bibliothek
Diana Lange Generative Gestaltung Die Processing Bibliothek Inhalt Diese Foliensammlung gibt eine Einsicht über processingspezifischen Anweisungen und Variablen. Einführung Alle Elemente, die wir dank
MehrKlausur Computergrafik für Bachelor-Studierende WS 2010 / 11. Lösungshilfe
Fachhochschule Gießen-Friedberg Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 8. Februar 2011 Personalien: Klausur Computergrafik für Bachelor-Studierende WS 2010
MehrEreignisse Auf Benutzereingaben reagieren
Ereignisse Auf Benutzereingaben reagieren JavaScript ermöglicht es dem Entwickler auf Ereignisse (engl.: events) im Browser zu reagieren. Auf diese Weise kann der Benutzer mit den Anwendungen interagieren,
Mehr3D Programmierpraktikum: Schattenberechnung in Echtzeit
3D Programmierpraktikum: Schattenberechnung in Echtzeit Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 20. Juli 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum
Mehr4. Mit Fenstern arbeiten
4. Mit Fenstern arbeiten In dieser Lektion lernen Sie... wie Sie Fenster wieder schließen das Aussehen der Fenster steuern mit mehreren Fenstern gleichzeitig arbeiten Elemente von Dialogfenstern Was Sie
MehrKlausur Computergrafik SS 2007
Fachhochschule Gießen-Friedberg Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 11. Oktober 2007 Klausur Computergrafik SS 2007 Personalien: Name, Vorname:... Matrikelnummer:...
MehrProgrammierpraktikum 3D Computer Grafik
Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Dynamische Schattenberechnung Agenda Der Stencil-Buffer Der 1-bit Stencil-Buffer Der 8-bit Stencil-Buffer Volumetrische Echtzeitschatten
MehrProgrammierpraktikum 3D Computer Grafik
Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Szenegraphen, Texturen und Displaylisten. Agenda Organisatorisches Das Konzept der Szenegraphen Grundlagen Beispiel eines Szenegraphen Transformationen
MehrGrundlegende Darstellungsfunktionen
Grundlegende Darstellungsfunktionen Zeichenoperationen und Transformationen Die folgenden Folien beschreiben eine Reihe von grundlegenden Darstellungsfunktionen, die zur Modellierung einer Szene und zur
MehrCreated by Michael Kirsch & Beat Rossmy
PROCESSING EINE EINFÜHRUNG IN DIE INFORMATIK Created by Michael Kirsch & Beat Rossmy INHALT 1. Sto der Vorlesung 1. Processing Basics 2. Übung 1. Aufgabe 1 2. Strings & Arrays 2. Aufgabe 1-A 3. Klassen
MehrDelegates. «Delegierter» Methoden Schablone Funktionszeiger. Dr. Beatrice Amrhein
Delegates «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen 2 Definition 3 Definition Ein Delegat
Mehr2 Grundlagen und Grundeinstellungen
Grundlagen und Grundeinstellungen.1 Öffnen von ARCHICAD Wenn Sie das Programm ArchiCAD starten, öffnet sich zunächst der Einstellungsdialog ARCHICAD STARTEN. Bild -1 ARCHICAD wird gestartet Wählen Sie
Mehr3 Mit Programmen und Fenstern
34 MIT PROGRAMMEN UND FENSTERN ARBEITEN 3 Mit Programmen und Fenstern arbeiten In dieser Lektion lernen Sie wie Sie Programme starten und wieder beenden wie Sie mit Fenstern arbeiten Ein Programm starten
MehrPraktikum 4: Grafiken und Ereignisse
Praktikum 4: Grafiken und Ereignisse Aufgabe 1: Java Applikation Bisher haben wir in Java (ebenso wie in C) jeweils selbständige Konsole-Applikationen erstellt. Java wurde als Programmiersprache für das
MehrProgrammiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften
Programmiertechnik Teil 4 C++ Funktionen: Prototypen Overloading Parameter C++ Funktionen: Eigenschaften Funktionen (Unterprogramme, Prozeduren) fassen Folgen von Anweisungen zusammen, die immer wieder
MehrProtectaGIS erste Schritte
ProtectaGIS erste Schritte Diese Anleitung beschreibt die ersten Schritte in der Applikation ProtectaGIS. Diese Anleitung setzt voraus, dass Sie ProtectaGIS bereits installiert haben und auch Grundlage-Daten
MehrLichtquellen und Beleuchtung
void glshademodel(glenum model) - Setzt das angegebene Shading Model (GL_FLAT oder GL_SMOOTH) 1 Lokales Beleuchtungsmodell in OpenGL für n Lichtquellen k s 2 Normalenvektoren - Modelview-Transformation
Mehr2 FUNKTIONSZEIGER UND BEHÄLTER
FUNKTIONSZEIGER UND BEHÄLTER Leitideen: Die Vereinbarung von Funktionen und Funktionszeigern soll ihrem Aufruf ähneln und systematisch lesbar sein ( von innen nach außen ). Dem Konzept der Funktionszeiger
MehrNewtek Lightwave Grundlagen der 3D-Vektorgrafik
Newtek Lightwave Grundlagen der 3D-Vektorgrafik Form und Oberfläche Punkte und Polygone (mindestens 3-seitige Verbindungen zwischen Punkten) sind die Grundlage der Darstellung dreidimensionaler Objekte
MehrÜbung: Computergrafik 1
Prof. Dr. Andreas Butz Prof. Dr. Ing. Axel Hoppe Dipl.-Medieninf. Dominikus Baur Dipl.-Medieninf. Sebastian Boring Übung: Computergrafik 1 Projektionen und Transformationen Qt Kontextmenüs Koordinatensysteme
MehrBlatt 8. Einführung in vmd. Grundlagen. Gestaltung. Beispiel. Blatt 8. Weitere
Blatt 8 16.06.2010 starten Dateien vorbereiten und starten: POSCAR und XDATCAR.zip herunterladen XDATCAR.zip mit unzip XDATCAR.zip entpacken module load vis/ startet (einfacher: im gleichen Ordner wie
MehrLehrheft OpenGL. Zur Veranstaltung Computergraphik I (Grundlagen) Prof. Dr. Stefan Schlechtweg-Dorendorf Hochschule Anhalt Fachbereich Informatik
Lehrheft OpenGL Zur Veranstaltung Computergraphik I (Grundlagen) Prof. Dr. Stefan Schlechtweg-Dorendorf Hochschule Anhalt Fachbereich Informatik Inhaltsverzeichnis 1 Grundlegendes zu OpenGL...3 2 Einrichten
Mehr(3) Buffer. Vorlesung Computergraphik II S. Müller U N I V E R S I T Ä T KOBLENZ LANDAU
(3) Buffer Vorlesung Computergraphik II S. Müller KOBLENZ LANDAU KOBLENZ LANDAU Framebuffer Der Framebuffer Der Bildspeicher kann bei OpenGL aus vielen verschiedenen Teilen bestehen: color buffer depth
MehrEinführung in die Programmierung für NF. Übung
Einführung in die Programmierung für NF Übung 10 08.01.2014 Inhalt Programmierung Blatt 9 Eventbehandlung in Java Swing InputDialoge in Java UML Einführung in die Programmierung für NF Übung 10 2 Programmierung
MehrKlausur Computergrafik für Bachelor-Studierende WS 2009 / 10
Fachhochschule Gießen-Friedberg Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 11. Februar 2010 Klausur Computergrafik für Bachelor-Studierende WS 2009 / 10 Personalien:
MehrName, Vorname... Matrikelnummer... Rechnername... Grundlagen der Darstellung II (Einführung in CAD), Prüfung WS 2011/2012
Name, Vorname... Matrikelnummer... Rechnername... Grundlagen der Darstellung II (Einführung in CAD), Prüfung WS 2011/2012 Allgemeines Ort: Seminarraum 3149 Datum: 9.2.2012 Beginn der Prüfung: 10:00 Uhr
MehrÜ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:
MehrBedienung des Verwaltungsprogramms "Esox"
C C 1 Bedienung des Verwaltungsprogramms "Esox" Start des Verwaltungsprogramms Das Programm läßt sich starten: über das Programmsymbol Esox" in der Programmgruppe ZLM 700 oder ZLM 800 des Startmenüs, über
MehrÜ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:
MehrDirectX und OpenGL. Proseminar Multimedia-Hardwareerweiterungen. Michel Weimerskirch
DirectX und OpenGL Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch Zusammenfassung Diese Arbeit, die im Rahmen des Proseminars Multimedia Hardwareerweiterungen ausgearbeitet wurde, soll
MehrProgrammierpraktikum 3D Computer Grafik
Prof. Andreas Butz Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Szenegraphen, Texturen und Displaylisten. Agenda Organisatorisches Das Konzept der Szenegraphen Grundlagen Beispiel eines
MehrDie wichtigsten Befehle in Actionscript 1.0 und 2.0
Die wichtigsten e in Actionscript 1.0 und 2.0 Diese Kurzzusammenfassung stellt eine Übersicht dar, und ersetzt nicht die detaillierte Dokumentation der einzelnen e, die unter Adobe Livedocs / Flash zu
Mehr2D-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
MehrEinfache GIF Animation mit Blender und Gimp
Seite 1 von 11 Einfache GIF Animation Author: Harald Gräf 20.12.2010 Zusammenfassung Dies ist eine Schritt für Schritt Anleitung, um mit Blender und GIMP eine GIF Animation zu erstellen. Solche GIFs finden
MehrEin erstes "Hello world!" Programm
OOP Henrik Horstmann 14. September 2014 Inhaltsverzeichnis Inhaltsverzeichnis 1 Bedeutung der Symbole...1 2 Die Benutzer Oberfläche von HOOPLU...2 2.1 Projekte öffnen und speichern...2 2.2 Die Klasse Program
MehrKleines Cabri3D-Lekion ein Crashkurs
Erstellen des ersten Cabri 3D-Dokumentes Klicken Sie mit einem Doppelklick auf das Cabri 3D-Ikon. Die Software öffnet automatisch ein Dokument, welches eine Seite enthält. Seite mit Arbeitsbereich (= weiße
MehrJava - AWT Basispraktikum SystemArchitektur WS 2008/ Atanas Dimitrov
Java - AWT Basispraktikum SystemArchitektur WS 2008/2209 09.12.2008 Atanas Dimitrov 1 Was besprechen wir heute: AWT Klassen Die Klasse Graphics AWT Methoden Die Klasse ToolKit Ausgabe von Bilder Die Klasse
MehrFrilo.Manager. Erstellt am 19. Februar 2011 Letzte Änderung am 11. Mai 2011 Version Seite 1 von 8
Speichern und Verwalten Ihrer Frilo-Positionen Einfügen von externen Dokumenten wie Word, Excel oder sonstige PDF- Dateien Paralleles Bearbeiten mehrerer Dokumente Erstellen eines Gesamtdokuments auf PDF-Basis
MehrAufgabe. - Beispiel "Fahrt durch Blutgefäße":
Aufgabe Modellierung der statischen Anteile Ihres Projekts - Definieren Sie die statischen Anteile der Szene Ihres Projekts - Erstellen Sie eine geeignete Klassen-Repräsentation - Beispiel "Fahrt durch
MehrKlausur Computergrafik für Bachelor-Studierende SS Lösungshilfe
Technische Hochschule Mittelhessen Prof. Dr.-Ing. A. Christidis Fachbereich Mathematik, Naturwissenschaften und Informatik 8. August 2014 Personalien: Klausur Computergrafik für Bachelor-Studierende SS
MehrMitschriebe Literatur Taschenrechner
Name, Vorname... Matrikelnummer... Rechnername... Grundlagen der Darstellung II (Einführung in CAD), Prüfung SS 2015 Allgemeines Ort: Seminarraum 3149 Datum: 3.6.2015 Beginn der Prüfung: Ende der Prüfung:
MehrFrilo.Document.Designer
Erstellt am 19. Februar 2011 Letzte Änderung am 10. Juni 2011 Version 4.2011.1.2 Seite 1 von 8 Inhalt 1 Erste Schritte...4 1.1 Arbeiten in der Verwaltung FCC und Erstellen eines Dokumentes...4 1.2 Erstellen
MehrÜbung Datenstrukturen. Objektorientierung in C++
Übung Datenstrukturen Objektorientierung in C++ Aufgabe 1a - Farben Schreiben Sie eine Klasse COLOR zur Beschreibung von Farben. Eine Farbe werde hierbei additiv durch ihren Rot-, Grün- und Blauanteil
MehrGrundlagen der 3D-Computergrafik Programmieren mit OpenGL
Grundlagen der 3DComputergrafik Programmieren mit OpenGL Marc Wagner mcwagner@cip.informatik.unierlangen.de 13. November 1998 Was ist OpenGL? OpenGL (Open Graphics Library) ist ein Softwareinterface zum
MehrÜBUNGEN ZUR OBJEKTORIENTIERTEN MODELLIERUNG
ÜBUNGEN ZUR OBJEKTORIENTIERTEN MODELLIERUNG Unter objektorientierter Modellierung versteht man das detailgetreue Darstellen einer zu programmierenden Szene durch Skizzen in UML. UML steht für Unified Modelling
MehrErste Java-Programme (Scopes und Rekursion)
Lehrstuhl Bioinformatik Konstantin Pelz Erste Java-Programme (Scopes und Rekursion) Tutorium Bioinformatik (WS 18/19) Konstantin: Konstantin.pelz@campus.lmu.de Homepage: https://bioinformatik-muenchen.com/studium/propaedeutikumprogrammierung-in-der-bioinformatik/
Mehr3 Maps richtig ablegen und
PROJEKT MindManager 2002 Intensiv 3 Maps richtig ablegen und speichern Ihre Map ist nun fertig gestellt wenn Sie jetzt Ihre Arbeit mit MindManager beenden, ohne die aktuellen Eingaben und Formatierungen
Mehr