Java 2D场景图形库用于GUI

5
我正在寻找一个用于构建GUI应用程序的2D场景图库。它应该快速且使用Java2D,与Swing兼容(可以嵌入Swing应用程序并显示Swing组件)。支持动画是一个加分项。
  • 您有使用过其中一些库的经验吗?
  • 是否有我错过的任何库?
  • 我必须补充说,我并不完全反对Scala库。

Project Scene Graph

  • 看起来相当快
  • 仅限GPL(没有LGPL)
  • 支持动画
  • 2年前就被放弃了
  • 作为JavaFX的前身,它是Sun产品

G

  • 不知道它是否快速
  • LGPL
  • 没有动画
  • 最后版本于2009年12月

Piccolo2D

  • 用于“可缩放用户界面”
  • 看起来像一个学术项目
  • Google代码项目,活动性很高
  • BSD许可证
  • 不知道它是否快速
  • 不知道它是否支持动画

Pulpcore

  • 是一个游戏库
  • 针对小程序部署(将其用作应用程序是hacky的)
  • 非常快
  • 支持动画
  • 2-3年没有开发
  • 可能根本不支持Swing

jTem

  • 是一个更大项目的一部分(乍一看)
  • FreeBSD许可证
  • 不支持动画
  • 看起来非常简单

你正在开发什么类型的应用程序?对于你来说使用Java2d真的很重要吗?我问这个问题是因为最近我也有和你一样的需求(快速的2D场景库和可嵌入UI组件),但最终我选择了OpenGL和FengGUI(一个基于OpenGL的工具包)。 - barjak
好吧,不是我不能使用3D。我只是想看看仅使用Java2D能走多远。本地库是我对3D最大的担忧。 - ziggystar
我开始在项目场景图中遇到渲染错误。 - ziggystar
2个回答

2
Amino是由Joshua Marinacci创建的另一个框架。它非常新颖,具有一些有趣的特性,例如CSS换肤、2D或3D后端等。我对它使用事件总线而不是监听器也很感兴趣,因为这与我目前正在开发的Scala+Actor有很大的共同点。
话虽如此,我还没有尝试过它,所以我不知道它有多好。
链接:http://leonardosketch.org/amino

新的Amino主页在这里:https://github.com/joshmarinacci/aminojava - Emmanuel Bourg

2

Piccolo2D是一��写得很好的软件,虽然有些局限性但它能够达到其承诺的功能——可缩放图表,并且速度快。它可以用于基本动画,例如移动、调整大小、颜色渐变等,但也可以进行更多操作,因为它允许"常规绘画"。它对事件的支持非常广泛,以便进行自定义(这里的"UI"方面真正闪耀)。

如果真的认为这是一个问题,最好尝试使用一些“模拟”场景来测试性能/功能。如果需要,Piccolo足够灵活,可以进行手动管理——在不同的缩放下显示更少和/或聚合对象。

祝编码愉快!


我已经运行了这些示例。许多看起来有缺陷,而且与项目场景图中的示例相比,它们看起来也不那么好。 - ziggystar
Piccolo2D并不是非常花哨,需要一些时间来适应它,但是对我来说,API和实现似乎非常稳定且易于扩展。 - Christian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接