“移动应用开发”实验报告---天气预报

“移动应用开发”实验报告---天气预报
“移动应用开发”实验报告---天气预报

“移动应用开发”实验报告

1

数据代码即运行结果截图

一、整体架构、

本次实验我分配的任务是查看某地区天气的活动代码编写和添加权限与

注册的相关代码,具体的过程在下面:

1、活动(Activity)整体结构

2、设计界面(layout)整体结构

二、数据代码

本次作业(天气预报)的设计界面效果图如下:

2

接着需要编写遍历省市县的活动,即MainActivity。代码如下:

package com.example.chen.weatherforecast;

import android.app.ProgressDialog;

import android.content.Intent;

import android.content.SharedPreferences;

import android.preference.PreferenceManager;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.text.TextUtils;

import android.view.View;

import android.view.Window;

import android.widget.AdapterView;

import android.widget.ArrayAdapter;

import android.widget.ListView;

import android.widget.TextView;

import android.widget.Toast;

3

import java.util.ArrayList;

import java.util.List;

import DB.CoolWeatherDB;

import model.City;

import model.County;

import model.Province;

import unity.HttpCallbackLinster;

import unity.HttpUtil;

import util.Utility;

public class MainActivity extends AppCompatActivity {

public static final int LEVEL_PROVINCE = 0; //省级

public static final int LEVEL_CITY = 1; //市级

public static final int LEVEL_COUNTY = 2; //县级

private ProgressDialog progressDialog;

private ListView listView; //显示省市县的数据

private TextView title_text; //标题内容

private ArrayAdapter adapter; //listView 的适配器

private List datalist = new ArrayList();

private List provinceList; //省列表

private List cityList; //市列表

private List countyList; //县列表

private CoolWeatherDB coolWeatherDB;

private Province selectProvince; //选中的省

private City selectCity; //选中的市

private int currentLevel; //选中的县

private Boolean isFromWeatherActivity;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(https://www.360docs.net/doc/d415885091.html,yout.activity_main);

isFromWeatherActivity =

getIntent().getBooleanExtra("from_weather_activity",false);

SharedPreferences pref =

PreferenceManager.getDefaultSharedPreferences(MainActivity.this);

if(pref.getBoolean("city_cheeked",false)&& !isFromWeatherActivity ) { Intent intent = new Intent(this,LookWeather.class);

startActivity(intent);

finish();

4

} listView = (ListView)findViewById(R.id.list_view);

title_text = (TextView)findViewById(R.id.title_text);

adapter = new

ArrayAdapter(MainActivity.this,https://www.360docs.net/doc/d415885091.html,yout.simple_list_item_1, datalist);

listView.setAdapter(adapter);

coolWeatherDB = CoolWeatherDB.getInstance(this);

listView.setOnItemClickListener(new

AdapterView.OnItemClickListener() {

@Override

public void onItemClick(AdapterView parent, View view, int position, long id) {

if(currentLevel == LEVEL_PROVINCE) {

selectProvince = provinceList.get(position);

querCity(); //选中省,则查找该省的市

} else if(currentLevel == LEVEL_CITY) {

selectCity = cityList.get(position);

querCounty(); //选中市,则查找该市的县

} else if(currentLevel == LEVEL_COUNTY) //选中县,则查找该县所对应的

天气

{

String countyCode = countyList.get(position).getCountycode();

Intent intent = new Intent(MainActivity.this,LookWeather.class); intent.putExtra("county_code",countyCode);

startActivity(intent);

finish();

} } });

querProvince();

} //查找省,如果在数据库中没有找到,则在服务器上找

private void querProvince() {

provinceList = coolWeatherDB.loadProvince();

if(provinceList.size() > 0) {

datalist.clear();

for(Province province : provinceList) {

datalist.add(province.getProvinceName());

}

adapter.notifyDataSetChanged();

listView.setSelection(0);

title_text.setText("中国");

currentLevel = LEVEL_PROVINCE;

} else

{ //在服务器上查找

5

querfromServer(null, "province");

} } //查找市,如果在数据库中没有找到,则在服务器上找

private void querCity() {

cityList = coolWeatherDB.loadCity(selectProvince.getId());

if(cityList.size() > 0) {

datalist.clear();

for(City city : cityList) {

datalist.add(city.getCityName());

}

adapter.notifyDataSetChanged();

listView.setSelection(0);

title_text.setText(selectProvince.getProvinceName());

currentLevel = LEVEL_CITY;

} else

{ querfromServer(selectProvince.getProvinceCode(),"city");

} } //查找县,如果在数据库中没有找到,则在服务器上找

private void querCounty() {

countyList = coolWeatherDB.loadCounty(selectCity.getId());

if(countyList.size() > 0) {

datalist.clear();

for(County county : countyList) {

datalist.add(county.getCountyName());

} adapter.notifyDataSetChanged();

listView.setSelection(0);

title_text.setText(selectCity.getCityName());

currentLevel = LEVEL_COUNTY;

} else

{ querfromServer(selectCity.getCityCode(),"county");

} } //根据传入的代号和类型在服务器上查找数据

private void querfromServer(final String code,final String type)

{ String address;

if(!TextUtils.isEmpty(code)) { address =

"https://www.360docs.net/doc/d415885091.html,/data/list3/city" + code +".xml";

} else

{ address = "https://www.360docs.net/doc/d415885091.html,/data/list3/city.xml";

} showProgressDialog();

HttpUtil.sendRequstWithURLConnection(address, new

HttpCallbackLinster() {

@Override

public void onFinish(String response) { boolean result = false;

if ("province".equals(type)) { result =

Utility.handleProvince(coolWeatherDB, response);

6

} else if ("city".equals(type)) { result =

Utility.handleCity(coolWeatherDB, response, selectProvince.getId());

} else if ("county".equals(type)) { result =

Utility.handleCounty(coolWeatherDB, response, selectCity.getId());

} if (result) { runOnUiThread(new Runnable() { @Override

public void run() { closeProgressDialog();

if ("province".equals(type)) { querProvince();

} else if ("city".equals(type)) { querCity();

} else if ("county".equals(type)) { querCounty();

} } });

} } public void onError(Exception e) { runOnUiThread(new Runnable() { @Override

public void run() { closeProgressDialog();

Toast.makeText(MainActivity.this,"加载失败

",Toast.LENGTH_SHORT).show();

} });

} });

} private void showProgressDialog() { if(progressDialog == null)

{ progressDialog = new ProgressDialog(MainActivity.this);

progressDialog.setMessage("正在加载...");

progressDialog.setCanceledOnTouchOutside(false);

} progressDialog.show();

} private void closeProgressDialog() {

if(progressDialog != null) {

progressDialog.dismiss();

} } //捕获返回键,来判断此时应直接返回省,市列表还是返回到显示天气的页面public void onBackPressed() {

if(currentLevel == LEVEL_COUNTY) {

querCity();

}else if(currentLevel == LEVEL_CITY) {

querProvince();

}else { if (isFromWeatherActivity) {

Intent intent = new Intent(MainActivity.this, LookWeather.class); startActivity(intent);

} finish();

} } }

还要加上权限声明和注册Activity,即AndroidManifest.xml的代码:

7

package="com.example.chen.weatherforecast">

android:allowBackup="true"

android:icon="@mipmap/ic_launcher"

android:label="@string/app_name"

android:roundIcon="@mipmap/ic_launcher_round"

android:supportsRtl="true"

android:theme="@style/AppTheme">

2、获取省、市、县的天气数据

在Utility类中添加解析JSON数据与处理。(代码请见前面Utility类的代码)。

接着在Layout写LookWeatherActivity的布局。

android:orientation="vertical" android:layout_width="match_parent"

android:layout_height="match_parent">

android:layout_width="match_parent"

android:layout_height="50dp"

android:background="#0099ff">

android:id="@+id/switch_bt"

android:layout_width="40dp"

android:layout_height="40dp"

8

android:layout_marginStart="10dp"

android:layout_centerVertical="true"

/>

android:id="@+id/weather_title"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="24sp"

android:textColor="#FFFFFF"

android:layout_centerInParent="true"

/>

android:id="@+id/refresh"

android:layout_width="30dp"

android:layout_height="30dp"

android:layout_alignParentEnd="true"

android:layout_marginRight="10dp"

android:layout_centerInParent="true"/>

android:background="#99cccc"

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/punish_time"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentEnd="true"

android:textSize="28sp"

android:layout_marginTop="20dp"

android:layout_marginEnd="20dp"

/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_centerInParent="true"

android:orientation="vertical">

android:id="@+id/data"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:gravity="center"

9

android:textSize="25sp"

/>

android:id="@+id/weather_detail"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:gravity="center"

android:textSize="35sp"

/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:orientation="horizontal">

android:id="@+id/low_temp"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:textSize="30sp"

/>

android:id="@+id/temp_line"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:textSize="30sp"

android:text="~"/>

android:id="@+id/high_temp"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:textSize="30sp"

/>

布局效果图如下:中间部分显示天气情况,左上角的按钮功能是回退,右上角的按

10

钮功能是刷新(同步最新天气信息)。

接着写LookWeather的Activity。

package com.example.chen.weatherforecast;

import android.content.Intent;

import android.content.SharedPreferences;

import android.os.Bundle;

import android.preference.PreferenceManager;

import android.support.v7.app.AppCompatActivity;

import android.text.TextUtils;

import android.view.View;

import android.view.Window;

import android.widget.Button;

import android.widget.TextView;

import unity.HttpCallbackLinster;

import unity.HttpUtil;

11

import util.Utility;

/**

* Created by Administrator on 2018/12/29.

*/

public class LookWeather extends AppCompatActivity implements

View.OnClickListener{

private TextView title;

private TextView punish_time;

private TextView data;

private TextView detail;

private TextView low_temp;

private TextView high_temp;

private Button switch_bt;

private Button refresh;

@Override

protected void onCreate(Bundle savedInstanceState)

{ super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

//setContentView(https://www.360docs.net/doc/d415885091.html,yout.cheeked_weather);

setContentView(https://www.360docs.net/doc/d415885091.html,yout.look_weather_activity);

findviews();

String countyCode = getIntent().getStringExtra("county_code");

if(!TextUtils.isEmpty(countyCode)) {

queryWeatherCode(countyCode);

} else

{ showWeather();

} switch_bt.setOnClickListener(this);

refresh.setOnClickListener(this);

} private void queryWeatherCode(String countyCode) { String address = "https://www.360docs.net/doc/d415885091.html,/data/list3/city" + countyCode +".xml";

queryFromService(address, "countyCode");

} private void queryInfo(String weatherCode) { String address =

"https://www.360docs.net/doc/d415885091.html,/data/cityinfo/" + weatherCode +".html";

queryFromService(address,"weatherCode");

} private void queryFromService(final String address, final String type) {

HttpUtil.sendRequstWithURLConnection(address, new

HttpCallbackLinster() {

@Override

12

public void onFinish(String response) { if("countyCode".equals(type)) { if(!TextUtils.isEmpty(response)) { String[] array = response.split("\\|");

if(array != null && array.length == 2) { String weatherCode = array[1];

queryInfo(weatherCode);

} } }else if("weatherCode".equals(type)) {

Utility.handleWeatherResorce(LookWeather.this, response);

runOnUiThread(new Runnable() { @Override

public void run() { showWeather();

} });

} } @Override

public void onError(Exception e) { runOnUiThread(new Runnable() { @Override public void run() { punish_time.setText("更新失败");

} });

} });

} private void showWeather() {

SharedPreferences pref =

PreferenceManager.getDefaultSharedPreferences(LookWeather.this);

title.setText(pref.getString("city_name",""));

punish_time.setText("今天"+pref.getString("punish_time","")+"发布");

data.setText(pref.getString("data",""));

detail.setText(pref.getString("weather",""));

low_temp.setText(pref.getString("low_temp",""));

high_temp.setText(pref.getString("high_temp",""));

} private void findviews() { title =

(TextView)findViewById(R.id.weather_title);

punish_time = (TextView)findViewById(R.id.punish_time);

data = (TextView)findViewById(R.id.data);

detail = (TextView)findViewById(R.id.weather_detail);

low_temp = (TextView)findViewById(R.id.low_temp);

high_temp = (TextView)findViewById(R.id.high_temp);

switch_bt = (Button)findViewById(R.id.switch_bt);

refresh = (Button)findViewById(R.id.refresh);

} @Override

public void onClick(View v) { switch (v.getId()) {

case R.id.switch_bt:

Intent intent = new Intent(LookWeather.this,MainActivity.class);

intent.putExtra("from_weather_activity", true);

startActivity(intent);

13

14

finish();

break ;

case R.id.refresh : title .setText("正在同步中...");

SharedPreferences sp =

PreferenceManager.getDefaultSharedPreferences (this );

String weatherCode = sp.getString("city_code","");

if (! TextUtils.isEmpty (weatherCode)) { queryInfo(weatherCode); } break ;

default : break ;

} } }

这个Activity 同样需要注册,注册代码请见上文的AndroidManifest.xml 。

三、运行结果截图

天气预报APP 的界面如图所示:

以查看宁波的天气为例,先在最上级目录中找到浙江省,点击进入下一级目录:点击宁波市,进入选择县(区)的目录:

选择第一个(宁波市区),点击查看宁波的天气:

若想查看其它城市的天气,则后退选择其他省份的其他城市即可。例如想查看杭州

的天气:

错误总结

这个活动中的代码比较长,在onCreate()方法中先是去获取一些控件的实例,然后会尝试从本

地缓存中读取天气数据。第一次是没有缓存的,因此会从Intent中取出天气id,并调用requestWeather()方法来从服务器请求天气数据。出现空数据的界面看上去会很奇怪的。

在这次作业的过程当中缓存没存好,出现下一次再进入WeatherActivity时,再次发起网络请求了。

Android studio软件的错误提示是最多的,一次性没完成就保存后工程目录下的文件,下次打开出

现一大堆红色错误提示,由于英语水平有限,有些问题真的不知道怎么解决。

个人心得体会

16

17

移动应用开发-实验报告

实验一Android开发基础 实验时间:2018.3.16 实验地点:X501 一、实验目的 1. 掌握Android开发环境的搭建; 2. 了解Android SDK的安装、配置、使用; 3. 熟悉开发工具Android Studio的使用; 4. 了解创建项目并熟悉文件目录结构; 二、实验学时 2学时/次,共2学时 三、实验环境 Android Studio;JDK1.7;PC机 四、实验容和要求 1.Android Studio安装 (1) Android Studio的下载与安装 前提准备工作:安装JDK 并配置JDK 环境变量。 请使用传统的JAVA_HOME 环境变量名称。很多人会被提醒JVM 或者JDK 查找失败,几乎都是因为JDK 版本或者没有使用JAVA_HOME 这个环境变量名称的原因。 ①Android Studio可以从中文社区进行下载,网址为https://www.360docs.net/doc/d415885091.html,/。在浏览器中打开该网址,如图1-1所示。 图1-1 Android Studio官方 ②选择合适的平台,进行下载,如图1-2所示。

图1-2 Java platform(JDK) ③安装之前,要确定JDK版本必须是1.7或以上,否则安装之后会报错。双击Android Studio的安装文件,按照提示一步步安装,具体参考教材。不出意外的话,看到图1-3所示的界面,说明Android Studio已经安装成功了。 图1-3 Android Studio已经安装成功 2. 配置Android Studio 安装Android Studio完成之后,运行Android Studio。每一次安装,都会显示图1-4所示的这个界面,用以选择导入Android Studio的配置文件。 第一个选项:使用以前版本的配置文件夹。 第二个选项:导入某一个目录下的配置文件夹。 第三个选项:不导入配置文件夹。 如果你以前使用过Android Studio,可以选择到以前的版本。如果你是第一次使用,可以选择第三项。 图1-4 导入Android Studio配置文件

智能移动终端软件开发实验报告

实验题目实验一:描述用户界面 实验地点502实验日期3-24机器号27 一、实验目的 学会写自己的第一个Android程序,从最简单的从模拟器上输出“Hello,world!”开始。 二、实验内容 1,先自己创建一个项目。 2.此时在窗口右边有一个“Activities”的项目,右击部署到模拟器上 三、实验步骤及结果 1, helloActivity.JAVA package net.lightwinner.app; import android.app.Activity; import android.os.Bundle; package net.lightwinner.app; import android.app.Activity; import android.os.Bundle; package net.lightwinner.app; package net.lightwinner.app;

import android.app.Activity; package net.lightwinner.app; import android.app.Activity; import android.os.Bundle; public class helloActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(https://www.360docs.net/doc/d415885091.html,yout.main); } } 2.MAIN.JAVA 3.STRING Hello World, helloActivity! 我的第一个应用

动画制作实验报告

2011—2012学年第一学期实验报告 专业:____教育技术_____课程:__Flash动画制作____ 学号:__2009010239___ 姓名:___欧阳蓉_____ 教师:___刘娟_____ 分数:__________ 湖南师范大学教育科学学院

动画制作实验报告 实验一Flash基础动画制作 一、实验目的 1.了解动画基本概念和原理。 2.了解Flash软件界面。 3.了解全部工具,掌握工具的使用。 4.熟练运用Flash制作简单动画。 二、实验要求 1.结合课堂讲授内容阅读实验指导,明确实验目的和要求。 2.分清实验具体步骤,听从辅导老师的安排。 3.详细如实地记录实验过程、结果和心得,按时写出实验报告(打印稿和word源文件),上交实验作品(flash源文件和swf影片)。 4.爱护实验器材,保持环境整洁、安静。 三、实验器材 1.实验所用计算机 2.Windows操作系统。 3.Flash软件。 4.实验所用动画素材。 四、实验步骤 第一步:FLASH简介与界面认识 第二步:FLASH 工具的应用 第三步:文本的使用 第四步:元件与库的使用 第五步:图层的应用 第六步:逐帧动画的使用 第七步:形状补间动画的使用 第八步:运动补间动画的使用 第九步:色彩补间动画的使用 第九步:引导线动画的使用 五、思考题 1.Flash动画应用在哪些领域以及时代特征? 2.动画中是如何表现人物行走运动? 六、实验的重点、难点及操作要点 1、重点、难点:形状补间动画、运动补间动画、引导线动画。 2、操作要点如下: 第一步:运用逐帧动画创建蝴蝶的影片剪辑(如图1-1)。

Android移动应用开发实验指导书

《Android移动应用开发》 实验指导书 课程代码: 总课时数: 适用专业: 院(系)名称:

实验一深入理解Activity 目标 (1)掌握Activity的开发、配置和使用。 (2)掌握Intent的几种常用的属性。 (3)Android系统内置Intent的使用。 (4)了解Activity的生命周期 实验软、硬件环境 硬件:PC电脑一台; 配置:winxp或win7系统,内存大于4G,硬盘250G及以上 JDK1.7 、Eclipse、ADT、Android SDK 实验主要技术基础 (1)活动是Android的四大组件之一,它是一种可以包含用户界面的组件,主要用于和用户进行交互。 (2)Intent是Android程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据。 任务 1、请在AndroidManifest.xml文件中配置SecondActivity: 配置Intent的Action属性为com.sise.intent.action.JHY_ACTION; 配置Category属性为com.sise.intent.category.JHY_CATEGORY。 通过隐式Intent的使用从FirstActivity启动SecondActivity,编写代码,运行程序,预期效果如下所示。

图1 程序运行初始化界面图2 点击图1中的按钮后的运行结果 2、请使用显式Intent启动SecondActivity,并使用Intent从FirstActiv传递数据到SecondActivity。编写代码,运行程序,预期效果如下所示。 图1 程序运行初始化界面图2 点击图1中的按钮后的运行结果 3、使用Intent传递数据从SecondActivity返回数据到FirstActivity中去。编写代码,运行程序,预期效果如下所示。 图1 程序运行初始化界面图2 点击图1按钮运行结果 图3 点击图2按钮运行结果 实验方法与步骤 (1)创建活动 Activity是Android系统提供的一个活动基类所有的活动都必须直接或间接继承此类才能拥有活动的特性。 (2)布局文件 创建布局文件 加载布局文件 (3)在清单文件中注册活动 (4)以上方法完成多个活动的创建 (5)使用Intent完成多个活动之间的交互和数据传递

三维动画制作实验报告正式版

For the things that have been done in a certain period, the general inspection of the system is also a specific general analysis to find out the shortcomings and deficiencies 三维动画制作实验报告正 式版

三维动画制作实验报告正式版 下载提示:此报告资料适用于某一时期已经做过的事情,进行一次全面系统的总检查、总评价,同时也是一次具体的总分析、总研究,找出成绩、缺点和不足,并找出可提升点和教训记录成文,为以后遇到同类事项提供借鉴的经验。文档可以直接使用,也可根据实际需要修订后使用。 一、实验目的 四、实验方法及步骤 二、实验原理 五、实验记录及数据处理 三、实验仪器 六、误差分析及问题讨论 目录 1. 认识操作界面 2. 物体模型制作基础 3. 放样建立模型的使用 4. 曲面建立模型的使用 5. Poly建模的使用

6. 材质编辑的使用 7. 灯光的使用 8. 基本渲染器的使用 9. Unwrap UVW贴图的使用 10. 动画基础 11. 动力学系统的使用 12.骨骼的使用 13. 粒子系统 14. 使用脚本编写动画 15. Video post的使用 每次实验课必须带上此本子,以便教师检查预习情况和记录实验原始数据。 实验时必须遵守实验规则。用正确的理论指导实践袁必须人人亲自动手实验,但反对盲

目乱动,更不能无故损坏仪器设备。 这是一份重要的不可多得的自我学习资料袁它将记录着你在大学生涯中的学习和学习成 果。请你保留下来,若干年后再翻阅仍将感到十分新鲜,记忆犹新。它将推动你在人生奋斗的道路上永往直前! 实验一 一、实验课程名称 三维动画制作 二、实验项目名称 认识操作界面 三、实验目的和要求 认识熟悉3ds max的操作界面。 四、实验内容和原理

《Android应用开发案例教程》(实训)教学大纲 48学时

《Android应用开发实训》教学大纲 学时:48 适用专业:计算机软件 一、课程的性质与任务 课程的性质:本课程是为计算机软件专业高年级学生开设的一门专业技能课。 理论上,Android技术架构、图形用户界面的编制、数据存储以及网络客户端的开发。 技能上,要求学生能熟练编写出手机应用程序app、设计网络客户端的开发,能熟练使用Android Studio进行手机app部署。 前导课程:《Java网络编程》、《移动应用开发》(Android) 后续课程:无 二、教学基本要求 通过本课程的学习,要求学生掌握Android基本框架、手机程序开发的基本方法和基本技术;要求具备以下能力: 1.利用Android Studio熟练进行手机应用程序app的编写能力; 2.熟悉Android开发环境和参数配置; 3.具备编写手机界面程序能力; 4.具备编写网络开发能力; 5.利用Android Studio进行程序的编写、运行和打包发布的能力; 三、教学条件 本课程教学要求在计算机机房进行,要为每个学生提供一台高性能计算机,并安装有JDK1.8和 Android Studio 3.0 以上的版本。 四、教学内容及学时安排

五、教法说明 本课程是一门实践性和趣味性较强的实训课程,有明确的项目作为课程任务。教师先给学生做项目运行的示范演示,再对关键环节做讲解,让学生观察项目的要点。 教学按照“演示项目→分析项目→分解成若干个子任务→引出教学内容→讲授新知识→学生完成指定操作→学生自主拓展→总结评价”的过程展开课程。 通过项目驱动教学,激发了学生的自主学习能力、创新精神和合作意识。在教学过程中,要注意精讲多练,充分激发学生的学习兴趣,并鼓励学生去创新。 六、考核方式及评分办法 本课程考核采用形成性考核方式,满分100分,考核成绩有以下几部分组成: 实训项目1:占45分,其中答辩及文档规范10分。 实训项目2:占45分,其中答辩及文档规范10分。 课堂表现及考勤:占10分。 七、教材 《Android应用开发案例教程(Android Studio版)》,张霞等编著,人民邮电出版社,2019.7

移动应用开发-教学大纲

《移动应用开发》教学大纲 英文课程名称:Development of Mobile Application 课程代码:********** 课程类别:专业选修课 学时:48(24+24) 学分:2、5 开课学期:第四学期 适用专业:计算机科学与技术专业 考核方式:考试 先修课程:面向对象程序设计(Java)、嵌入式系统 开课单位:计算机学院 一、课程简介 本课程就是计算机科学与技术(中职对口招生)专业得专业选修课,目得就是为了培养学生得移动应用程序开发能力。本课程以Android系统为基础来讲述移动终端得设计。本课程需要掌握得内容包括Eclipse与命令行开发环境得搭建,Android用户界面得布局、控件与事件得使用方法,Android生命周期得概念与作用,组件通信机制,后台服务,数据存储得SharedPreferences、SQLite数据库与文件存储方法,网络通信中得多线程应用、通信、Socket通信等内容。 二、教学基本要求与内容安排 (一)教学目得与要求 课程以Android操作系统为基础,学习移动终端程序设计得方法。通过本课程得教学,使学生掌握一种典型嵌入式软件平台(Android)得软件开发技术,提高解决实际问题得能力,为就业及以后得学习深造打下坚实得基础。

三、习题课与课堂讨论内容 课程在期中、期末两个阶段分别安排1课时得习题课,集中讲解习题。 根据各部分内容得需要,在课堂教学中组织主题讨论,每主题0、5~1课时,具体内容如下: 1、比较常见得嵌入式软件开发平台,并讨论应用场景; 2、讨论手机应用程序与桌面应用程序在用户界面开发上得异同之处; 3、讨论Android综合实例程序开发得设计过程。 四、实验(实践)内容 1。Android开发基础,2 2.Androidy用户界面设计,6 3。多线程应用与网络通信,6 4.Android数据存储,4 5.Android综合应用程序开发,6 五、成绩考核 考核方式为笔试;平时成绩占20%,实验成绩占20%,期末成绩占60%,其中,平时成绩评定包含出勤、课堂表现、作业及讨论等方面。 六、推荐教材与主要参考书: 推荐教材: 王向辉、Android应用程序开发(第2版)[M]、北京:清华大学出版社,2012、 参考书: [1] [美]Ed Burnette著,田俊静等译.Android基础教程(第三版·修订版).北京:人民邮电出版社。2011 [2]杨丰盛、Android应用开发揭秘、北京:机械工业出版社、2010

天气预报中的负数

《天气预报中的负数》说课设计 井陉县天长镇河东学校蔡红霞 一、教材分析: 这节课是人教课标版小学数学六年级下册第一单元《负数》的第一课时。它属于数与代数领域,是在学生系统地认识了整数、分数与小数的基础上,对数的又一次扩展。初步认识负数,理解负数的意义,为第三学段理解有理数的意义和运算打下基础。 本单元内容安排3个例题,从不同的情境中帮助学生认识负数。本课时是第一课时,在温度和收支中了解负数的意义,为第二课时学习直线上的负数作准备。 二、学情分析: 在学习之前,学生在知识上已经建立了整数、分数和小数的概念,在学习中积累了丰富的数学经验,初步具备了自主学习的能力和独立解决问题的能力。在生活中,“负数”概念虽然陌生,但他们已经有了一些有关“负数”的生活经验,初步感知到熟悉的生活情境中负数表示的不同含义。 小学生心理发展的主要特点是善于记忆具体的事实,而不善于记忆抽象的内容。 三、教学目标 结合以上分析,制定了本节课的教学目标 知识与技能目标:在具体的生活情境中体验负数产生的必要性,理解负数的意义,能正确地读、写正数和负数;知道0既不是正数也不是负数。 过程与方法:经历观察、操作、思考、归纳等探究活动,初步学会用正数、负数表示生活中的一组相反意义的量。 情感、态度和价值观:了解负数的历史,体验到数学来源于生活,丰富学生良好的数学情感。 其中,教学重点是理解具体情境中正数与负数的意义,体会负数产生的必要性。 教学难点是理解“0既不是正数,也不是负数”。 四、教学准备 课前教师准备多媒体课件、温度计、课堂活动记录表等。学生观看一次天气预报栏目,并记录最感兴趣的三个城市温度。学生自主学习新知,搜集生活中的负数。 五、教学过程 为了完成本课的教学目标,我设计了以下4个教学环节: (一)、谈话激趣,导入新课 由一则天气预报的小视频引入课题《负数的认识》。“你记录了哪些最感兴趣的城市的气温情况呢?”在谈话交流中,充分调动学生已有的生活经验,也为下一个活动“播报气温”作准备。 (二)合作探究,理解意义 情境一:气温中的负数 1、课件展示我国北部、中部、南部六个著名城市在同一天的气温情况。在充分读图的基础上, 你来报一报当天各个城市的气温情况。在集体评价活动中,引导学生进一步思考:“用数学的眼光再来看这幅图,你有什么发现?” 2、在学生独立思考的基础上,进行集体交流。 预设一:我知道了每个城市具体的温度。指导学生正确读出不同的温度。如“—27℃”和“20℃”在对比中,感受不同的气温带来的冷暖不同的身体感受。接下来,通过对零下温度的质疑,并适时提出问题:“0℃表示什么意思呢?”借助于直观的温度计,点明:人们把淡水开始结冰时的温度叫做0℃。理解零下温度表示比0℃还低的温度,比0℃高的温度

《APP开发》课程大纲纲要.docx

《 APP开发技术》课程教学大纲 一、课程基本信息 课程类别:专业基础课 课程编号:A2909 学分:5 分 总学时:32 学时,理论学时:16 学时,实验(实训)学时: 16 学时,适 用专业:软件技术 先修课程: 二、课程简介 移动应用开发( APP 开发技术),方向是为满足日益繁荣的移动通信应用领域而专门设置的,培养掌握移动通信和软件编程的基本理论和基本技能,具有运用工程化方法和工具完成软件编码和测试操作的能力,具有团队协作能力和一定的技术创新能力,能在移动增值应用开发、手机游戏开发和移动网站建设等领域中从事软件编码、程序测试操作等一线岗位工作的移动应用软件开发实用人才,是教育部、信息产业部等六部委确定的国家计算机应用与软件技能型紧缺人才培训专业 三、课程目标(黑体 / 小四 / 粗体 / 空二格) 课程目标对应的专业培养目标 1.掌握 Java 开发环境基本配置。 1.可掌握的核心能力。2.掌握运算符、表达式、流程控制语句、数组等的使2.可解决的现实问题。用。 3.增加市场价值。3.熟练使用Idea 开发工具。 4.掌握Java基本面向对象知识。 四、课程重难点(黑体 / 小四 / 粗体 / 空二格) 课程重点课程难点

课程重点课程难点 1.掌握 Java 开发环境基本配置。 1.可掌握的核心能力。2.掌握运算符、表达式、流程控制语句、数组等2.可解决的现实问题。的使用。 3.增加市场价值。3.熟练使用Idea 开发工具。 4.掌握Java基本面向对象知识。 五、教学内容及教学安排 课次学时章目名称12课程概述12基础语法24基础语法34面向对象44面向对象 教学内容及教学目标教学方式评价方式 介绍课程的主要内容和学习方法相讲授 +讨论 +考勤 +互动 +作互认识熟悉,自我介绍 互动 +作业业 1 HelloWorld 、 2 常量、 3 变量、 4 数 讲授 +讨论 +考勤 +互动 +作据类型、 5 运算符、 6 方法、 7 流程 互动 +作业业 控制语句、 8 IDEA 使用、 9 数组 1 HelloWorld 、 2 常量、 3 变量、 4 数 讲授 +讨论 +考勤+互动+作据类型、 5 运算符、 6 方法、 7 流程 互动 +作业业 控制语句、 8 IDEA 使用、 9 数组 1 类、 2 对象、 3 封装、继承、多态、 4 构造器、 5super、 this、 6 接口、抽 讲授 +讨论 +考勤+互动+作象类、 7 权限修饰符、8 内部类、 互动 +作业业 9Random、ArrayList 、String 、Arrays 、 Math 1 类、 2 对象、 3 封装、继承、多态、 讲授 +讨论 +考勤+互动+作4 构造器、 5super、 this、 6 接口、抽 互动 +作业业 象类、 7 权限修饰符、8 内部类、

移动应用开发 实验指导书

“移动应用开发”实验指导书 宁波大学计算机科学与技术系 2016年2月

实验一 计算器 一、实验目的 练习掌握Android软件开发的界面布局,事件编程等基本编程技术,设计制作一Android计算器软件。 二、实验内容 软件界面供参考: 一个计算器的基本功能应有输入数据、加减乘除、浮点数运算、正余弦运算、清空结果、删除一位数据。 (1)数字以字符形式输入,在需要读出数据的时候直接调用getText()函数即可。 (2)对于双目运算符,在检测到点击时,得到输入框里的数据num1,输入框置空,并设置标志op标明是哪种运算。对于除法运算需要判断,除数是否为零并提醒。 (3)对于单目运算符,在检测到点击时,设置标志or标明是哪种运算。 (4)在清空时,需要将输入框置空。清除一位数据时,判断输入框中是否只有一个数据,如是,直接清空,如不是输入框中置前n-1位。 (5)在点击等于符号时,得到输入框里的数据num2,根据前面设置的标志位,判断点击的是单目运算符还是双目运算符,若是单目运算符就将num2进行单目运算。若是双目运算,num2不变。再进行Result运算。

三、实验要求 (1)每位同学独立设计软件功能、完成软件的开发与测试。 (2)软件完成后由任课教师检查、提问软件功能、软件的设计和开发的代码。(3)每位同学独立完成实验报告(包括学号、姓名,实验目的、实验内容、软件功能、设计思想、实验总结等),并将实验报告和开发软件的工程文件压缩包提交任课教师。

实验二 通讯录 一、实验目的 练习掌握Android软件开发基本编程技术、Android系统SQLite数据库的使用、通话、短信的使用等,设计制作一Android通讯录软件。 二、实验内容 实现的通讯录功能和界面可在实验开发中由每位同学自己设计,但必须使用SQLite数据库保存通讯录信息。以下功能和软件界面供参考: 仿照一般手机通讯录的使用界面和功能,主要功能可包括: (1)可以添加、删减联系人 (2)联系人的信息包括:姓名、手机号码、工作单位、群组、电子邮件、手机铃声 (3)选择联系人后,可以快速进行操作,如:拨打电话发送短信、查看详细、移出群组、移动分组、删除联系人等。查看详细时显示手机号码、群组、和设定的手机铃声以及同该联系人的通话记录。 (4)在联系人界面,可以查看各群组。点击群组,跳出对应联系人。 (5)有拨号键盘,点击数字将号码显示出来,并可以对手机号码进行删减 (6)可以发送信息,显示信息记录 (7)发送信息时,可以快速选择现有联系人。

三维动画制作准则

精心整理命名规则: 一、模型: 全部使用中文,简单明了,若有多个版本,则需要有个最终版文件。文件名为xxx_最终版。同一模型不同用途要标明。例如xxx_实体、xxx_透明、xxx_外壳。 二、贴图: 中英文皆可,但不可以用纯数字。不可以用“logo”等过于雷同的词。专用贴图需要在后缀名里写清楚。例如:xxx_bump。 三、镜头: 前缀名为“cam_”。后面为镜头号,例如“cam_1”。同一镜头不同用途要在后缀名的注明。例如:cam_1_通道、cam_1实体。单个无编号的镜头直接标注,例如:cam_展示。 四、渲染输出: 渲染输出按照镜头文件命名。特殊用途在后缀名上标明。例如:cam_1_景深, cam_1_ZDepth。中英文皆可。 制作标准: 一、模型制作标准: 1.制作:工业模型布线一般为横平竖直。规则的部件用挤出、倒角、车削等修改器制作单个部件,最后进行组装。注意模型的比例。部件都要倒角。法线不能翻转。模型尽量不要单面,都给一个厚度。绝不要重叠面。

曲面模型用多边形制作,布线简洁,不要出现破面。倒角的地方需要加线。段数均匀。 2.处理:工业软件直接转出来的模型,先把显示精度调整为产品级,接着塌陷掉为多边形,减少资源消耗。(注意保留源文件)下载的模型检查面数是否过多,场景里不需要的东西一律删掉。 二、材质制作标准: 1、材质:正确理解物体质感,高光比正常的要稍微强一点。反射都要加模糊,即使镜面的材质也可以给一点点模糊。折射模糊慎用。凹凸贴图不要对比度过大。一些起伏过大的表面用置换。 2、贴图:尺寸尽量为512*512,1024*1024等。不能有明显重复度的贴图。尽量做成无缝贴图。颜色上不能有纯色。如纯黑、纯白等。饱和度适当降低。 3、UV:把握好UV和模型、场景之间的比例。近景物体UV适量放大,远景适量缩小。在保证场景比例的情况下,重复度越小越好。结构复杂的物体需要使用UV展开。 三、镜头制作标准: 1、目的:制作镜头前先考虑这一镜的目的是什么,是引入镜头,还是过渡镜头,还是表现产品的买点的核心镜头。把握镜头的目的,以便进行不同处理。 2、构图:角度不要乏味,一定要多试不同的角度。焦距多使用标准焦距,如28mm、35mm、50mm等焦距。构图饱满,不要出现画面不平衡的情况。如一边东西很多,另一边没东西,画面朝一边倾斜。还有颜色的平衡,冷色的物体占画面比重会比暖色的要小,所以构图时就要人为的调整,比如暖色的物体大小缩小一点。如果需要放字幕,则构图时就要把字幕的空档留出来。构图也不要太正,一般在画面的三分之二的位置附近。除非是有目的性的。 2.运动:基本就是推拉摇移。展现产品的镜头可以是缓动镜头,也可以是调度比较大

Android移动应用开发基础教程(微课版)-教学大纲

《Android移动应用开发基础教程(微课版)》教学大纲 学时:62 代码: 适用专业: 制定: 审核: 批准: 一、课程的地位、性质和任务 Android移动应用开发基础是普通高等学校计算机科学与技术专业的一门重要的专业基础课。通过本课程的学习,使学生能够在已有的计算机基础知识基础上,对Android移动应用开发有一个系统的、全面的了解、为掌握移动应用开发打下良好的基础;在系统理解和掌握Android移动应用开发基本原理的基础上,了解和掌握移动应用开发的基本原理和方法,具有设计和开发Android移动应用APP的基本能力。 Android移动应用开发是一门实践性非常强的学科,它要求学生在理解和掌握Android移动应用开发语言语法的基础上,充分利用实验课程,在计算机上动手完成程序的编写和调试。 二、课程教学基本要求 1.课程教学以Android移动应用开发方法为主,在教学过程中让学生掌握Android移动应用开发的基本原理和方法。 2.要求在教学过程中合理安排理论课时和实验课时,让学生有充分的使用在计算机上练习理论课程中学到的Android移动应用开发技巧和方法。 三、课程的内容 第1章 Android开发起步 让学生了解Android平台特点、体系架构和版本,掌握如何搭建Android开发环境,熟悉如何创建Android项目和Android编程的日志工具 第2章 Android核心组件:活动 让学生了解Android核心组件之一的活动是什么、活动生命周期,掌握活动基本操作、在活动中使用Intent、在活动之间传递数据、活动的启动模式。 第3章 UI设计 让学生熟练掌握线性布局、相对布局、通用UI组件、消息通知和菜单。 第4章广播机制 让学生了解广播机制,并熟练掌握如何使用广播接收器。 第5章数据存储 让学生熟练掌握Android文件存储、共享存储和SQLite数据库存储。 第6章多媒体 让学生熟练掌握播放多媒体文件、记录声音、使用摄像头和相册。 第7章网络和数据解析

Android程序开发实验报告

山西大学 物理电子工程学院 论文题目:基于Android系统的GPS 程序开发 学号:* 姓名:* * * 指导老师:* *

摘要 在日常生活中,我们经常需要知道自己的具体位置,尤其是在 旅游或陌生城市中。而手机作为目前最常见、最方便的电子信息载体,无疑是我们最好的选择。为了让智能手机用户能够随时随地查询GPS 所提供的服务,一种高效的办法就是将应用系统的功能拓展到手机终端上。本文选择的是最常见的Android系统的程序开发。对于软件从业人员来说,该平台具有无限的吸引力。 因此,本文首先介绍安卓系统在个人计算机上开发平台的搭建,并尝试在安卓系统上开发一款基于手机自带GPS组件的GPS应用。 关键字:Android,GPS,SDK,JDK,ADT,Eclipse 一引言 (一)开发背景 随着网络世界的深入生活,地球网络化已经是一条必然之路。而今后的网络也将逐渐的走向移动互联网的轨道。像手机,平板计算机,笔记本计算机等可以搭乘移动互联网的产品中使用人数最多的数码产品便是智能手机了。它已经在逐步的取代其他的电子产品的市场份额。据《2013-2017年中国智能手机行业市场需求预测与投资战略规划分析报告》估算,2012前三季度,全球智能手机用户总数已经突破了10亿大关。而2011前三季度的用户量只有约7亿户。可以看出,智能手机市场的潜力不可估量。

(二)Android 与GPS 简介 1.Android 是一种基于Linux 的自由及开放源代码的操作系统,主要使用于移动设 备,如智能手机和平板计算机,由Google 公 司和开放手机联盟领导及开发。 2011年第一季度,Android 在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年11月数据显示,Android 占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。 Android 的系统架构和其操作系统一 样,采用了分层的架构。从架构图看, Android 分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运 行库层和Linux 内核层。 Android 系统所具有的特点有:开放性、丰富的硬件、方便开发。 2.GPS 是英文Global Positioning System (全球定位系统) 的简称。GPS 起始于1958年美国军方的一个项目, 1964年投入使用。GPS 定位的基本原理是根据高速运动的卫星瞬间位置作为已知的起算数据,采用空间距离后方交会的方法,确定待测点的位置。GPS 由空间部分、地面控制系统、用户设备部分三部分组成。作为先进的测量手段和新的生产力,GPS 已经融入了国民经济建设、国防建设和社会发展的各个应用领域。GPS 技术与我们的日常生活日益相关。

中班科学教案:认识天气预报

中班科学教案:认识天气预报 【设计意图】 最近,雨淅淅沥沥下个不停。孩子们说:“又下雨了,什么时候出太阳啊?我们可想到草地上去玩游戏了。”小杰说:“我回去问问爸爸,他的手机上有天气短信,他知道什么时候太阳会出来。”小莹说:“我也回去问问爷爷,他每天看报纸的时候,都会把天气预报读给我听,只要问问他,就知道什么时候不下雨了。”接着,大家七嘴八舌地议论起来,都说自己要想想办法了解一下明天的天气。从关心天气到想要了解各种形式的天气预报,孩子们探究的兴趣越来越浓。以此为契机,我设计了科学活动“认识天气预报”,一方面自制PPT课件,另一方面尝试发掘生活中相关的教育资源,将两者优势互补,使幼儿在边看边玩的氛围下获得科学知识,提高他们探索天气奥秘的兴趣和能力。 【活动目标】 1.通过观察,了解晴、雨、阴、多云等四种天气类型的特点,认识天气预报中几种常见的天气图标,学习按要求进行简单的天气预报。 2.能借助自制天气图像卡,用一个完整句播报天气,能对几种常见的天气图标和天气实景图进行配对,提高观察能力、探究能力和语言表达能力。 3.感知天气与人们日常活动的关系,能主动关注天气预

报。 【活动准备】 1.经验准备:幼儿与家长一起搜集两个方面的资料:“天气预报的好处是什么?”“从哪里可以知道天气预报?”幼儿已有简单的关于动物习性与天气变化方面的知识。 2.材料准备:教具:手偶“喜羊羊”,PPT“天气预报截图”、“动物气象员”、“有趣的天气图标”。学具:幼儿人手一套天气小图标,配对操作学具。 【活动过程】 1.户外观察和谈话互动,引发幼儿对天气变化及天气预报的关注。 教师以手偶“喜羊羊”与幼儿展开谈话导入。 “喜羊羊”:“小朋友,你们好!我参加了环游中国的活动,刚刚从北京来到广州。北京可冷了,要穿很厚的衣服呢!到你们这儿,天气暖和多了,穿着这身厚厚的衣服,我都快出汗了,这里的温度是多少啊?”“刚才有的小朋友说天气预报今天是7℃~15℃,我们一起到户外去感受一下天气吧?” 幼儿和“喜羊羊”一起到活动室外去观察、感知天气特点,并学习用晴天来描述当天天气。 “喜羊羊”:“过几天,我要到香港去旅行,不知道那里的天气怎样。小朋友帮我出出主意,怎样才能知道香港的天气呢?”

《移动应用开发课程设计》大纲

《移动应用开发课程设计》课程设计教学大纲 课程编号:72.033057 课程名称:移动应用开发课程设计 英文名称:The Basics of Mobile application software development course design 设计周数: 2 学分: 2 开设学期:第7学期 适用专业:计算机科学与技术信息管理与信息系统 先修课程:《面向对象程序设计(Java)》、《Java高级程序设计(J2EE)》 一、目的和意义 通过本课程设计实践,达到以下目的: (1)促进学生将理论知识与实践相结合,应用新技术和方法,完成具有实际应用意义的创意设计,并予以实现;提高学生的策划、设计、实现、协调组织和解决问题的能力 (2)巩固和加深对Android移动应用程序设计的基本概念、基本理论和实现技术的理解。 (3)掌握Android应用软件开发的主要环境与工具,掌握Android应用软件的常用控件的使用方法。 (4)初步掌握移动应用软件系统分析与设计的基本方法和步骤,并能针对简单的实际应用问题进行初步地分析和设计。 (5)进一步掌握Java编程语言,并针对移动应用软件开发问题进行编程实现。 (6)通过撰写课程设计论文,锻炼学生科技论文写作能力。 (7)培养学生团队协作意识和能力。 二、选题要求 (1)选题应切近生活实际并最好有一定意义;题目不应太大,但系统的功能相对独立完整。 (2)以具体问题的功能模块实现为主,兼顾其它相关的辅助模块。 (3)在合理选题的基础上,进行作品的UI和功能的分析与设计。 (4)能正确使用开发工具进行编码实现,完成相关的功能模块,并进行测试和完善。 (5)课程设计题目常以周边生活中的课题为主,也可选做传统移动终端上的应用或游戏等实际应用题目,学生可自选题目,也可选择教师提供的题目。 (6)学生可组队进行作品的开发,原则上每队最多不能超过5人,最后作品答辩时团队每人按分工均要进行陈述和答辩。 三、任务及要求 课程设计的任务是:根据所选题目,确定创意设计的主题,展开研究和设计,编制创意设计方案,并在选定的平台上实现。按照提供的文档规范撰写设计文档。 要求学生掌握:

AE实训报告

课程设计报告 专业:计算机应用基础 系别:信息工程系 报告人:徐蒙奇 班级:计 1131 指导教师:周洁杨静 软件简介 现在影视媒体已经成为当前最大众化,最具有影响力的媒体表现形式。从好莱坞创造的幻想世界,到电视新闻所关注的现实生活,再到铺天盖地的广告,无一不影响到我们的生活。 过去,影视节目的制作是专业人员的工作,对大众来说似乎还蒙着一层神秘的面纱;十几年来,数字合成技术全面进入影视制作过程,计算机逐步取代了原有的影视设备,并在影视制作的各个环节中发挥了巨大的作用。但是,在不久前影视制作所使用的一直是价格极为昂贵的专业硬件和软件,非专业人员很难见到这些设备,更不用说用它来制作自己的作品了。 但现在,随着PC性能的显着提高,价格不断降低,影视制作从以前的专业硬件设备逐渐向PC平台上转移,原来身份极高的专业软件也逐步移植到PC平台上来,价格日益大众化,同时影视制作的应用也扩大到电脑游戏,多媒体,网络等更为广阔的领域,许多这些行业的人员或业余爱好者都可以利用手中的电脑制作自己喜欢的东西了。 合成技术指将多种素材混合成单一复合画面的。早期的影视合成技术主要在胶片,磁带的拍摄过程及胶片洗印过程中实现的,工艺虽然落後,但效果是不错的。诸如,“扣像”、“叠画”等合成的方法和手段,都在早期的影视制作中得到了较为广泛的应用。与传统合成技术相比,数字合成技术,利用先进的计算机图像学的原理和方法,将多种源素材采集到计算机里面,并用计算机混合成单一符合图像,然後输入到磁带或胶片上的这一系统、完整的处理过程。 理论上,我们我们把影视制作分为前期和后期。前期主要工作包括诸如策划,拍摄,及三维动画创作等工序;当前期工作结束后我们得到的是大量的素材和半成品,将它们有机的通过艺术手段结合起来就是后期合成工作。 至此,可以引出本文主角——After Effects(简称AE)了,后期合成软件的佼佼者! 它可以非常方便地调入Photoshop,Illustrator的层文件;Premire的项目文件也可以近乎完美的再现于AE中;甚至还可以调入Premire的EDL文件。新版本还

(完整版)实验报告

《物流系统分析规划与设计》实验报告 组员:冯宏伟 08251147 毕克菲 08251145 冯沁雨 08251148

本次实验是运用taraVRbuilder软件来进行一次物流规划仿真模拟设计,taraVRbuilder是一款运用虚拟现实技术进行三维建模和模拟基于时间的传输、物流和保管、仓储物资的软件工具。他的应用领域包括销售支持、计划、工程规划以及档案整理等。它的特色在于用户可以再不具备特别的编程和三维设计技能的情况下,简便快捷的创造虚拟、三维的动画场景。学会运用此软件,将方便我们对物流系统的规划和设计。 1实验名称:物流中心规划设计及仿真 2实验目的: 1)通过实际操作物流规划仿真软件(Tara VR Builder)使学生掌握采用物流仿真软件对物流系统进行规划和优化的方法; 2)加深学生对物流系统分析、规划与设计相关理论、方法和步骤等知的理解;3)并进一步培养学生从物流实际业务运营管理中发现问题、提炼问题、构造模型、实验测试、分析评价方案等一体化的解决问题的能力; 4)兼顾提升学生总结研究成果,撰写科技论文的能力。 3实验任务: 根据所学到的物流系统知识,以物流配送中心规划设计和配送方案设计为重点内容进行课程设计。具体任务: 在对物流配送中心布局、作业流程、设备了解的基础上,利用软件(Tara VR Builder)来模拟和仿真实现配送中心各个作业子系统的规划和设计,包括:(1)出库作业系统规划与仿真 搭建厂房。货物在配送中心的时候要进行出库作业,叉车将货物从仓库中取出,堆放至仓库外指定地点。 要求出库作业系统具有以下物流源: ●高架货仓,用来充当货源; ●传送带; ●走行路径以及叉式装卸车; ●厂房(使用外部模型); ●货源种类(配置三种不同的货物储备); ●动画运行。 (2)包装加工系统规划与仿真

