Aktuelle Binaries: Version 1.5.2; download: + Visual Toolkit (VTK -> KITWARE)

Größe: px
Ab Seite anzeigen:

Download "Aktuelle Binaries: Version 1.5.2; download: https://java3d.dev.java.net/binary-builds.html. + Visual Toolkit (VTK -> KITWARE)"

Transkript

1 3. Java 3D 3.1 Grundlagen - Hierarchie von Java-Klassen, die eine Schnittstelle zur Darstellung und Interaktion von dreidimensionalen grafischen Szenen bilden. - Die geometrischen Objekte werdenin einem Virtuellen Universum (Virtual Universe) erzeugt, welches dann gerendert wird. - Ein Java3D-Programm erzeugt Instanzen von Java3D-Objekten und platziert sie in eine Szenengraph- (Scene Graph-) Datenstruktur. - Szene-Graph: Ansammlung / Anordnung von 3D-Objekten in einer Baumstruktur. - Java 3D Programme: Realisierung als alleinstehende Applikationen und als Java Applets. - Relevante Links: java - Aktuelle Alternativen bezüglich 2D / 3D Grafik-API s: + DirectX -> Ursprünglich vordringlich für Spiele entwickelt + OpenGL -> universelle Grafik-Library -> Professioneller Einsatzbereich -> Rendering-Pipeline als HW-Lösung auf Grafikkarten + Java 3D (SUN Microsystems / JAVA3D.ORG) Bis Release 1.3.1: SUN Microsystems APIs auf DirectX oder OpenGL aufbauend Ab Release 1.3.2: Opensource-Projekt

2 Aktuelle Binaries: Version 1.5.2; download: + Visual Toolkit (VTK -> KITWARE) -> typ. auf Tcl/Tk, Java,..., aufbauend -> Professioneller Einsatzbereich, Open Source - Java 3D API Klassenhierarchie -> zwei Typen von Klassen: + Kernklassen (Basisklassen, "core classes") javax.media.j3d.* Package -> j3dcore.jar und j3daudio.jar mehr als 100 Klassen + Zubehörklassen ("utility classes") -> com.sun.j3d.utils.* Package -> dient der Erweiterung der elementaren Kernklassen; leistungsfähige Erweiterungen, z.b. content loader, simpleuniverse, geometry classes wie Boxen,..) - Ergänzende Java (Zubehör-) Klassen aus der Java-Entwicklungsumgebung: + Abstract Window Toolkit (AWT) Klassen (java.awt.*) zur Erzeugung eines 3D-Ausgabefensters (Alternative: Swing-Klassen -> javax.swing) + Vektormathematik-Klassen (javax.vecmath.*) für mathematische Objekte, z.b. Punkte, Vektoren, Matrizen, etc. - Bezugsquellen zu Java 2D/3D, Dokumentationen, Lizenzbedingungen, Installationsanweisungen,... -> vgl. vorstehend, relevante Links - Praktische Entwicklungsumgebung für Java: -> Eclipse, Gel, Joe,... - Java-Struktur (Quelle: SUN):

