交互媒体专题设计大作业

最近交互媒体专题设计课结课,然后我们就顺势做了大作业,就简单描述一下我的大作业吧,虽然它及其简单和简陋。

1.背景
2.创意
3.功能
4.难点
5.技术
6.参考资料
7.资源
8.作业推荐

背景

自己一个人闲暇的时候经常会想,浩瀚的宇宙是多么神奇,这些大大小小的星球汇聚在一起就有了各个星系,各个星系汇聚在一起又组成了更大的星系,而这些星系之间又存在着各种相互作用,来让每个星系又相互关联起来,进而使整个宇宙不断地在运动。进一步想想,就会思考,这第一推动力到底来自于谁呢,然后就会认为原来牛顿晚年研究神学也不是并无道理,因为这些力量是在让人着迷,着迷到相信是神带来的旨意。

创意

所以,想到上面这些,就不自觉觉得要是我能成为那么一个“神”,该多好,可以指定宇宙的规则,可以作为第一推动力,让万物运转,让生灵由此而诞生,由此,我就想到写出一个简单的星系系统。考虑到水平有限和时间问题,所以我也并没有想着做多大的星系,简简单单写一个太阳系吧,就是那种最简单的有着八大行星即可的一个简单太阳系,尝试一下作为上帝的感觉。HHH!!!

功能

我所写的小星系,说实在其实并没有啥功能,因为我只是为了简单制作一个星系,尝试着作为上帝的感觉,但是作为作业来说,还是得具备一些功能的,于是乎,我就添加了一点点的控制功能,就是简单更改行星的运转周期,因为,通过计算,如果讲某一个行星运转的周期设为1的话,那么相对而言其它几个行星的速度不是太快,就是太慢,太快就没办法看清他们的运动是否符合,太慢就没办法看完整他们的一个运动周期。所以简单的控制,还是可以看到这八个星系的完整运动。因为考虑到功能其实并不多,也就一个所以用法也就不需要单独讲述了,就键盘上下和左右键控制运转的周期,调整即可。

难点

实现这一个简单的星系,最基本的是画出这个几个星球,当然这肯定不是难点,难点就在于其运动。
1.行星的运动方式:我这里采用的角速度,但是每个行星的运动轨迹又不是完全在同一个平面,需要将他们的运动面进行偏移,所以在运动这里,第一步首先采用的rotate(),来随机改变每一个行星偏移面的角度。然后对于他们本身的周期性运动,采用的是translate()函数,利用这其中我将因变量设为角度theta,利用update()函数,每次更新该角度,因为先设定了每个行星相对应的半径不变,只需要利用Rcos(theta),Rsin(theta)就能改变行星的位置。
2.行星的运动轨迹:因为之前我想尽量还原太阳系,使其参数尽量按照一定的比例,所以按照之前的想法,那么行星的运动轨迹就不是一个完整的圆了,也不是那么简单的一个的椭圆,因为根据开普勒第二定律,行星的运动速度是和太阳相关的(在单位时间内,行星与太阳连线的地方运动划过的面积是相等的)。那么这个时候就需要计算得到其半径和和其它变量的关系。而这一复杂过程又不能完全在程序中实现,所以,就需要通过计算出来。
设太阳中心所在位置复平面的原点为O,在t时刻,行星位于
Z(t)=re^(itheta);
于是行星的速度就可以表示为dZ/dt=e^(i
theta)(dr/dt+irdtheta/dt);
其加速度也可以求出来。
而太阳对行星的引力依据万有引力,大小为mMG/r
r;
其中M为常数,G为常数,m为行星质量,然后在经过化简,将行星速度表示带入,就可以行星绕太阳运行的轨迹的数学模型。最后再带入行星的质量,那么可以求得其轨迹的方程为:
r=p/1-e*cos(theta);
有了这个式子,我就可以相对精确的模拟处其时刻变化的半径了,这样所得到的模型也会比之前固定的半径要稍微接近真实一点。

技术

主要应用到的技术是代码本色中的向量,振荡和粒子系统(我简单的做了小行星带,因为没有什么技术含量,所以不介绍了)。

最后

其实,我想把这个做得更好更有趣,但是,貌似实现起来也并不是那么容易,所以。。。。放弃了,不过,以后有时间还是自己会将之做得尽善尽美的。

参考资料

行星远近数据点
行星轨迹模型
行星远近点数据计算

资源

程序资源

作业推荐

1.第一个推荐的是两个小游戏程序,我觉得比较有特点的是,他的第二个小游戏可以自己设计游戏的形象,这让我觉得很有趣,因为大部分的游戏觉得角色都是固定好的,然后进行选择即可,而自己创建形象还是比较好玩的。
博文链接


2.第二个推荐的是一个《鲤》的游戏,推荐这个主要是觉得操作方式比较新颖,不像大多小游戏是键盘的方向键控制,而且用鼠标的点击来控制鱼的速度也是蛮好玩的,再者,游戏的细节做的挺不错的,感觉很细腻。
链接

3.第三个推荐的是名叫《Flowing paint》的应用。一眼看上去这个应用感觉很神秘,展现出来的效果有一种不一样的绘画的感觉,比较抽象,但是它是能够动的,这就比传统的抽象画显得有趣,而且对文字展现的破碎效果也显得挺有趣的。
链接

