- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java版WorldWind源代码解析之1
Java版WorldWind源代码学习笔记
该文档编写者系数学系毕业且未满一年工作经验的职场新人,java知识有限,对于新事物Worldwind刚接触不久,总结一下。不足之处,希望得到各位大师的指点。
刚开始,我看了一些WorldWind的相关简介,感觉从整体上给了WorldWind非常好的框架感,所以我将它拷贝了过来。之后,我们的研究就从大的框架转到细节去。毕竟,“研究”不只是看大的框架,还要将细节进行分析。我作为一个新手,对此也非常陌生,那么,就让我们一起来学习吧。不足之处请见谅。
首先,我们贴出官网上给出的WorldWind的源代码结构如下
gov.nasa.worldwind 顶级包
gov.nasa.worldwind.awt 用于awt的组件
gov.nasa.worldwind.formats.gpx GPS轨道格式
gov.nasa.worldwind.formats.nmea GPS轨道格式
gov.nasa.worldwind.geom 几何与数学类
gov.nasa.worldwind.globes 地球、火星等星球的实现
gov.nasa.worldwind.layers 图层
gov.nasa.worldwind.layers.Earth 专用于地球的图层
WorldWindow和View接口以下是WorldWindow接口:
set/getModel(Model)
set/getView(View)
getSceneController(...)
pick(java.awt.Point)
set/getInputHandler(...)
以下监听器:
PositionListener
SelectListener
RenderingListener
repaint()
View 接口:
Fields
Position, direction, field of view, altitude, heading, pitch, roll,
Actions
apply()
goto(lat/lon/elev/altitude)
project(Point 3Dpoint)
Compute
horizon()
positionFromScreenPoint(...)
rayFromScreenPoint(...)
在Applet中使用WorldWind要使用Applet,需要Java API for OpenGL(JOGL) Applet Launcher。新版本的JOGL Applet Launcher具备在applet中创建和部署基于OpenGL的3D图形的功能,而不需要客户端安装任何软件。它可以在任何支持JOGL的操作系统和CPU上运行,只需要浏览器上安装JRE1.4.2以上版本。以下是典型的在applet中部署WorldWind组件的代码:
applet?code=com.sun.opengl.util.JOGLAppletLauncher?????width=400?????height=260?????codebase=/applet?????archive=jogl.jar,gluegen-rt.jar,jogl-demos.jar??param?name=subapplet.classname?????VALUE=worldwinddemo.Applet1Up??param?name=subapplet.displayname??????VALUE=WorldWind?Applet?Demo??param?name=progressbar?value=true??param?name=cache_archive??????VALUE=jogl.jar,gluegen-rt.jar,Applet1Up.jar??param?name=cache_archive_ex??VALUE=jogl.jar;preload,gluegen-rt.jar;??preload,Applet1Up;preload/applet
其中Applet1Up.jar文件中包含WorldWindApplet类,无需声明,而是作为参数引入;而应当声明的是JOGL Applet Launcher,它的相关类jogl.jar和gluegen-rt.jar也需要列出。架构和APINASA拥有的海量数据可以以T来计算,这些数据来自卫星和太空望远镜。NASA World Wind的可视化技术可以用最便捷和低冗余的方式传送地理空间数据。下图为ww架构图:ww包含了交互式的3D图形组件,可用于Swing,AWT和SWT或其他UI组件。World Wind API主要以接口
文档评论(0)