3 Java 3D API auf der Ebene der User Interface Toolkits 3.2 Der Szenengraph - Dient der Modellierung (Aufbau) des virtuellen Universums (virtual universe); wird aus Instanzen der Java3D-Klassen erzeugt - kann als Designtool und / oder Dokumentationsform für Java3D- Programme angesehen werden - Entspricht der typischen Baumstruktur mit Knoten und Kanten; + Knoten (nodes): Instanzen der Java 3D Klassen (Datenelemente) + Kanten (arcs): Beziehung zwischen Knoten. Folgende Alternativen: -> Vater-Kind Beziehung (Knoten -> Subknoten) -> Referenzbeziehung (Beziehung zwischen einem gewöhnlichen Knoten mit einer Knotenkomponente (note component) Achtung: Kanten verschiedener Knoten dürfen nicht auf gleichen Subknoten verweisen -> nur einen einzigen Weg vom Wurzelknoten zum Blattknoten (leaf) - Knotenkomponente (note component): Gibt u.a. Darstellungsattribute, etc., an.

4 - Fallbeispiel einen Szenegraphen: - Wurzel des Szenengraphen: Virtuelle Universum (virtual universe). - "Locale"-Objekt(e): Subknote(n) des virtual universe Bilden Ursprung in der 3D-Szene für den jeweils untergeordneten Teilbaum. Ein Szenengraph kann prinzipiell mehrere "Locales" enthalten (mehrere Koordinatensysteme). Dieses Beispiel ist jedoch nur auf ein solches Objekt beschränkt und diese Restriktion findet sich auch bei den meisten anderen Java 3D Applikationen. - Teilbaumgruppenknoten ("branch group nodes", BG): Sind den "Locale"-Objekten untergeordnet. + Teilbaumgraph ("branch graph") mit Teilbaumgruppenknoten (BG) als Wurzel. Achtung: Teilbaumgruppenknoten (BG) sind die einzigen Elemente, die unter einem "Locale" eingefügt werden dürfen. Ein "Locale" kann prinzipiell mehrere Teilbaumgruppenknoten enthalten. + Subknoten des Teilbaumgruppenknoten: hier ein Transformationsgruppenknoten (TG). + Diesem untergeordnet ist ein Blattknoten (leaf) und eine weitere Transformationsgruppe mit einem anderen Blattknoten.

5 Beispiel: Der erste Blattknoten entspricht in diesem Beispiel einem Planet (z.b. Erde), wobei die erste Transformationsgruppe z.b. die Position des Planeten im Raum angibt. Die gleiche Analogie gilt auch für den zweiten Blattknoten (z.b. Mond), wobei hier die zweite Transformation relativ zur übergeordneten Transformation berechnet wird. Also entspricht die Hierarchie im Szenengraphen genau der Hierarchie aus der Realität. Die Knotenkomponente: Definiert im Beispiel ein visuelles Attribut für das Planetobjekt, z.b. die Farbe des Planeten. Tabellarische Zusammenfassung der Ergebnisse des Fallbeispiels: Szenengraphknoten Möglicher Vaterknoten Mögliche Kinderknoten Beschreibung Virtuelles Universum - "Locales" Wurzel für die gesamte 3D- Szene "Locale" Virtuelles Universum Teilbaumgruppenknoten Ursprung für den untergeordneten Teilbaum Teilbaumgruppenknoten "Locale" andere (Gruppen-)Knoten Wurzel eines Teilbaumgraphen Blattknoten anderer Gruppenknoten - (Visuelles) Objekt der 3D- Szene Knotenkomponente - - (Visuelles) Attribut eines 3D-Objektes

6 3.3 Teilbaumgraphen Man unterscheidet zwei Arten von Teilbaumgraphen: - Inhalts-Teilbaumgraph ( content branch graph ) - Ansichts-Teilbaumgraph ( view branch graph ) content branch graph -> virtuelles Universum bzw. 3D-Szene. Dazu zählen u.a.: Geometrie, visuelle Attribute, Animationen, Transformationen, Sounds, Lichter usw. view branch graph: -> Ansichtsparameter der 3D-Szene, z.b. Position und Orientierung der sog. Szenenkamera bzw. des Betrachters der Szene. Man spricht in diesem Zusammenhang oft vom point of view oder eye point. Zusammenfassung beider Strukturen in einem Szenengraphen: Basisinformation für das Rendering-System zur Darstellung der 3D-Szene (vgl. Fallbeispiel in nachstehender Abbildung). Spezifiziert Kopf des Be- trachters der 3D-Szene beschreibt physikalische Umgebung, u.a.audioausgabe, Steuerung phys. Ein- und Ausgabegeräte

7 3.4 Java 3D Klassenhierarchie Klassenhierarchie des Java 3D API Packages javax.media.j3d.*: SceneGraphObject die Basisklasse für die meisten oder sogar fast alle Java 3D Kern- und Zubehörklassen. Das SceneGraphObject und seine Subklassen Zwei Subklassen: - Die Node-Klasse, bestehend aus Group- und Leaf-Klassen + entspricht den zuvor angesprochenen Gruppen- und Blattknoten. + werden häufig zur Bildung des Szenengraphen benutzt.

8 - Die NodeComponent-Klasse -> beschreibt eine Knotenkomponente des Szenengraphen. Übersicht über die Node-Klasse (und ihre Subklassen) sowie über die NodeComponent-Klasse: - Node + Basisklasse für Group und Leaf + Definiert einige wichtige Basismethoden, die in den abgeleiteten Klassen implementiert werden. Der Szenengraph wird aus diesen Node-Objekten konstruiert. - Group + Beschreibt die Gruppenknoten des Szenengraphen. + Dient als Basisklasse für weitere Subklassen, die z.b. die Position und Orientierung von visuellen Objekten in einer 3D-Szene angeben. Zwei dieser Subklassen sind die bereits beschriebenen Teilbaumund Transformationsgruppenknoten (in der grafischen Repräsentation des Szenengraphen werden diese Objekte durch Kreise mit einem "BG" bzw. "TG" angegeben). - Leaf + Blattknoten des Szenengraphen dar. + Kann zwar keine Subknoten enthalten, sich aber auf Knotenkomponenten beziehen. Ist Basisklasse für weitere Klassen, die 3D-Formen, Sounds und Verhalten ("behaviors") von visuellen Objekten in der 3D-Szene angeben. Beispiele: Shape3D, Light und Behavior (In der grafischen Repräsentation des Szenengraphen werden Shape3D-Objekte (d.h. also 3D-Formen) durch Dreiecke mit einem "S" dargestellt). - NodeComponent + Beschreibt eine Knotenkomponente des Szenengraphen. + Dient als Basisklasse für diverse andere Subklassen z.b. zur Festlegung von Geometrie, Darstellungsattributen, Texturund Materialeigenschaften von Shape3D-Objekten (siehe Leaf- Klasse).

9 3.5 Schema zur Erstellung von Java 3D-Programmen Allgemeine Vorgehensweise 1. Erzeugung eines Canvas 3D-Objekts -> Ein Canvas 3D-Objekt definiert einen Fensterbereich, in dem die Ausgabe und ggf. Interaktion stattfinden soll und kann (vgl. AWT-Klasse) 2. Erzeugung eines VirtualUniverse-Objekts -> Wurzel des gesamten Szenengraphen 3. Erzeugung eines Locale-Objekts und dessen Hinzufügen (assoziieren) zum VirtualUniverse -> Dient als Ursprung für die untergeordneten Teilbäume 4. Erzeugen eines ViewBranchGraphen (Ansichts-Teilbaumgraphen) a) Erzeugen eines View-Objekts -> Enthält alle wichtigen Informationen, die zur Darstellung einer 3D-Szene von einem Blickpunkt (viewpoint) betrachtet notwendig sind b) Erzeugen eines ViewPlatform-Objekts -> Beschreibt Position, Orientierung und Skalierung des Betrachters (viewer) der 3D-Szene; Stichwort: Szenenkamera c) Erzeugen eines PhysicalBody-Objekts -> Spezifiziert Kopf des Betrachters der 3D-Szene, z.b. Ursprung des Koordinatensystems ( zwischen linkem und rechtem Auge ), Richtungen der x-, y- und z- Achsen beim Betrachter (vgl. glulookat bei OpenGL) d) Erzeugen eines PhysivalEnvironment-Objekts -> Beschreibung der physikalischen Umgebung; dient u.a. zur Steuerung physikalischer Eingabegeräte (Sensoren) und der Audio-Ausgabegeräte e) Hinzufügen der Viewplattform-, PhysicalBody-, PhysivalEnvironment- und Canvas 3D-Objekte zum View-Objekt 5. Erzeugen eines oder mehrerer ContentBranchGraphen 6. Kompilierung dieser Branchgraphen -> Dabei werden die Szenengraphelemente in eine für den Java 3D Renderer effizientere Form übersetzt -> Methode compile() Ziel: Beschleunigung der 3D-Ausgabe. Dazu zählt z.b. die Zusammenfassung von mehreren benachbarten Transformationsgruppen