交互媒体专题设计大作业相关推荐

  1. 交互媒体专题设计------《The Wiley Handbook of Human Computer Interaction》

    现代医疗保健和(再)能力培养中的HCI方法 目录 序章 历史背景 从最初的概念评估到定制和商用仪器的系统 应急模型:优化激励区(缩放) 机器人照明设备的无障碍手势控制 视频游戏无障碍手势控制 结论 终 ...

  2. 交互媒体专题设计------《The Wiley Handbook of Human Computer Interaction》之观后感

    现代医疗保健和(再)能力培养中的HCI方法--观后感 目录 文章概括 无障碍交互系统发展现状 思考 参考文献 目录 文章概括 本文介绍了一个成熟的HCI前沿研究开发机构.从20世纪80年代开始的概念验 ...

  3. 交互媒体专题设计之一艺工交叉

    一.由<达芬奇的人生密码>引发的艺工结合随想 莱昂纳多达芬奇只有21幅画作存在,但他的私人手稿有6000页存活下来. 这些非凡的绘画和写作代表了莱昂纳多的意识流:他的激情,痴迷,反思,野心 ...

  4. 《交互媒体专题设计》方案设计

    主题:瘟疫模拟–关于社区间的固定人员流动模式的影响 组员:张逸凡,邓国章,李衡逸(学号顺序) 零.选题立意: 在课堂上看过了由老师演示的瘟疫在社区中由于人员随机移动的传播,并模拟了接下来由于隔离封锁导 ...

  5. 《交互媒体专题设计》之疫情模拟 设计文档

    目录 引言 设计环境 设计简介 场景设计 人物设计 功能设计 小结 引言 此次突如其来的新冠病毒疫情蔓延迅速,短短时间便蔓延全球.由于我国防控工作到位,民众团结,已经战胜了疫情.但我们作为学生,依然无 ...

  6. 交互媒体专题设计——疫情模拟

    目录 前期工作 设计思想 技术方案 场景设计 人物设计 实现思路 核心代码 模拟结果 前期工作 前期调研 相关技术介绍 技术文档 设计思想 此次突如其来的新冠病毒疫情蔓延迅速,短短时间便蔓延全球.由于 ...

  7. 交互媒体专题设计结课实验报告

    一. 作品背景及内容概述 本次作业的灵感来自于参观新媒体艺术展览的时候,不管是主要用来拍照片打卡的teamlab还是其他小众独立的个人作品展,或多或少都会用到绚丽的粒子背景.常见效果比如雨点.星辰.荧 ...

  8. Android课程设计大作业-音乐播放器

    Android课程设计大作业-音乐播放器 一.**主要实现界面效果** 1)登录界面 2)音乐列表界面 3)音乐播放界面 二.**系统设计** 1)使用Service播放音乐 2) 前台界面(Acti ...

  9. 华南理工大学计算机操作系统课程设计大作业银行家死锁避免算法模拟,2016春操作系统大作业银行家死锁避免算法模拟.doc...

    文档介绍: 2016春操作系统大作业银行家死锁避免算法模拟20160501华南理工大学"计算机操作系统"课程设计大作业计算机科学与技术专业:春2015班级:号:2015047420 ...

  10. 上海电力学院计算机软件技术大作业,计算机网络应用设计 大作业报告.doc

    计算机网络应用设计 大作业报告 上 海 电 力 学 院 课程设计(大型作业)报告 设计名称 计算机网络应用课程设计 课程代码 1305312 院 (系) 电子与信息工程学院 专 业 通信工程 班 级 ...

最新文章

  1. Java Socket通信编程
  2. Keras的回调函数
  3. mysql8.0.13安装版_windows下mysql 8.0.13 解压版安装图文教程
  4. git中的删除命令操作
  5. 文献学习(part44)--Aberrance suppresse dspatio-temporal correlation filters for visual object tracking
  6. 再来说说我喜欢的 Dotnet 5.0 C# 9
  7. 高德地图 android api 实现自动定位
  8. 机器学习基础算法26-聚类理论
  9. Xshell配合Screen之ssh会话永不断开
  10. 请问mac上下virtualBox之后无法安装VBoxGuestAdditions怎么办??
  11. MFC基于对话框程序启动时隐藏窗口的实现
  12. Gstreamer- 协商(Negotiation)
  13. 2020iOS开发工程师面试题汇总(内含面试技巧)-看完BATJ面试官对你竖起大拇指!
  14. Linux——scp的用法
  15. 如何能快速看懂一个Java项目?
  16. 介质服务器作用,爱数之介质服务器及介质同步技术
  17. 命令模式——经营烧烤摊
  18. fastjson的json字符串转List
  19. 编程之类的文案_有什么让人瞬间充满希望的文案?
  20. Could not locate zlibwapi.dll. Please make sure it is in your library path!问题解决

热门文章

  1. DP(Nietzsche)的hu测 T3(规律?主席树)
  2. 2019年的每一天日更只为等待她的出现,好好过余生,庆余年 | 掘金年度征文
  3. 成长的痛苦:流播放服务令音乐人版税受损
  4. 多步攻击场景构建和攻击链提取方法
  5. 接触式光电位移传感器的原理是
  6. 英魂之刃服务器8.8维护,英魂之刃8大联动!每一个都是良心之作!玩家:公开打脸同行?...
  7. ThinkPHP6 自定义分页样式 快速配置
  8. 【雪野实训记录】Oracle数据库 T4作业——事务和数据库对象
  9. 賀旺囍影_EDIUS6.06安装版 【实机测试】
  10. DINO:自监督ViT的新特性