基于Android平台太阳角度计算软件的设计与实现.doc_第1页
基于Android平台太阳角度计算软件的设计与实现.doc_第2页
基于Android平台太阳角度计算软件的设计与实现.doc_第3页
基于Android平台太阳角度计算软件的设计与实现.doc_第4页
基于Android平台太阳角度计算软件的设计与实现.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于Android平台太阳角度计算软件的设计与实现 朱瑜红,邓志 (宁夏大学物理电气信息学院,宁夏银川750021) 摘要:Android是基于Linux的开源操作系统,它开放性好,功能扩展性强,并可无缝集成Google应用.因此,Android的应用前景非常广阔.本文在Android平台上,利用GoogleAndroidSDK和JAVAEclipse开发工具,设计了一个太阳角度的计算软件.该软件使用了任意时刻太阳仰角与偏角的计算公式,用XML语言设计相应的框架,用JAVA语言编写功能模块程序,从而实现对当前时刻太阳仰角与偏角的计算. 关键词:android;javaeclipse;太阳角度 :TP211:A:1673-260X(xx)01-0024-03 Android是一个专为移动终端打造的软件平台,其主要包括操作系统、中间件、用户界面及应用程序.Android系统拥有移动终端能便捷使用所需的全部软件,并且其开放性还保证了该平台不会阻碍任何移动产业的创新.正是因为Android系统这种开源、完整、的特性,自它诞生以来迅速得到了大量用户以及许多厂商的青睐.在Android系统下手机的各种应用异常丰富,例如拍照、导航等,但在这些应用中都没有关于太阳角度计算的功能.在本文中基于Android系统平台,利用GoogleAndroidSDK和JAVAEclipse等开发工具,设计了一个有关太阳角度计算的软件.该软件可作为一个组件方便的添加到应用中,给予这些应用更多的功能和实用性.例如结合导航功能可以迅速判断此时此地的太阳角度,进而判断方向,即使在阴雨天也不用担心.或者可以将这种功能集成到天气预报软件中,可为软件增添趣味性. 1太阳角度计算 1.1太阳直射点纬度的计算 1.2地球上某地任意时刻太阳仰角和偏角的计算 建立地心坐标系:Z轴方向取从地心指向地轴北极的方向,X轴取赤道面与太阳直射经度线平面的交线方向,Y轴取赤道上位于X轴东侧90角的方向.建立本地坐标系:z轴取垂直地面指向正天顶的方向,x轴取正南方向,y轴取正东方向.假设某地在地球上的纬度为(北纬取正值,南纬取负值),该地某时刻对应的时间角为?渍(?渍为当地经度与太阳直射经度之间的差值,?渍每小时转过的角度为15,?渍的大小可以利用该时刻与当地正午时刻的时间差t表示,公式为:?渍=15*t,t的单位为小时,上午t取负值,下午t取正值),则地心坐标系与本地坐标系之间的转化关系为: 设当天的太阳的直射点纬度为,则由两个坐标系的转化关系可得到太阳直射点位置矢量在本地坐标系中的表达式为: 假设太阳在本地坐标系中的高度角为H(H为太阳与地平线的夹角),方位角为P(P为太阳在地面上的竖直投影点与本地坐标系原点连线和本地坐标系正南方向之间的夹角,该角在正南方向偏东则取正值,偏西则取负值),则太阳的直射点位置矢量在本地坐标系中的表达式又为: 2太阳角度计算软件的设计 2.1软件代码的组织架构 本文设计的太阳角度计算软件主要包括以下几部分: (1)程序界面,其布局文件为reslayout文件夹中名为main.xml的文件.在此文件中同时设置了相对应的图形界面,其布局方式选用相对布局,使用xml语言编写; (2)前次使用所记录的信息,保存在res/raw中,可以实现快速访问; (3)太阳角度计算相关程序city.java使用java语言编写,实现了通过经纬度计算得出当前时刻的太阳偏角与仰角; (4)软件主程序命名为sunangle.java,使用java语言编写.在此程序中完成对控件的监听,同时进行相应的操作以及对用户操作的响应. 2.2界面布局文件main.xml 此软件的使用者是广大用户,为此设计出的程序必须具有良好的人机交互界面,这样才能便于用户使用,从而增加用户的操作兴趣,提高软件的普及率.因此,主界面的实现从以下几个方面设计完成. 2.2.1城市选择菜单的创建与布局 android:id=+layout/myspinner android:layout_width=wrap_content android:layout_height=wrap_content/ /spinner是设计下拉式菜单,这里规定了高度和宽度,并设置字体大小为18dp. 2.2.2经纬度输入文本框的布局 - - 由于/TextView是不可文本框,因此需要调用setText()函数来设置其中的内容,并且在相对布局方式中要将其位置设置在“当地纬度”、“当地经度”的右边,同时将其文本框中的文字大小设置为18dp.其默认纬度是38.16,默认经度是106.1,为银川所在经纬度. 2.2.3太阳仰角与偏角显示布局 - - /将经过计算得到的太阳的仰角与偏角输出显示,字体大小为18dp,颜色为蓝色. 2.2.4当前时间显示布局 - /显示当前时间,字体大小为22dp,颜色为绿色. 2.2.5Button按钮控件的布局 - /最后通过两个Button按钮来实现操作,一个Button用来提示帮助信息,另一个Button退出系统,其位置位于屏幕的最下端. 2.3太阳角度计算程序 太阳角度计算主要通过city.java程序实现,将输入的经纬度经过判断与计算,得到太阳仰角与偏角的数值,将此数值返回主程序sunangle.java. 该程序流程图如图1所示,在得到相关数据后首先会对经纬度的数值进行判断,如果不在范围内,则会输出太阳仰角为0,偏角为0.如果通过判定,则会计算出相应的太阳仰角与偏角. 2.4主程序sunangle.java 主程序流程图如图2所示.在程序开始后会有程序监听,其间隔是1000毫秒,即一秒钟.主要目的是获取经度和纬度的具体数值,然后会将其实例化为sunangle.java. 经度和纬度数值的获取方式有三种,一是读取经度和纬度输入框中的具体数值,二是读取前次使用所保存的数据,最后一种方法是判断下拉菜单所选择的城市,然后读取相应城市的经度和纬度. 2.5界面实现效果 图3至图6是程序运行的效果图. 3结束语 经过应用演示和测试,本文设计开发的太阳角度计算软件能够在所有Android操作系统的手机和移动终端上安装并稳定运行,可以为不同需求的用户提供准确、便捷的服务.因此本设计具有较强的实用性,对其他类似开发工作也具有一定的参考借鉴意义. 参考文献: 1刘乾发.基于Java平台的手机软件架构的研究与应用D.浙江:浙江大学软件学院,xx. 2姚显昊,刘卫国.Android的架构和应用开发研究J.计算机系统应用,xx(11):78-81. 3FrankAbleson,Android开发简介.developerWorks.xx(6):130-131. 4杨丰盛.Android应用开发揭秘M.北京:机械工业出版社,xx.28. 5高焕堂.GoogleAndroid应用框架原理与程式设计M.(xx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论