10 7. Einfügen der Teilgraphen in das Locale-Objekt -> Mit diesem letzten Schritt sind der Szenengraph und alle weiteren erforderlichen Java 3D Objekte fertig konstruiert, so dass die 3D-Ausgabe jetzt erfolgen kann Arbeiten mit der SimpleUniverse - Klasse Die meisten Java 3D Programme basieren auf dem gleichen Ansichts-Teilbaumgraphen (gleiche Kameraposition, etc.). -> Vereinfachung der beschriebenen allgemeinen Programmstruktur Einsatz derjava 3D Zubehör-Klasse SimpleUniverse -> Abdeckung der Schritte aus der oben angegebenen Übersicht Schema zur Erstellung eines Java 3D-Programms bei Verwendung des SimpleUniverse 1. Erzeugung eines Canvas 3D-Objekts 2. Erzeugung eines SimpleUniverse-Objekts, Anpassen des SimpleUniverse-Objekts 3. Erzeugen des ContentBranchGraphen 4. Kompilierung des Branchgraphen 5. Einfügen des ContentBranchGraphen in das Locale-Objekt des SimpleUniverse -> Speziell für Java 3D Anfänger sinnvoll -> Einschränkung: Es kann und wird nur mit einem einzigen View gearbeitet Der SimpleUniverse-Konstruktor erzeugt einen Szenengraphen, einschließlich der VirtualUniverse- und Locale-Objekte, sowie den kompletten Ansichts- Teilbaumgraphen.

11 Szenengraphen bei Nutzung von SimpleUniverse: 3.6 Die Projektionsfläche Der Ansichts-Teilbaumgraph, der durch die SimpleUniverse-Klasse erzeugt wird, enthält die sog. Projektionsfläche ("image plate"). -> Entspricht Ebene, auf der das Bild der 3D-Szene projiziert wird Verdeutlichung der Beziehung zwischen der Projektionsfläche, Szenenkamera und den visuellen 3D-Szenenobjekten:

12 Die Szenenkamera befindet sich vor der Projektionsfläche, wobei die visuellen Objekte (die hinter der Fläche sind) darauf abgebildet werden. Standardmäßig -- > Ursprung des SimpleUniverse befindet sich im Punkt (0, 0, 0) -> auch das Zentrum der Projektionsfläche. Die Orientierungsrichtung ist dabei durch die Z-Achse beschrieben. Von diesem Zentrum betrachtet ist die X-Achse eine horizontale Gerade mit positiven Werten nach rechts und die Y-Achse eine vertikale Gerade mit positiven Werten nach oben. Bei Java 3D hat man sich darauf geeinigt, dass die Szenenkamera auf die Position (0, 0, 2.41) gesetzt wird und die Orientierungsrichtung durch die negative Z-Achse beschrieben wird. Man spricht hierbei von der sog. "nominal viewing transformation". Geeignete Methode der ViewingPlatform-Klasse: setnominalviewingtransform() -> setzt die nomonale Viewing-Distanz auf 2.41 m Um auf das ViewingPlatform-Objekt in der SimpleUniverse-Klasse zugreifen zu können, bedient man sich der folgenden Methode der SimpleUniverse-Klasse: ViewingPlatform getviewingplatform() Mit Hilfe der ViewingPlatform kann man die Position der Kamera verändern, indem man sich mit Hilfe der Methode TransformGroup getviewplatformtransform() die entsprechende TransformGroup holt und ihr eine selbst erzeugte Transfomations-Matrix zuweist.