移动应用开发-实验报告

实验一Android开发基础 实验时间:实验地点:X501 一、实验目的 1. 掌握Android开发环境的搭建; 2. 了解Android SDK的安装、配置、使用; 3. 熟悉开发工具Android Studio的使用; 4. 了解创建项目并熟悉文件目录结构; 二、实验学时 2学时/次,共2学时 三、实验环境 Android Studio;;PC机 四、实验内容和要求 1.Android Studio安装 (1) Android Studio的下载与安装 前提准备工作:安装JDK 并配置JDK 环境变量。 请使用传统的JAVA_HOME 环境变量名称。很多人会被提醒JVM 或者JDK 查找失败,几乎都是因为JDK 版本或者没有使用JAVA_HOME 这个环境变量名称的原因。 ①Android Studio可以从中文社区进行下载,网址为。在浏览器中打开该网址,如图1-1所示。 图1-1 Android Studio官方网站 ②选择合适的平台,进行下载,如图1-2所示。

图1-2 Java platform(JDK) ③安装之前,要确定JDK版本必须是或以上,否则安装之后会报错。双击Android Studio 的安装文件,按照提示一步步安装,具体参考教材。不出意外的话,看到图1-3所示的界面,说明Android Studio已经安装成功了。 图1-3 Android Studio已经安装成功 2. 配置Android Studio 安装Android Studio完成之后,运行Android Studio。每一次安装,都会显示图1-4所示的这个界面,用以选择导入Android Studio的配置文件。 第一个选项:使用以前版本的配置文件夹。 第二个选项:导入某一个目录下的配置文件夹。 第三个选项:不导入配置文件夹。 如果你以前使用过Android Studio,可以选择到以前的版本。如果你是第一次使用,可以选择第三项。 图1-4 导入Android Studio配置文件 3. 创建AVD

