c语言足球从100米下落,使用c语言计算与模拟足球射门.docx

  • Post author:
  • Post category:其他

使用C语言计算与模拟足球射门 【4】

1引言

c语言是近年来在国内外得到迅速推广应用的一种计算机语言。c语言功能丰富、使用

灵活方便、应用面广、目标程序效率高、可移植性好,既有高级语言的优点,又有低级语言 的许多特点。【1, Turbo C是在微机上广泛使用的编译程序。它具有方便、直观、易用的界面

和丰富的库函数。它向用户提供一个集成环境,把程序的编辑、编译、连接和运行等操作全

部集中在一个界面上进行,使用十分方便。采用C语言编写的程序易懂,较为直观,对硬件

要求比较低【1,

TOC \o “1-5” \h \z 计算机模拟是在计算机上通过系统模型模拟一个实际存在或正在设计中的真实系统,以

再现(实现可视化)或分析(数值计算)真实系统的本质特征,并以证明实际问题的可信性。【6,

【7,动画可突出并强化要表达的事物特征,生动形象的模拟事物的运动等。用C语言提供的

各种实现方法来制作动画都各有其优点,本文利用改变图像坐标的方法来模拟足球射门。使 用该方法编写的源程序比较通俗易懂。

2C语言制图与计算机动画技术

2.1 C语言制图简介

Turbo C中有丰富的图形函数,它支持CGA,EGA,UG等多种显卡及多种图形显示模式,

提供了画点、线、圆、椭圆、多边形等绘图功能,还提供了颜色控制、图形填充和线条模式 等功能。可以利用C语言提供的许多图形函数来方便、快速的实现动画,且动画效果另人满

意。在Turbo C语言中实现动画的方法有很多种,如目标移动方法、显示页和编辑页交替变 化方法、画面存储和再重放方法等等【2】。

目标移动方法是利用 C语言提供的多种画图函数将图形画好以后,在时间上取间隔非常 小的时间段来不断改变图象的在屏幕上的坐标以达动画效果。

显示页和编辑页交替变化方法是将当前显示页和编辑页分开,在编辑页上画好图形后, 立即令该页变为显示页显示。然后再上次的显示页上(现在变为编辑页)进行画图,画好后 又再次进行交换。如此编辑页和显示页反复交换, 在观察者的视觉中,就出现了动画的效果。

画面存储和再重放方法如同制作幻灯片一样,将整个动画过程变成一个个片段,然后存

储到显示缓冲区,当把它们按顺序重放到屏幕上时,就出现了动画效果。【2,

2.2计算机动画技术

计算机动画是借助计算机生成一系列动态演示的图形、图像的技术。动画的实现过程是:

首先在屏幕的当前未知画对象并保持一定的时间;接着从屏幕的当前未知删除对象;然后在

屏幕上新位置上画对象, 这样就产生了动画效果 【2】。由于动画具有直观,形象,生动等特点, 故采用动画技术,可突出并强化要表达的事物特征,生动形象的模拟事物的运动等。随着计

算机动画技术的迅速发展,它的应用领域日益扩大,制作计算机动画使用的工具也日益繁多。

比如:Flash,3D Studio ,3DMAX?。

3使用C语言描述抛体运动

3.1抛物运动

抛体运动是发生在竖直平面内的二维空间的运动。在抛体运动中,被抛物体主要受重力

和空气摩擦力影响, 在这里,忽略空气的影响,假设物体以初速度 SPEED沿与水平方向成B 0角的方向被抛出。程序中,初速度用SPEED表示,角度用 Angle表示,足球射出点与球门

的距离用LONGS表示,球门高度用 H表示。

3.2动画原理

在利用Turbo C来编写图形代码时,要能够准确的确定图形在显示器上的坐标。显示器 的屏幕如同一张坐标纸,可用x,y坐标值表示图形上任一点的位置。显示屏的坐标从左上角

(0,0)开始,正x轴向右延伸,正 y轴想下延伸,为一个倒置的直角坐标系。x和y均为大

与0的数值,其最大值由显示器的类型和模式决定。【2】

利用人的视觉暂留这一生理特点(即对动态的图象变化,仅能分辨出时间间隔为25毫

秒左右的变化,若太快,则不能分辨出来)。将一个图象分解成不同时间出现的图象,然后

一张张快速的呈现在屏幕上。从视觉效果上看,就如同这些画面在连续的改变,因而给人以

动的视觉效果。【2】

本设计中,在利用画图函数(fillpoly(i nt numpoi nts,i nt far * polypo ints))画出

所需要的组合图形以后,以足够小的时间间隔(本设计中取0.0005S为单位)来刷新和改变 图象位置。由于刷新的速率比人视觉能分辨的要小,呈现在屏幕上的也就成了动的视觉效果。

4源程序解析

4.1头文件

#i nclude”stdio.h”

#in elude”math.h”

#i nclude”con io.h”

#i nclude”stdlib.h”

#in clude”graphics.h”

#i nclude”alloc.h”

stdio.h 中标准文件输出,是专门用与DOS的标准