13 Diese kann man sich mit der sehr praktischen Methode lookat(point3d eye, Point3d center, Vector3d up) der Klasse Transform3D erzeugen. Damit könnte der entsprechende Code folgendermaßen aussehen: // set the position of the eye point Transform3D l3d = new Transform3D(); l3d.lookat(new Point3d(0.8,1.4,4), new Point3d(0,0,0), new Vector3d(0,1,0)); l3d.invert(); simpleu.getviewingplatform(). getviewplatformtransform(). settransform(l3d);

14 3.7 Ein einfaches Java 3D - Programm /* * Copyright Lutz / Emmel, Verlag Harry Deutsch, 2000 * * Beispiel: ColorCubeA.java * * Realisierung eines farbigen Wuerfels * */ // Zu importierende Klassen import java.applet.applet; import java.awt.borderlayout; import com.sun.j3d.utils.applet.mainframe; import com.sun.j3d.utils.universe.simpleuniverse; import com.sun.j3d.utils.geometry.colorcube; import javax.media.j3d.*; public class ColorCubeA extends Applet { public ColorCubeA() { // Canvas 3D erzeugen setlayout(new BorderLayout()); // Standardkonfiguration bestimmen GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration(); Canvas3D canvas3d = new Canvas3D(config); add("center", canvas3d); /* der BranchGraph wird durch den Aufruf der Methode createscenegraph erzeugt */ BranchGroup scene = createscenegraph(); /* die Szene wird optimiert: Compilation der BranchGroup und der assoziierten Objekte durch Erzeugung und Speicherung eines compilierten Szenengraphe */ scene.compile(); // ein neues SimpleUniverse mit dem Canvas3D-Objekt wird erzeugt SimpleUniverse universe = new SimpleUniverse(canvas); // ein Default-Viewbranch wird erzeugt

15 universe.getviewingplatform().setnominalviewingtransform(); } // die Szene wird in das Universum eingesetzt universe.addbranchgraph(scene); public BranchGroup createscenegraph() { // Erzeugen eines BranchGroup-Objektes... BranchGroup objroot = new BranchGroup(); //. welches den ColorCube aufnimmt objroot.addchild(new ColorCube(0.4)); } return objroot; public static void main(string[] argv) { /* falls das Programm eine Anwendung ist, wird der folgende Programmcode benötigt */ new MainFrame(new ColorCubeA(), 256, 256); } } Java-Klassen im vorstehenden Beispiel (Quelle: SUN Java 3D API): a) Erzeugung eines Canvas3D-Objekts The Canvas3D class is derived from the Canvas class of the Abstract Windowing Toolkit (AWT). At least one Canvas3D object must be referenced in the viewing branch graph of the scene graph. For more information on the Canvas class, consult a reference on the AWT. Canvas3D Constructor Canvas3D(GraphicsConfiguration graphicsconfiguration) Constructs and initializes a new Canvas3D object that Java 3D can render given a valid GraphicsConfiguration object. It is an extension of the AWT Canvas class. For more information on the GraphicsConfiguration object see the Java 2D specification, which is part of the AWT in JDK 1.4.

16 b) Erzeugung des SimpleUniverse SimpleUniverse Constructors Package: com.sun.j3d.utils.universe This class sets up a minimal user environment to quickly and easily get a Java 3D program up and running. This utility class creates all the necessary objects for a view branch graph. Specifically, this class creates Locale, VirtualUniverse, ViewingPlatform, and Viewer objects (all with their default values). The objects have the appropriate relationships to form the view branch graph. SimpleUniverse provides all functionality necessary for many basic Java 3D applications. Viewer and ViewingPlatform are convenience utility classes. These classes use the View and ViewPlatform core classes. SimpleUniverse() Constructs a simple virtual universe. SimpleUniverse(Canvas3D canvas3d) Construct as simple universe with a reference to the named Canvas3D object. c) Realisierung des farbigen Würfels ColorCube Constructors Package: com.sun.j3d.utils.geometry A ColorCube is a simple color-per-vertex cube visual object with a different color for each face. ColorCube extends the Shape3D class; therefore, it is a Leaf node. ColorCube is easy to use when putting together a virtual universe. ColorCube() Constructs a color cube of default size. By default, a corner is located 1 meter along each of the axis from the origin, resulting in a cube that is centered at the origin and is 2 meters high, wide and deep. ColorCube(double scale) Constructs a color cube scaled by the value specified. The default size is 2 meters on an edge. The resulting ColorCube has corners at (scale, scale, scale) and (-scale, -scale, -scale). d) Compilation der BranchGroup und der assoziierten Objekte durch Erzeugung und Speicherung eines compilierten Szenengraphen void compile() Compiles the source BranchGroup associated with this object by creating and caching a compiled scene graph. Concepts of compiled and live are implemented in the SceneGraphObject class.

