Benutzer-Werkzeuge

Webseiten-Werkzeuge


jugm:p2d

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
jugm:p2d [2010/01/10 03:05] mrojugm:p2d [2016/03/15 11:56] (aktuell) – alte Version wieder hergestellt (2016/03/15 11:53) mro
Zeile 2: Zeile 2:
  
 = Piccolo2D @ JUGM = Piccolo2D @ JUGM
-ein Referat von Marcus Rohrmoser +ein Referat von Marcus Rohrmoser 
-dem Kopf hinter [[http://aladin-software.mobi|aladin-software.mobi]].+bei der [[http://www.jugm.de/mitglieder.htm|Java User Group München]] am 27April 2009
  
 [[http://www.jugm.de/|{{ http://www.jugm.de/pics/jugm-logo.gif}}]] [[http://www.jugm.de/|{{ http://www.jugm.de/pics/jugm-logo.gif}}]]
-[[http://piccolo2d.org|{{http://piccolo2d.org/images/Piccolo2D-Logo.png }}]] +[[http://piccolo2d.org|{{http://piccolo2d.org/images/Piccolo2D-Logo.svg?400 }}]] 
  
 ----- -----
Zeile 17: Zeile 17:
  
 == Was ist Piccolo2D? == Was ist Piccolo2D?
 +
 {{ http://github.com/mro/jugm-p2d/raw/master/demos/hampelmann/src/main/resources/sprattelgube.png?300}} {{ http://github.com/mro/jugm-p2d/raw/master/demos/hampelmann/src/main/resources/sprattelgube.png?300}}
  * 2D Scenegraph API für Java und .Net,  * 2D Scenegraph API für Java und .Net,
Zeile 26: Zeile 27:
  
 ---- ----
 +
  * benutzt intensiv [[http://java.sun.com/docs/books/tutorial/2d/index.html|java2d]] (ohne Compositing) und v.a. [[http://java.sun.com/j2se/1.4.2/docs/api/java/awt/geom/AffineTransform.html|AffineTransform]],  * benutzt intensiv [[http://java.sun.com/docs/books/tutorial/2d/index.html|java2d]] (ohne Compositing) und v.a. [[http://java.sun.com/j2se/1.4.2/docs/api/java/awt/geom/AffineTransform.html|AffineTransform]],
  * ist [[http://piccolo2d.org/learn/about.html|recht alt]] und wurde in 2 1/2 Sprachen (Java/C#/C# Mobile) implementiert => konzeptionell sehr ausgereift,  * ist [[http://piccolo2d.org/learn/about.html|recht alt]] und wurde in 2 1/2 Sprachen (Java/C#/C# Mobile) implementiert => konzeptionell sehr ausgereift,
 +
 == Exkurs: Scenegraph == Exkurs: Scenegraph
 +
 {{ :jugm:hampelmann.sg.svg?400}} {{ :jugm:hampelmann.sg.svg?400}}
  * Datenmodell von Zeichnungsbausteinen ("universe")  * Datenmodell von Zeichnungsbausteinen ("universe")
Zeile 38: Zeile 42:
  
 ---- ----
 +
  * in 3D üblich, 2D eher selten.  * in 3D üblich, 2D eher selten.
  
 == Wobei hilft mir Piccolo2D? == Wobei hilft mir Piccolo2D?
 +
  * zur Laufzeit synthetisierte (komplexe) 2D Graphiken,  * zur Laufzeit synthetisierte (komplexe) 2D Graphiken,
  * veränderliche Bildinhalte,  * veränderliche Bildinhalte,
  * veränderliche Bildausschnitte und Effekte.  * veränderliche Bildausschnitte und Effekte.
  * Bildelemente finden (z.B. mit der Maus klicken) aka. "Object Picking"  * Bildelemente finden (z.B. mit der Maus klicken) aka. "Object Picking"
- 
- 
  
 == Wie benutze ich Piccolo2D? == Wie benutze ich Piccolo2D?
 +
  * jar einbinden (ideal per Maven Dependency)  * jar einbinden (ideal per Maven Dependency)
  * PCanvas in eine Komponente (JFrame) einfügen  * PCanvas in eine Komponente (JFrame) einfügen
Zeile 55: Zeile 60:
  
 == Bsp: Hampelmann Treiber == Bsp: Hampelmann Treiber
 +
 <code java> <code java>
 public static void main(final String[] args) { public static void main(final String[] args) {
Zeile 73: Zeile 79:
 } }
 </code> </code>
 +
 ----- -----
 +
  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/PCanvas.html|PCanvas]]  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/PCanvas.html|PCanvas]]
  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/PCamera.html|PCamera]]  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/PCamera.html|PCamera]]
  
 == Bsp: Hampelmann Scenegraph == Bsp: Hampelmann Scenegraph
 +
 <code java> <code java>
 private static final PNode createScene(final Model m) { private static final PNode createScene(final Model m) {
Zeile 95: Zeile 104:
 } }
 </code> </code>
- 
  
 == Bsp: Hampelmann Controller == Bsp: Hampelmann Controller
 +
 <code java> <code java>
 public void mousePressed(final PInputEvent arg0) { public void mousePressed(final PInputEvent arg0) {
Zeile 113: Zeile 122:
  
 ---- ----
 +
  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/event/PInputEventListener.html|PInputEventListener]]  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/event/PInputEventListener.html|PInputEventListener]]
  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/event/PInputEvent.html|PInputEvent]]  * [[http://piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/edu/umd/cs/piccolo/event/PInputEvent.html|PInputEvent]]
  
 == Exkurs: Design Patterns & MVC == Exkurs: Design Patterns & MVC
 +
  * [[http://piccolo2d.org/learn/patterns.html|ZUI Patterns]] - vor allem  * [[http://piccolo2d.org/learn/patterns.html|ZUI Patterns]] - vor allem
   * [[http://piccolo2d.org/learn/patterns.html#Piccolo2D_Framework_Design|Zentrale Klassen]]   * [[http://piccolo2d.org/learn/patterns.html#Piccolo2D_Framework_Design|Zentrale Klassen]]
Zeile 125: Zeile 136:
   * Controller = Event Handler   * Controller = Event Handler
   * Model = Custom Classes   * Model = Custom Classes
 +
 == Woher kommt Piccolo2D? == Woher kommt Piccolo2D?
  
Zeile 134: Zeile 146:
  
 == Wer benutzt Piccolo2D? == Wer benutzt Piccolo2D?
 +
 unter anderem: unter anderem:
  * http://phet.colorado%2eedu/  * http://phet.colorado%2eedu/
Zeile 140: Zeile 153:
 Eine umfassendere Liste: Eine umfassendere Liste:
  * http://piccolo2d.org/applications/  * http://piccolo2d.org/applications/
 +
  
 == Vielen Dank == Vielen Dank
  
-für Ihre Aufmerksamkeit.+{{ http://www.jugm.de/pics/jugm-logo.gif}} 
 +für Eure Aufmerksamkeit.
  
-Quellen und Handout zum Nachlesen gibt's hier:+Feedback willkommmen an [[work@mro.name?subject=JUGM VortragPiccolo2D|Marcus Rohrmoser]]
  
-http://alsw.mobi/go/jugm+Die Folien zum Nachlesen gibt's hier: 
 + 
 +{{ :jugm:piccolo2d.qr.png?200}} 
 +http://mro.name/go/jugm-p2d
  
 === Lizenz === Lizenz
 +
 [[http://creativecommons.org/licenses/by-sa/3.0/de/|Creative Commons by-sa]] [[http://creativecommons.org/licenses/by-sa/3.0/de/|Creative Commons by-sa]]
 {{http://upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Cc-by_new.svg/20px-Cc-by_new.svg.png}} {{http://upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Cc-by_new.svg/20px-Cc-by_new.svg.png}}
Zeile 155: Zeile 174:
  
 ---- ----
 +
  * Präsentation: http://wiki.mro.name/_export/s5/jugm/p2d  * Präsentation: http://wiki.mro.name/_export/s5/jugm/p2d
  * Quellen zum Referat: http://github.com/mro/jugm-p2d/  * Quellen zum Referat: http://github.com/mro/jugm-p2d/
Zeile 161: Zeile 181:
  * p2d %%JavaDocs%%: http://www.piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/  * p2d %%JavaDocs%%: http://www.piccolo2d.org/doc/piccolo2d.java/release-1.2.1/apidocs/
  * p2d Metriken: http://www.ohloh.net/p/piccolo2d  * p2d Metriken: http://www.ohloh.net/p/piccolo2d
 +
 +{{tag> Vortrag JUGM Java Piccolo2d Scenegraph}}
jugm/p2d.1263089135.txt.gz · Zuletzt geändert: 2010/01/10 03:05 von mro