Java 2D scene graph library for GUI

我怕爱的太早我们不能终老 提交于 2019-12-04 08:44:06

问题


I'm looking for a 2D scene graph library for building GUI applications. It should be fast, using Java2D and be compatible with Swing (embeddable in a Swing app and also display Swing components). Support for animations is a plus.

  • Do you have any experience with some of the libraries?
  • Are there any libraries that I have missed?
  • I have to add that I'm not totally offended by a Scala library.

Project Scene Graph

  • seems reasonably fast
  • only GPL (no LGPL)
  • supports animations
  • abandoned 2 years ago
  • as former part of JavaFX it's a Sun product

G

  • dunno whether it's fast
  • LGPL
  • no animations
  • last version Dec 09

Piccolo2D

  • for "zoomable user interfaces"
  • looks like an academic project
  • google code project with high activity
  • BSD licence
  • dunno if it's fast
  • dunno if it does animations

Pulpcore

  • is a game library
  • is targeted at applet deployment (using it as application is hacky)
  • very fast
  • supports animations
  • no development for 2-3 years
  • probably no Swing support at all

jTem

  • part of a bigger project (at first glance)
  • freeBSD license
  • no animation support
  • looks very minimal

回答1:


Amino is another one created by Joshua Marinacci. It's very new, but has some interesting features such as CSS skinning, 2D or 3D backends. I am also very much intrigued about its use of an event bus rather than listeners, as that is quite in line with the Scala+Actor stuff I am working on at the moment.

That said, I haven't played with it (yet), so I don't know how good it is.

http://leonardosketch.org/amino




回答2:


Piccolo2D, "academic work" or not, is well written. It's somewhat limited but does what it promises (a zoom-able graph) and does it fast. It can be used for at least basic animations such as moving, resizing, color transitions, etc but more can be done as it allows "normal drawing" as well. Has pretty extensive support for events for customization (here the "UI aspect" really shines).

It might be good just to try a few with "mocked" up scene to test for performance/features if this is really believed to be an issue. Piccolo is flexible enough to allow manual management if needed -- e.g. at different zooms display less and/or aggregate objects.

Happy coding.



来源:https://stackoverflow.com/questions/4752131/java-2d-scene-graph-library-for-gui

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!