17 BranchGroup objects can be compiled. Compiling a BranchGroup converts the BranchGroup object and all of its ancestors to a more efficient form for the renderer. Compiling BranchGroup objects is recommended as the last step before making it live. It is best to only compile the BranchGroup objects inserted into Locales. e) Ablauffähiges Java-Programm realisieren Die Klasse HelloJava3Da wurde von der Oberklasse Applet abgeleitet. Ablauffähige Anwendung Ergänzung um Main-Programm Klasse Mainframe zur Erzeugung eines AWT-Frames (window) -> Ermöglichung des Ablauf eines Applets als Anwendung MainFrame Constructor (partial list) package: com.sun.j3d.utils.applet MainFrame makes an applet into an application. A class derived from applet may have a main() method which calls the MainFrame constructor. MainFrame extends java.awt.frame and implements java.lang.runnable, java.applet.appletstub and java.applet.appletcontext. MainFrame(java.applet.Applet applet, int width, int height) Creates a MainFrame object that runs an applet as an application. Parameters: applet the constructor of a class derived from applet. width the width of the window frame in pixels height the height of the window frame in pixels Auswahl von Tutorials (an der FH Fulda realisiert): - Blum/Wassermann: Aspekte in 2D und 3D. Interaktive Lernsoftware, FH FD, FB AI, WS 2001/ Klug, M.: Lernprogramm für Java 3D. Ausarbeitung und Tutorial im Rahmen der LVA Systemprogrammierung, FH FD, FB AI, WS 2001 / Pressmann, Julia: Seminar Java 3D (Beleuchtung und Material) Seminararbeit an der FH FD, FB AI, WS 2002/ Pressmann, Julia: Java 3D Tutorium (Transformationen, Texturen) Ausarbeitung und Tutorial im Rahmen der LVA Systemprogrammierung, FH FD, FB AI, WS 2002/2003 Weitere Beispiele, etc. -> vgl. LVA

Einführung in Java3D