三维动画实验报告

广东工业大学实验报告 学院专业班成绩评定_______ 学号姓名教师签名_______ 实验七题目综合设计第___周星期___第___节 实验名称:综合设计 预习报告: 一、实验目的与要求: 通过本实验的学习,使学生通过发挥自己的创意,掌握独立完成在一个主题要求下的三维动画的设计与实现。 二、设计方案: (1)动画构思: 故事名称:核爆危机 故事背景:1988年,苏联由于军事上盲目与美国争霸,经济濒临崩溃。苏联不甘心被美国称霸世界。密谋以战争手段解决问题。 故事情节:1988年10月,苏联军方派出一艘战略核潜艇,准备以核武攻击美国经济中心纽约。核潜艇指定到在大西洋某位置准备发射潜射战略核导弹。苏联通信卫星在给核潜艇传输数据时,被美国间谍卫星捕获,并破解密码。美国军方迅速打电话到白宫请示总统。美国总统里根发出追捕潜艇并且拦截导弹的指示,但是苏联潜艇最终成功发射核导弹并且准确命中美国纽约曼哈顿。核战争正式爆发。。。。。。 (2)分镜设计:包括潜艇海底航行、苏联军官发布命令、苏联卫星输送信号、美国卫星截取信号、美国总统接到通知并发布命名、苏联潜艇发射导弹、导弹出水、导弹飞行目标、核爆等。 (3)使用3ds max进行场景的建模,另外使用maya进行人物设计 (4)使用after effects 和combustion进行后期合成和特效处理。 (5)使用声音软件进行配音 (6)最终的合成输出。 三、特殊要求:

安装了3DSMAX、Adobe Premiere Pro软件的电脑四、实验数据处理:

建模部分:(列出主要的建模) (1)潜艇的建模:参照潜艇三面图,采用3ds max 的polygon 和布尔建模方式,按照真实比例建造一艘俄国的台风级核潜艇,全艇6万多面,光滑流畅,具有很高的细节度,满足高品质3d 动画的制作。 采用VRAY 渲染器全局光渲染的“台风级”核潜艇

相关文档
最新文档