2010-03-05 12 views
10

Sto cercando una libreria grafica di fascia alta per Java Standard Edition. Conosco alcune librerie di basso livello: AWT/Swing, JOGL, SDL. C'è/c'è un'alternativa?Libreria grafica 2D high-end Java (SE)

miei requisiti sono (almeno):

  • Anti-alias
  • supporto a tutto schermo
  • canale
  • Alpha
  • I metodi di fusione e Z approfondita
  • Effetti Rasterized: (movimento) blur, glow, gloom, ecc.

E, a scelta:

  • Accelerazione hardware
  • grafica vettoriale (scala/Ruota/traducono in precisione in virgola mobile)
  • Bene documentati, facile per iniziare.

Capisco se non ci sono biblioteche/quadri corrispondenti tutti requisiti, in caso affermativo, si può commentare come bene è estensibile?

Edit:

Ci sono altre alternative oltre la lavorazione? Elaborazione utilizzabile (e facile?) Come libreria?

risposta

2

Non proprio una libreria grafica, ma piuttosto di un avanzato applet e grafica libreria: PulpCore

Siate sicuri di prendere una versione abbastanza recente (forse anche prendere la fonte via mercurial e costruisci tu stesso) perché gli effetti filtro che hai menzionato (sfocatura ecc.) non sono disponibili nelle versioni precedenti. So che potrebbe non essere esattamente quello che stai cercando; non è un'alternativa di elaborazione, ma potrebbe essere la scelta migliore, a seconda di cosa hai intenzione di fare.

+0

Eccellente! Grazie mille, esattamente quello di cui ho bisogno! – Pindatjuh

+1

FYI PulpCore non sembra esistere più ... – chriswynnyk

+1

@chriswynnyk troppo male. Da https://code.google.com/p/pulpcore/: PulpCore non viene più gestito, utilizzare invece PlayN o libgdx. – Tedil

3

Forse Processing (homepage) può essere un buon compromesso.

  • ha 4 tipi di supporto, tra OpenGL
  • ha AA
  • è 2D o 3D
  • supporta accelerazione hw
  • supporta trasformazioni
  • sua sintassi è abbastanza facile da imparare
  • è facilmente integrabile
  • tutto il necessario per imparare è in this pagina
+0

L'elaborazione può essere utilizzata come libreria? – Pindatjuh

4

Tutti gli effetti richiesti possono essere eseguiti con Java 2D in modo abbastanza semplice e Java2D è in qualche misura accelerato dall'hardware. Il libro Filthy Rich Clients mostra come implementare tutti questi effetti e molti altri. Painters nel SwingX ha anche implementato molti di questi effetti.

Un'altra possibilità è JavaFx. Ha un sacco di effetti integrati. Un anno e mezzo fa, quando l'ho provato, era ancora un po 'lento, ma almeno una versione è stata rilasciata da allora. Potrebbe essere più performante ora. È basato su Java2D, quindi dovrebbe essere in grado di sfruttare l'accelerazione hardware in Java2D.

Per quanto riguarda il supporto a schermo intero here's more information.