Einführung in Java3D Einführung in Java3D SS05 Ashraf Abu Baker [email protected] Varrentrappstr. 40-42 60486 Frankfurt am Main Raum 218 Java 3D ist eine high level Interaktive 3D Graphik-API (Application Programming

Mehr

Java 3D Einstiegs-Tutorial Teil 1

Java 3D Einstiegs-Tutorial Teil 1 Java 3D Einstiegs-Tutorial Teil 1 Computergrafik - Übungen W. Kurth, E. Roth WS 2001/02 Java 3D: Application Programming Interface (API) für Java Erweiterung von Java um Klassenbibliotheken, die als Interface

Mehr

Der Szenegraph. Im Folgenden eine kurze Beschreibung der wichtigsten Knoten des Szenegraphen:

Der Szenegraph. Im Folgenden eine kurze Beschreibung der wichtigsten Knoten des Szenegraphen: Java 3d Java3D ist eine Bibliothek von Java Klassen zur Darstellung dreidimensionaler Graphik innerhalb von Java Applikationen und Applets. Die Struktur der darzustellenden Szene wird durch das Aufbauen

Mehr

Einige weitere Fähigkeiten und Anwendungsbeispiele

Einige weitere Fähigkeiten und Anwendungsbeispiele Java3D Eine Einführung Was ist Java3D Ansicht (Viewing Model) Sichtbare Objekte Animationen und Interaktionen Einfaches Beispielprogram Einige weitere Fähigkeiten und Anwendungsbeispiele Was ist Java3D?

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Einführung - Was ist Java3D?

Einführung - Was ist Java3D? Einführung - Was ist Java3D? - Java Package für interaktive 3D Grafik - High-level 3D Grafik API - Programmieren von interaktiven Anwendungen mit dreidimensionalen Inhalten - Nahtlose Integration in Java

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

GUI Programmierung in Java

GUI Programmierung in Java vs und niemals mischen! Daher muss man sich für eine Klasse entscheiden 1 (Abstract Window Toolkit) schwergewichtige Alle Elemente werden vom Betriebssytem gemalt sehen aus wie alle anderen Programme auf

Mehr

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Klausur zur Einführung in die objektorientierte Programmierung mit Java Klausur zur Einführung in die objektorientierte Programmierung mit Java im Studiengang Informationswissenschaft Prof. Dr. Christian Wolff Professur für Medieninformatik Institut für Medien-, Informations-

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

3D-Grafik und -Animation: Java3D

3D-Grafik und -Animation: Java3D 3D-Grafik und -Animation: Java3D Hauptseminar Virtuelle Präsenz Wintersemester 2003/2004 Marco Jahn Inhaltsverzeichnis 1 Einleitung... 3 2 Java3D Grundlagen... 3 2.1 Die Java3D API... 3 2.2 Aufbau eines

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

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

Assoziation und Aggregation

Assoziation und Aggregation Assoziation und Aggregation Martin Wirsing in Zusammenarbeit mit Matthias Hölzl, Nora Koch 05/03 2 Ziele Verstehen der Begriffe Assoziation und Aggregation Implementierung von Assoziationen in Java schreiben

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Abschnitt 12: Strukturierung von Java-Programmen: Packages

Abschnitt 12: Strukturierung von Java-Programmen: Packages Abschnitt 12: Strukturierung von Java-Programmen: Packages 12. Strukturierung von Java-Programmen: Packages 12.1 Strukturierung durch Packages 12.2 Zugriffsspezifikationen 12.3 Zusammenfassung 12 Strukturierung

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 14 Einstieg in die Informatik mit Java Swing Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 14 1 Einführendes Beispiel 2 Eigenschaften von Swing 3 Typisches Swing-Applet

Mehr

Künstliches binäres Neuron

Künstliches binäres Neuron Künstliches binäres Neuron G.Döben-Henisch Fachbereich Informatik und Ingenieurwissenschaften FH Frankfurt am Main University of Applied Sciences D-60318 Frankfurt am Main Germany Email: doeben at fb2.fh-frankfurt.de

Mehr

Grundlagen der Programmierung APPLETS

Grundlagen der Programmierung APPLETS Grundlagen der Programmierung APPLETS Inhalt dieser Einheit Java-Applets: Java-Applets Vor- und Nachteile Sicherheitskonzepte Methoden Einbetten in HTML Graphical User Interface 2 Java Applets Applets

Mehr

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2 Inhalt 1. Printing API 1. Übersicht 2. Vorgehen 3. Beispiel 2. Klasse PrintUtils 3. Mehrere Seiten drucken Folie 1 Lernziele Sie wissen, wie Sie Swing-Komponenten ausdrucken können Sie kennen den Aufbau

Mehr

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

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

Mehr

Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster

Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster by Ali Bastan Gliederung Grundlagen von Swing 1. Kurze Einleitung 2. Warum Swing, wenn es das AWT gibt? 3. Was ist Swing? 4. Merkmale von Swing 5.

Mehr

Graphische Benutzungsoberflächen

Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen

Mehr

Java Einführung Abstrakte Klassen und Interfaces

Java Einführung Abstrakte Klassen und Interfaces Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer

Mehr

GEONET Anleitung für Web-Autoren

GEONET Anleitung für Web-Autoren GEONET Anleitung für Web-Autoren Alfred Wassermann Universität Bayreuth [email protected] 5. Mai 1999 Inhaltsverzeichnis 1 Technische Voraussetzungen 1 2 JAVA-Programme in HTML-Seiten verwenden

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Java 3D Einstiegs-Tutorial Teil 3

Java 3D Einstiegs-Tutorial Teil 3 Navigation mit der Maus Java 3D Einstiegs-Tutorial Teil 3 Computergrafik - Übungen W. Kurth, E. Roth WS 2001/02 Java 3D eröffnet mehrere Möglichkeiten, sich mittels Maus- Eingaben im virtuellen Raum zu

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

Applet Firewall und Freigabe der Objekte

Applet Firewall und Freigabe der Objekte Hauptseminar Applet Firewall und Freigabe der Objekte Nachweis von Sicherheitseigenschaften für JavaCard Jin Zhou Ein Überblick über diesen Vortrag Applet Firewall Kontext JCRE Entry Point Objekt Shareable

Mehr

Praktikum: Einstieg: Arbeitsplatz, JCreator

Praktikum: Einstieg: Arbeitsplatz, JCreator Modul OPR Praktikum: Einstieg: Arbeitsplatz, JCreator Aufgabe 1 Richten Sie Ihren OPR-Arbeitsplatz ein: Java-Tool JCreator (nur lauffähig machen!) ->Erklärungen kommen später! Wie funktioniert Java? Der

Mehr

Task: Nmap Skripte ausführen

Task: Nmap Skripte ausführen Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses

Mehr

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen

Mehr

Innere Klassen in Java

Innere Klassen in Java Innere Klassen in Java SS 2012 Prof. Dr. Margarita Esponda Innere Klassen Klassen- oder Interfacedefinitionen können zur besseren Strukturierung von Programmen verschachtelt werden Eine "Inner Class" wird

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Getting Started General Workflow. Anlegen von Schablonen Ausrichtung 3.2. Atoms Precision V2 Tutorial. Working with Images Direct from Camera

Getting Started General Workflow. Anlegen von Schablonen Ausrichtung 3.2. Atoms Precision V2 Tutorial. Working with Images Direct from Camera Getting Started General Workflow Anlegen von Schablonen Ausrichtung 3.2 Atoms Precision V2 Tutorial Working with Images Direct from Camera Die Ausrichtungseinstellungen ermöglichen die Ausrichtung der

Mehr

25 Import der Beispiele

25 Import der Beispiele 25 Import der Beispiele Versuch es nicht mit Gewalt. Nimm einfach einen größeren Hammer (Murphy s Law) 25.1 Einleitung Alle Beispielprogramme dieses Buchs funktionieren mit jeder Java-konformen Entwicklungsumgebung.

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Der Einsatz von HDRIs in LightWave 7

Der Einsatz von HDRIs in LightWave 7 Seite 1 DOSCH DESIGN TUTORIAL Der Einsatz von HDRIs in LightWave 7 Eine Schritt-für-Schritt-Anleitung LightWave kann ab der Version 6.5 HDRIs (High Dynamic Range Images) als Beleuchtung und Hintergrund

Mehr

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI) 1 JAVA für Bauingenieure Alexander Karakas SS 2008 Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI) 21.05.2008 2 Was ist ein(e) GUI? GUI = Graphical User Interface = Graphische

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis Das komplette Material finden Sie hier: Download bei School-Scout.de

