Freitag, den 29. Februar 2008 (Schalttag) |
Einführung in die Computergraphik
Ich glaube, ich sollte den RSS-Feed von Springer abbestellen, ich werde sonst zuviel Geld los. Introduction to Computer Graphics (Using Java 2D and 3D) von Frank Klawonn klingt auch wieder nach so einem »unbedingt haben wollen«: »This book introduces the most important basic concepts of computer graphics, coupling the technical background and theory with practical examples and applications throughout. Its user-friendly approach enables the reader to gain understanding through the theory at work, via the many example programs provided. With only elementary knowledge of the programming language Java, the reader will be able to create their own images and animations immediately, using Java 2D and/or Java 3D.« [Springer Informatik Produkte]
Technorati-Tags: Computergraphik 2D 3D Java
Posted by Jörg Kantel | Permalink | | | Computergraphik
Montag, den 25. Februar 2008 |
Fidibus
Und wo wir gerade bei der Mathematik sind, sei noch einmal ein Ausflug in die algebraische Geomeotrie gestattet. Diese nette Oberfläche, die ich mit dem Programm Grapher, das jedem Apple Macintosh beiliegt, erzeugt habe, trägt den netten Namen Fidibus und wird durch die einfache die Gleichung x4 = y2 + z2 charakterisiert:
Auf den Seiten zur Ausstellung »Imaginary« hatte ich noch folgende Aufsätze gefunden, die mich zu obiger Graphik inspiriert hatten:
- Duco van Straten: Geraden, Kurven und Kuspen (, 4,8 MB). Ein schöner, bebilderter Überblick zur algebraischen Geometrie.
- Herwig Hauser: Die Auflösung von Singularitäten (, 140 KB). Eine spannende und lustige Einführung in die Singularitätstheorie.
- Oliver Labs: Weltrekord-Flächen - Algebraische Flächen mit vielen Singularitäten (, 1,3 MB). Eine ansprechende, mathematische Einführung zu Flächen mit Singularitäten auf Abitur-Niveau.
- Jürgen Richter-Gebert: Blicke in die Unendlichkeit , 2,7 MB). Was man mit Spiegeln alles anstellen kann.
Die Artikel sind durch die Bank witzig geschrieben und reich bebildert. So macht Mathematik Spaß...
Technorati-Tags: Algebraische-Geometrie Visualisierung Grapher
Posted by Jörg Kantel | Permalink | | | Mathematik
Donnerstag, den 21. Februar 2008 |
Beginners 3D
Mal wieder ein wenig mit Processing gespielt: Ein torkelnder Würfel...
ist schon mit wenigen Zeilen Code erschaffen.
Technorati-Tags: Processing 3D Animation
Posted by Jörg Kantel | Permalink | | | Computergraphik
Montag, den 18. Februar 2008 |
Processing in Rot
Dynamite ist ein Ruby-Interface zu Processing, der interaktiven, Java-basierten IDE für Graphik und Rapid Prototyping. Implementiert wurde Dynamite in JRuby, den in Java geschriebenen Ruby-Interpreter.
Die Macher selber geben zu, daß JRuby und damit auch Dynamite noch zu langsam für den produktiven Einsatz seien. Aber sie hoffen auf die Zukunft. Wer es testen will, muß Java, Ruby und JRuby auf seinem Rechner installiert haben (Download). [Anarchaia]
Technorati-Tags: Processing Ruby JRuby Dynamite Java Graphik 3D
Posted by Jörg Kantel | Permalink | | | Computergraphik
May the FORTH with you
Packet Forth (PF) (GPL) »is a scripting language for soft real-time graphics processing and generation. Although the focus has shifted towards generative graphics in the last couple of years, the original goal was and still is real-time video processing. PF is now quite stable and usable, but remains a bit of an odd duck in the land of open source video processing tools.« Das Teil läuft unter Linux und MacOS X. [Anarchaia]
Technorati-Tags: Forth PacketForth Video Graphik
Posted by Jörg Kantel | Permalink | | | Multimedia
Montag, den 11. Februar 2008 |
Spaß mit Processing: Die Schmetterlingskurve
Das Berechnen und Zeichnen der Schmetterlingskurve war vor ewigen Zeiten immer (m)ein Test für die Leistungsfähigkeit »moderner« Personalcomputer. Auf meinem 8 MHz Atari ST mit Modula-2 (kennt jemand diese seinerzeit recht populäre Programmiersprache überhaupt noch?) benötigte das Teil damals etwa 10 Minuten, um fertig gerechnet auf dem Monitor zu glänzen. Ansonsten ist es einfach eine schöne Kurve, dessen Gleichung in Polarkoordinaten folgendermaßen geschrieben wird:
rho = ecos(theta) - 2 cos(4 theta) + sin(theta/12)5
In Processing auf einem heutigen Rechner ist das Berechnen und Zeichnen der Kurve nur noch eine Sache von Sekundenbruchteilen und sieht dann (wenn man mit smooth() auch noch Anit-Aliasing einschaltet) ungefähr so aus:
Ist das nicht ein wunderschöner Schmetterling, den wir da mit nur ganz wenigen Programmzeilen hingezaubert haben? Den Quellcode und ein paar Zusatzinformationen gibt es - wie immer - in meinem Wiki.
Ich habe die Kurve diesmal nicht gezeichnet, um die Geschwindigkeit meines Rechners zu testen (der ist hinreichend schnell ), sondern um festzstellen, welche mathematischen Funktionen Processing kann. Und - obwohl ich es nirgendwo dokumentiert gefunden habe - es sieht so aus, als ob Processing die gesamte mathematische Bibliothek von Java importiert und dem Nutzer transparent zur Verfügung stellt. Ein Blick in die Java-Dokumentation zeigt einem also, was möglich ist.
In Python hatte ich die Kurve zuletzt gezeichnet. Dort findet Ihr auch Anregungen für weitere Experimente und noch ein paar Hintergrundinformationen.
Technorati-Tags: Processing Mathematik Visualisierung
Posted by Jörg Kantel | Permalink | | | Mathematik
Mittwoch, den 6. Februar 2008 |
Bouncing Ball
Weitere erste Erkundungen von mir in die Animations- und Simulationsfähigkeiten von Processing:
Mit Bouncing Ball wollte ich ausprobieren, wie einfach es ist, Bilder zu importieren und zu animieren. Es ist einfach! Mehr dazu in meinem Wiki.
Technorati-Tags: Processing Animation Simulation Java
Posted by Jörg Kantel | Permalink | | | Computergraphik
Montag, den 4. Februar 2008 |
Ich habe gelesen, nein verschlungen...
denn die beiden Bücher, die Ende letzter Woche bei mir eintrudelten, waren so spannend, daß ich beinahe alles um mich herum vergaß und nur noch las und las und las... Da war einmal Visualizing Data von Ben Fry, einem der Mitentwickler und -Erfinder der Java-basierten Programmier- und Rapid-Prototyping-Umgebung Processing. Und so heißt der Untertitel auch konsequent Exploring and Explaining Data with the Processing Environment. Dabei setzt der Autor keine Scheuklappen auf, wo andere Tools sinnvoller sind, setzt er diese auch ein, wie zum Beispiel Perl und sed. Aber vor allem ist es kein Buch über Processing, sondern ein Buch über Daten-Visualisierung. Und zwar von der Beschaffung der Daten, der Aufbereitung und Filterung der Daten bis hin zur Repräsentation der Daten im schönen graphischen Gewand. Dabei wird auch deutlich gemacht, daß gerade der letzte Prozeß oft einem wiederholten Refinement unterliegt, bis das Ergebnis wirklich zufriedenstellend ist.
Jedes Kapitel (außer der Einführung) besteht aus einem vollständigen Projekt, das von Anfang bis Ende durchgeführt und ständig verfeinert wird. Dabei lernt man nicht nur den Umgang mit Daten, sondern doch auch den Umgang mit Processing, bis hin zu Einbindung von Prozessing in größere Java- und/oder Swing-Projekte oder der Nutzung von Java-Bibliotheken innerhalb der Processing-IDE (dem Sketchbook). Das Buch ist einfach Klasse, selbst das Kapitel, das Baseball-Daten visuell aufbereitet, war so geschrieben, daß auch Baseball-Ignoranten wie ich damit etwas anfangen und daraus etwas lernen konnten. Eine absolute Empfehlung von mir, lest das Buch, es macht Spaß.
Das zweite Buch hat mich nicht weniger begeistert: Eigentlich »nur« als die deutsche Fassung von Web Mapping Illustrated gedacht, ist Web-Mapping mit Open Source-GIS-Tools soweit aktualisiert, erweitert und auf die deutschen Verhältnisse angepaßt worden, daß daraus ein eigenständiges Werk entstanden ist. Neu sind zum Beispiel eine Einführung in Quantum GIS und ein Kapitel über Map Bender, aber auch der Nutzung der OGC-Webservices wurde (ihrer ständig wachsenden Bedeutung gemäß) ein breiterer Raum eingeräumt. War schon Web Mapping Illustrated so etwas wie meine GIS-Bibel, so ist Web-Mapping mit Open Source-GIS-Tools noch einen Tick besser und gehört auf den Schreibtisch eines jeden (Web-) Kartographen.
Nun habe ich letztens aber auch GIS for Web Developers von Scott Davis über den grünen Klee gelobt. Und dabei bleibt es auch, denn beide Bücher ergänzen sich hervorragend. Denn einmal nutzt Davis andere (Java-basierte) Tools, so daß die Schnittmenge der behandelten Werkzeuge von beiden Büchern sehr klein ist (an Quantum GIS kommen beide nicht vorbei ), zum anderen führt er gründlich in die OGC-Webservices und in die Theorie der Kartenprojektionen ein, während das O'Reilly-Buch hier vieles voraussetzt und daher nur streift, resp. bei der Kartenprojektion im Anhang einen »Auffrischungskurs« bietet. Beide Bücher zusammen bilden eine hervorragende Basis-Bibliothek für den an (Web-) Kartographie Interessierten.
Und wer dann noch im Mainstream mitschwimmen möchte oder muß, der besorge sich außerdem Google Maps Anwendungen mit PHP und Ajax (von mir hier besprochen). Damit wäre die Basis-Bibliothek vollständig. Alles weitere ist dann Fun.
Technorati-Tags: Webmapping GIS OpenSource Processing Java Visualisierung
Posted by Jörg Kantel | Permalink | | | Bibliothek