Java GUI,3D图形库学习

来源:互联网 发布:h5个人简历模板源码 编辑:程序博客网 时间:2024/04/29 15:22

Java 的 GUI技术:

AWT:(Abstract Window Toolkit) 最基础的库,控件很少,直接用的也很少

Swing:相当于在awt上加了一层,多了许多layout,component,一般的GUI用它就行了,使用的很多

SWT:(Standard Widget Toolkit) 为eclipse打造的库,控件很多,尤其是一些和系统联系比较紧,需求高的一些控件,比如Browser

Swing 和 SWT的区别:Swing是自己画控件,使用L&F改变界面,而SWT是使用优先系统自带的控件,没有的再自画,界面和系统统一,效率较高

   对于不同的系统需要不同的eclipse swt包,也实现了跨平台,Swing和SWT可以通过SWT_AWT桥相互嵌入

   Swing 嵌入 SWT:http://zhanghan3366.blog.163.com/blog/static/6966305220110505351568/

   SWT 嵌入 Swing:http://irving-wei.iteye.com/blog/1094688

javaFX: 08年出的,原本想和flash,sliverlight拼一下ria(富网页)的,但后来感觉不行,现在做桌面还是挺不错的,支持css渲染,我现在也在学,最吸引人的地方是它可以和swing进行集成,互操作!http://www.2cto.com/kf/201209/158225.html,在java8里,javafx的3d功能也是异常强大!


AWT 是Abstract Window ToolKit (抽象窗口工具包)的缩写,这个工具包提供了一套与本地图形界面进行交互的接口。由于AWT 是依靠本地方法来实现其功能的,我们通常把AWT控件称为重量级控件。
Swing 是在AWT的基础上构建的一套新的图形界面系统,它提供了AWT 所能够提供的所有功能,并且用纯粹的Java代码对AWT 的功能进行了大幅度的扩充。由于在Swing 中没有使用本地方法来实现图形功能,我们通常把Swing控件称为轻量级控件。

java 的3d技术:

java3d(j3d): 最基本的3d库,一般用它就够了,开发很简单,效率比较底,需要j3d库,基于LWJGL构建

JOGL(Java Binding for OpenGL): 对OpenGl的封装,效率比较高,和LWJGL竞争,SUN比较推荐用它

   JOGL use in Swing/AWT/SWT 的方法:http://jogamp.org/wiki/index.php/Using_JOGL_in_AWT_SWT_and_Swing

LWJGL(Lightweight Java OpenGl): 对OpenGl的简单封装,对OpenGL的程序员非常友好,虽然是非官方的,但效率很高,用的很多

JME(Java Monkey Engine): java 的3d游戏引擎,效果非常不错,基于LWJGL,

更加详细的可以参考:http://www.soft6.com/v9/2009/jckf_0224/96241.html


最近研究gephi源码接触到 joamp

JogAmp is the home of high performance Java™ libraries for 3D Graphics, Multimedia and Processing.
JOGL, JOCL and JOAL provide cross platform Java™ language bindings to the OpenGL®, OpenCL™, OpenAL and OpenMAX APIs.

joamp是三个项目的合并分别是joal,jocl,jogl

对应的是openal,opencl,opengl

Open Audio Library(开放音频库),Open Computing Language(开放计算语言),Open Graphics Library(开放图形库)



0 0
原创粉丝点击