Mehr

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7 Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Anleitung zur Webservice Entwicklung unter Eclipse

Anleitung zur Webservice Entwicklung unter Eclipse Entwicklungsumgebung installieren Sofern Sie nicht an einem Praktikumsrechner arbeiten, müssen Sie ihre Eclipse-Umgebung Webservice-fähig machen. Dazu benötigen Sie die Entwicklungsumgebung Eclipse for

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung

Mehr

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

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

Mehr

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

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

Mehr

Zahlen auf einen Blick

Zahlen auf einen Blick Zahlen auf einen Blick Nicht ohne Grund heißt es: Ein Bild sagt mehr als 1000 Worte. Die meisten Menschen nehmen Informationen schneller auf und behalten diese eher, wenn sie als Schaubild dargeboten werden.

Mehr

Oracle Forms. Aufbau und Bestandteile von Formularen. Erstellen eines neuen Blocks. Starten von Oracle Forms

Oracle Forms. Aufbau und Bestandteile von Formularen. Erstellen eines neuen Blocks. Starten von Oracle Forms Oracle Forms Oracle Forms ist eine Applikation für den Entwurf und die Erstellung Forms-basierender Anwendungen. Diese Forms umfassen Dateneingabe-Formulare Datenabfrage-Formulare Browser-Formulare Oracle

Mehr

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html

Mehr

WebService in Java SE und EE

WebService in Java SE und EE Schlüsselworte Java, JAX-WS, JAX-RS, JAXB, XML. Einleitung WebService in Java SE und EE Wolfgang Nast MT AG Ratingen Es werden die Mölichkeiten von WebServices in Java SE und EE, mit SOAP und REST gezeigt.

Mehr

Workshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ

Workshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ IBBB 2010 Workshop 6 Einführung in die objektorientierte Programmierung Dozenten: J. Penon, J. Frank, A. Schindler Teil: Java mit BlueJ Dozent: A. Schindler Einf. i. d. OOP - Java u. BlueJ / A. Schindler

Mehr

368 4 Algorithmen und Datenstrukturen

368 4 Algorithmen und Datenstrukturen Kap04.fm Seite 368 Dienstag, 7. September 2010 1:51 13 368 4 Algorithmen und Datenstrukturen Java-Klassen Die ist die Klasse Object, ein Pfeil von Klasse A nach Klasse B bedeutet Bextends A, d.h. B ist

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

How-to: Webserver NAT. Securepoint Security System Version 2007nx

How-to: Webserver NAT. Securepoint Security System Version 2007nx Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver

Mehr

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen Alexander Schunk Henry Trobisch Inhalt 1. Vergleich der Unit-Tests... 2 2. Vergleich der Codeabdeckungs-Tests... 2 3. Vergleich

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

Mehr

Objektorientierte Programmierung OOP

Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte

Mehr

FIS: Projektdaten auf den Internetseiten ausgeben

FIS: Projektdaten auf den Internetseiten ausgeben Rechenzentrum FIS: Projektdaten auf den Internetseiten ausgeben Ist ein Forschungsprojekt im Forschungsinformationssystem (FIS) erfasst und für die Veröffentlichung freigegeben, können Sie einige Daten

Mehr

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: 5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

Algorithmik II. a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge 20, 28, 35, 31, 9, 4, 13, 17, 37, 25 ein.

Algorithmik II. a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge 20, 28, 35, 31, 9, 4, 13, 17, 37, 25 ein. Aufgabe 10 Binäre Bäume a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge, 28, 35, 31, 9, 4,, 17, 37, 25 ein. 1. Einfügen von : 3. Einfugen von 35: 2. Einfügen von 28: 28 28 10. Einfügen

Mehr

Dokumentieren mit Eclipse und Doxygen

