下一代Java Applet插件技术 - 编程入门网
page --> width="100" height="100"></applet-
desc></jnlp>
下一代Java Applet插件技术(6)时间:2011-08-18 blogjava Jiangshachina注意几点: 在本例中,worldwind.jar作为主类使用。理想地,从NASA的网站引用它,将其作为一个JNLP扩展,这 就使得许多不同的都嵌入了World Wind的应用程序或Applet共享相同的jar文件。详情请见下面的内容。 为了它的硬件加速的3D图形,World Wind Java使用了针对OpenGL API的Java绑定,JOGL。注意,JOGL JNLP扩展仅使用一行代码与应用程序进行结合。也要注意,在Windows平台上,由于OpenGL API与 DirectDraw/Direct3D API(该API用于Windows平台默认的Java 2D实现)之间在驱动层面的冲突,需要指定 系统参数-Dsun.java2d.noddraw=true。Windows平台上所有使用JOGL的应用程序与Applet程序都需要该系 统参数。 Web页面中的HTML链接调用JavaScript函数,该函数会与Applet进行交互并将其导向合适的山峰。下面 是这些链接中的一个: <a href="javascript:gotoLocation(MOUNT_RAINIER);">Mount Rainier</a> (southeast of Tacoma, Washington) 当点击该链接后,将会调用JavaScript函数gotoLocation。该函数定义在同一个Web页面中: function gotoLocation(locationString) { var params = locationString.split ('';''); if(params.length == 3) // Lat/lon getWWJApplet().gotoLatLon (parseFloat(params[1]), parseFloat(params[2])); } Web页面HTML中的山峰位置将被解码为JavaScript字符串。将从这些字符串中解析出纬度,经度及其它 视觉信息,并将它们传递给Applet。 gotoLatLon方法是在WWJApplet类中定义的;上面的方法调用将起动 一个JavaScript-to-Java调用,把参数从JavaScript引擎传给Java。World Wind Applet接收该通知,并 将视点以动画的方式切换到适当的地方。注意,gotoLatLon方法会迅速地返回,以便浏览器不必等待它的 完成;该动画会在一个单独的Java线程中运行。 Figure 3. World Wind Applet with Mount St. Helen''s Clicked 如上所述,将World Wind Java集成到你的应用程序或Applet程序中的最好方法是将其作为一个JNLP扩 展。这允许很多来自网络的集成了World Wind Java的应用程序或Applet程序能够共享World Wind代码资 源。为了引用World Wind JNLP扩展,你需将下面的语句行加入到你的应用程序或Applet程序的JNLP文件 中的<resources>部分: <extension name="worldwind" href="http://worldwind.arc.nasa.gov/java/0.4.1/webstart/worldwind.jnlp"/><extensio n name="jogl" href="http://download.java.net/media/jogl/builds/archive/jsr-231- webstart-current/jogl.jnlp"/> 注意,World Wind扩展JNLP是区分版本的,所以你需参考World Wind文档或访问论坛去找到你的JNLP 会引用到的扩展的最新版本。World Wind Central是一个关于World Wind最新信息的有用资源。 将World Wind作为一个扩展使用就意味着你不能将WWJApplet直接作为你的main-class使用。由于JNLP 文件格式的语义,主jar (main="true")必须定义在主JNLP文件中。但很容易就能适应该限制,你可简单 地创建你自己的WWJApplet子类(称之为MyWWJApplet),而它并不做任何事情: class MyWWJApplet extends WWJApplet {}将worldwind.jar置于classpath中,并编译上述类,然后 将该类放入它自己的jar文件中。引入这个jar作为你的主jar,MyWWJApplet就成为了你的main-class,然 后将其作为JNLP扩展引入到World Wind中。 结论 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |