FH-Hof Java 2D - Kontext für Zeichenoperationen Richard Göbel.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

Freie Universität Berlin Institut für Informatik
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Definition von Klassen in Java
Threads Richard Göbel.
Java: Reversi Spielbrett
FH-Hof Texturen Richard Göbel. FH-Hof Anwendungen von Texturen Darstellung von 2D-Bildern Gestaltung von Oberflächen Simulation komplexer Geometrien...
Java: Objektorientierte Programmierung
FH-Hof Geometrie Richard Göbel. FH-Hof Aufbau des virtuellen Universums.
Java2D Richard Göbel.
Sortierverfahren Richard Göbel.
Java: Dynamische Datentypen
Einführung in die Programmierung von 3D-Grafiken Basis ist Java3D
Listen Richard Göbel.
Sortierverfahren Richard Göbel.
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Indirekte Adressierung
FH-Hof Automatisches Erzeugen von Geometrie Richard Göbel.
FH-Hof Indirekte Adressierung Richard Göbel. FH-Hof Einfache Speicherung von Daten Eine "einfache" Deklaration definiert direkt eine Speicherplatz für.
Java: Grundlagen der Sprache
FH-Hof Scalable Vector Graphics Richard Göbel. FH-Hof Einführung Scalable Vector Graphics (SVG) - Darstellung von Vektorgraphiken in einem Web-Browser.
FH-Hof Java3D - Grundlagen Richard Göbel. FH-Hof Java3D Konzept Erzeugung eines Szenengraphen als virtuelle Welt Darstellung der virtuellen Welt mit Hilfe.
Strategy Pattern Richard Göbel.
FH-Hof Texturen Richard Göbel. FH-Hof Anwendungen von Texturen Darstellung von 2D-Bildern Gestaltung von Oberflächen Simulation komplexer Geometrien...
Bilder und Rasterdaten
FH-Hof Analyse des R-Baums Richard Göbel. FH-Hof Ansatz Annahme: Die Bearbeitungszeit für eine Anfrage wird dominiert von der Ladezeit der Knoten von.
FH-Hof Java Packages Richard Göbel. FH-Hof Das Modulkonzept für Java Packages dienen zur Strukturierung größerer Java- Programme Ein Package kann: eigene.
Java: Grundlagen der Objektorientierung
Sommersemester 2003 Lars Bernard
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 8 Sitzung 8: Zeichnen in Java.
Einführung in die OOP in Java
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Gerhard Gröger, Dipl.-Ing. D. Dörschlag Einführung in die Programmierung mit Java.
Diskrete Mathematik I Vorlesung Arrays-
Java-Kurs Grafik Julian Drerup.
Java-Kurs - 7. Übung Besprechung der Hausaufgabe Referenzvariablen
Programmieren mit JAVA Teil V. Grafikausgabe mit JAVA, das AWT Java wurde von Anfang an mit dem Anspruch entwickelt, ein vielseitiges, aber einfach zu.
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
1DVG3 - anonyme Klassen Anonyme Klassen. DVG3 - anonyme Klassen 2 Syntax new BasisKlasse(Parameterliste) { Modifikationen und Erweiterungen der Basisklasse.
DVG Interfaces. DVG mehrfache Vererbung 4 Mehrfache Vererbung ist die Ableitung einer Klassen von mehreren anderen Klassen. –farbigerPunkt.
07-GraphischeObjekte Graphische Objekte in EMMA301Paint.
Transformationen 09-Transformationen.
DVG Klassen und Objekte
DVG Einfache Klassen 1 Einfache Klassen. 2DVG Einfache KlassenStrukturen Beispiel: Personendaten bestehen aus String name String name.
12-Drucken Drucken in JAVA. 12-Drucken2 Probleme beim Drucken: Es können nur graphische Informationen gedruckt werden. Die zu druckende Information muss.
10-Graphics2D Graphics2D. 10-Graphics2D2 Eigenschaften von Graphics2D Trennung zwischen Userkoordinaten und Gerätekoordinaten Beliebige Transformation.
Einführung in die Programmierung Datensammlung
FH-Hof Analyse des R-Baums - Teil 1 Richard Göbel.
FH-Hof 1 XML-Parser Richard Göbel. FH-Hof 2 XML-Parser- DOM Object Tree Parser Objekt der Klasse 'DocumentBuilderFactory' mit 'newInstance()' erzeugen.
FH-Hof Algorithmen und Datenstrukturen - Einführung Richard Göbel.
FH-Hof Sound Richard Göbel. FH-Hof Geräusche in Java3D Klasse MediaContainer als Datenlieferant MediaContainer(java.io.InputStream stream). MediaContainer(java.lang.String.
FH-Hof Java2D - Grundlagen Richard Göbel. FH-Hof Java2D - Funktionen Java2D unterstützt: das Zeichnen von Grafiken die Darstellung von Texten die Darstellung.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
FH-Hof Adapter & Facade Pattern Richard Göbel. FH-Hof Motivation Gegeben ist eine Klasse mit vorhandenen Methoden Gefordert ist eine Klasse, die ein bestimmtes.
FH-Hof Singleton Pattern Richard Göbel. FH-Hof Motivation Bestimmte Klassen sollen nur ein Objekt haben Nur ein Fabrikobjekt für eine Fabrikklasse Zentraler.
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Java programmieren mit JavaKara
Benutzeroberflächen mit Java
Java ohne Kara. Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen.
1.2 Attribute und Methoden Aufbau einer Java-Klasse:
Vom Umgang mit Daten. public void myProgram() { int[] saeulenWerte = new int[world.getSizeX()]; for (int i = 0; i < saeulenWerte.length; i++) { saeulenWerte[i]
Aufgaben Version 1: Es soll eine Wetterstation mit folgenden zwei Anzeigen implementiert werden: Aktuelle Wetterbedingungen mit Temperatur und.
1. Entwicklungsumgebung 2. Kontextmenü 3. Compile 4. Objekt 5. Attribut 6. Klasse 7. Deklaration 8. Intialisierung.
Learning By Doing Konstruktoren Gleicher Name wie die Klasse Zur Initialisierung des Objekts, insbesondere mit Parametern Wir immer bei der Objekterzeugung.
Datentypen Überblick Datentypen Einfache / fundamentale Datentypen
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
Sammlungsklassen Array.
Diskrete Mathematik I Vorlesung 2 Arrays.
Java-Kurs Übung Besprechung der Hausaufgabe
Java Programme nur ein bisschen objektorientiert.
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
 Präsentation transkript:

FH-Hof Java 2D - Kontext für Zeichenoperationen Richard Göbel

FH-Hof Bestandteile des Kontext Zeichenstift: Stroke Füllfarbe: Paint Transformationen: AffineTransform Weitere Attribute: Hintergrund Rendering Hints Clip-Bereich

FH-Hof Zeichenstift Basis: Interface Stroke Implementierende Klasse: BasicStroke Parameter für die Klasse BasicStroke : Breite Gestaltung von Ecken Muster für gestrichelte Linien Setzen des Zeichenstifts.setStroke(new BasicStroke(...))

FH-Hof Konstruktoren für die Klasse BasicStroke BasicStroke(float width) BasicStroke(float width, int cap, int join) BasicStroke(float width, int cap, int join, float miterlimit, float[] dash, float dash_phase)

FH-Hof Ende einer Linie: Parameter cap CAP_BUTT CAP_SQUARE CAP_BUTT

FH-Hof Ende einer Linie: Parameter join JOIN_BEVEL JOIN_MITER JOIN_ROUND

FH-Hof Muster für gestrichelte Linien: Parameter dash Für den Parameter dash wird ein Array für den Datentyp float erwartet Das Array muss eine gerade Anzahl von Elementen enthalten Die Länge der Liniensegmente wird mit den geraden Elementen definiert Die Länge der Zwischenräume wird mit den ungeraden Elementen definiert Der Startpunkt innerhalb des Musters wird mit Hilfe des Parameters dashphase festgelegt,

FH-Hof Beispiel für eine gestrichelte Linie float[] pattern = { 1, 19, 10, 10 }

FH-Hof Füllfarbe: Optionen Einheitliche Farbe mit der Klasse Color, z.B.: Color(float r, float g, float b) Farbverlauf mit der Klasse GradientPaint, z.B.: GradientPaint(float x1, float y1, Color col1, float x2, float y2, Color col2, boolean cyclic) Textur mit der Klasse TexturePaint, z.B.: TexturePaint(BufferedImage txtr, Rectangle2d anchor) Setzen der Füllfarbe:.setPaint(... )

FH-Hof Beispiele für Füllfarbe new Color(1f,1f,0f)new TexturePaint(...) new GradientPaint(30, 40, new Color(1f,0,0), 60, 70, new Color(0,1f,0),...) cyclic = false cyclic = true

FH-Hof Transformationen Auf alle Punkte eines zu zeichnenden Objekts wird zunächst eine Transformation angewendet Mit diesem Ansatz lassen sich verschiedene Ausgabemedien unterstützen: Bildschirm Drucker Palm... Die Transformation wird mit Hilfe einer 3 3 Matrix als Objekt der Klasse AffineTransformation dargestellt

FH-Hof Methoden von Graphics2D für Transformationen Änderung der aktuellen Transformation rotate(double theta, double x, double y) scale(double sx, double sy) shear(double shx, double shy) translate(double tx, double ty) Neue Transformation setzen setTransform(AffineTransform Tx)

FH-Hof Statische Funktionen von AffineTransformation getRotateInstance(double theta, double x, double y) getScaleInstance(double sx, double sy) getShearInstance(double shx, double shy) getTranslateInstance(double tx, double ty)