Dokumentieren mit Eclipse und Doxygen Dokumentieren mit Eclipse und Doxygen Boris Budweg, 28.11.2009 Version 0.2 Abstract: Kurze Anleitung für die Benutzung von Doxygen und Eclox in Eclipse. Doxygen-Kommentare / Schlüsselwörter...2 Beispiel...2

Mehr

Grafikausgabe mit dem Abstract- Windowing-Toolkit. Eine Einführung

Grafikausgabe mit dem Abstract- Windowing-Toolkit. Eine Einführung Grafikausgabe mit dem Abstract- Windowing-Toolkit Eine Einführung Inhalt Einführung Grundlegende Eigenschaften des Abstract-Windowing- Toolkit (AWT) Grundlagen Grafikausgabe Linien zeichnen Rechtecke zeichnen

Mehr

Step by Step Softwareverteilung unter Novell. von Christian Bartl

Step by Step Softwareverteilung unter Novell. von Christian Bartl Step by Step Softwareverteilung unter Novell von Softwareverteilung unter Novell 1) Starten von einfachen *.EXE-Dateien: Starten sie ConsoleOne Erstellen sie eine eigene Organisationseinheit für ihre Anwendungen

Mehr

Adobe Flash CS4»3D-Tool«

Adobe Flash CS4»3D-Tool« Flash Tutorial Philipp Nunnemann Adobe Flash CS4»3D-Tool«Im folgenden Tutorial könnt Ihr das»3d-tool«in Adobe Flash CS4 kennenlernen. Das Tool erlaubt euch, Objekte im dreidimensionalen Raum zu bewegen.

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

Mehr

Applications Applets (eingeschränkte Rechte)

Applications Applets (eingeschränkte Rechte) 1 Arten von Java-Programmen Man unterscheidet 2 verschiedene Arten von Java-Programmen: Applications Applets (eingeschränkte Rechte) Erstere sind eigenständige Programme. Letztere sind "kleine" Programme,

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

LEHRSTUHL FÜR DATENBANKEN

LEHRSTUHL FÜR DATENBANKEN LEHRSTUHL FÜR DATENBANKEN Informatik II für Verkehrsingenieure Java & Eclipse Installationsguide Prof. Dr.-Ing. Wolfgang Lehner > Was ist Eclipse? Eine sogenannte Integrierte Entwicklungsumgebung (engl.

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

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

Java3D - Teil 6. Michael Haller

Java3D - Teil 6. Michael Haller Java3D - eil 6 Michael Haller Inhalt der Vorlesung Interaktion 2: astaturgesteuerte Navigation Mausinteraktion Mausgesteuerte Navigation Animation Picking 2 Wir erinnern uns... public void initialize(){

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente. Dr. Beatrice Amrhein

Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente. Dr. Beatrice Amrhein Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente Dr. Beatrice Amrhein Überblick Die Architektur WPF Projekt erstellen Steuerelemente einfügen Eigenschaften von Steuerelementen ändern Nach

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

Java basierte Browser Plug-ins. Martin Kreis 3D-Graphik im Web WS 02/03. 27.01.2003 Java basierte Browser Plug-ins 1. Übersicht

Java basierte Browser Plug-ins. Martin Kreis 3D-Graphik im Web WS 02/03. 27.01.2003 Java basierte Browser Plug-ins 1. Übersicht Java basierte Browser Plug-ins Martin Kreis 3D-Graphik im Web WS 02/03 27.01.2003 Java basierte Browser Plug-ins 1 Übersicht Plug-ins 2D/3D Präsentationen und Animationen im Web Shout3D 3DAnywhere Anfy/Anfy3D

Mehr

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2 EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0 EDV Kurs 13/2 Inhaltsverzeichnis 1 Objekte... 1 2 Klassen... 3 2.1 Beziehungen zwischen Klassen... 4 2.1.1 Vererbung... 4 2.1.2

Mehr

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009 Testen von Software Systemen Übung 02 SS 2009 Version: 1.0 09.06.2009 Komponententest Kunde: Dr. Reinhold Plösch Dr. Johannes Sametinger Kundenreferenz: 259.019 Team 19 Mitarbeiter: Christian Märzinger

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

WORKFLOW DESIGNDOKUMENT

WORKFLOW DESIGNDOKUMENT Architectural Design WORKFLOW DESIGNDOKUMENT Softwareentwicklung Praktikum, Übungsbeispiel 2 Gruppe 86 Andreas Hechenblaickner [0430217] Daniela Kejzar [0310129] Andreas Maller [0431289] Gruppe 86 Seite

Mehr

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) 3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere

Mehr

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen Eigene Symbolleisten in Word erstellen Diese Anleitung beschreibt, wie man in Word eigene Symbolleisten erstellt und mit Schaltflächen füllt. Im zweiten Teil wird erklärt, wie man mit dem Makrorekorder

Mehr

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

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

Mehr

Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller

Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller Proseminar: Website-Managment-System NetObjects Fusion von Christoph Feller Netobjects Fusion - Übersicht Übersicht Einleitung Die Komponenten Übersicht über die Komponenten Beschreibung der einzelnen

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr