`
hacker47
  • 浏览: 340430 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

AS3运动学基础-正弦运动

 
阅读更多



package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	
	/**
	 * ...
	 * @author hacker47
	 */
	public class Main extends Sprite 
	{
		private var angle:Number = 0;
		private var speed:Number = .05;
		private var range:Number = 200;
		private var vx:Number = 1;
		
		private var startx:Number=100;
		private var starty:Number=300;
		
		
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			this.graphics.lineStyle(2,0xff0000,1,true);
			this.graphics.moveTo(startx, starty);
			addEventListener(Event.ENTER_FRAME, function running(e:Event):void {
				var dx:Number = startx + vx;
				var dy:Number = starty+Math.sin(angle) * range;
				angle += speed;
				graphics.lineTo(dx, dy);
				startx = dx;
				trace(angle);
			});
		}
		
	}
	
}




package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	
	/**
	 * ...
	 * @author hacker47
	 */
	public class Main1 extends Sprite 
	{
		private var angle:Number = 0;
		private var speed:Number = .05;
		private var range:Number = 200;
		private var vx:Number = 1;
		
		private var startx:Number=100;
		private var starty:Number=300;
		
		
		public function Main1():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			this.graphics.lineStyle(2,0xff0000,1,true);
			this.graphics.moveTo(startx, starty);
			addEventListener(Event.ENTER_FRAME, function running(e:Event):void {
				var dx:Number = startx + vx;
				var dy:Number = starty+Math.sin(angle) * range;
				angle += speed;
				graphics.lineTo(dx, dy);
				startx = dx;
				if ((angle * 180 / Math.PI) > 360) {
					range-= 30;
					angle = 0;
					trace("一个周期");
				}
			});
		}
		
	}
	
}








package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	
	/**
	 * ...
	 * @author hacker47
	 */
	public class Main2 extends Sprite 
	{
		private var angle:Number = 0;
		private var speed:Number = .05;
		private var range:Number = 200;
		private var vx:Number = 2;
		
		private var startx:Number=100;
		private var starty:Number=300;
		
		
		public function Main2():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			this.graphics.lineStyle(2,0xff0000,1,true);
			this.graphics.moveTo(startx, starty);
			addEventListener(Event.ENTER_FRAME, function running(e:Event):void {
				var dx:Number = startx + vx;
				var sin:Number = Math.sin(angle);
				if (sin > 0) sin *= -1;
				var dy:Number = starty+sin * range;
				angle += speed;
				graphics.lineTo(dx, dy);
				startx = dx;
				if ((angle * 180 / Math.PI) > 180) {
					range-= 30;
					angle = 0;
					trace("一个周期");
					if (range < 0) {
						removeEventListener(Event.ENTER_FRAME, running);
					}
				}
			});
		}
		
	}
	
}




  • 大小: 17.2 KB
  • 大小: 46.6 KB
  • 大小: 38.9 KB
分享到:
评论

相关推荐

    as入门数学函数--Math类

    `Math.cos()`和`Math.sin()`函数分别用于计算给定角度的余弦和正弦值,常用于圆形运动、波形模拟等场景。由于它们的周期性,这些函数在创建循环动画、音乐可视化等方面发挥着重要作用。 #### 6. Math.exp()与Math....

    as3.0 正弦波动图 球随机变动图 鼠标箭头追踪

    自己编写demo,供广大想学习flash游戏的初学者使用。 本demo包含三个例子。...一个圆通过正弦原理绘制的随机变动动态运动例子。可以通过改变速度使球呈现不同运动状态。 3.一个箭头始终指向,鼠标方向。

    精彩编程与编程技巧-用VB绘制正弦动画曲线...

    在计算机图形学领域,利用编程语言绘制各种形状及动态效果是一项重要的技能。本文将详细介绍如何使用Visual Basic(简称VB)编程语言来实现一个正弦动画曲线的绘制过程。 #### 一、基础知识概述 在开始之前,我们...

    as3 bimapdata 波浪效果

    在本文中,我们将深入探讨AS3(ActionScript 3)中的波浪效果及其实现方法,主要基于提供的“波浪效果as3”压缩包文件。AS3是Adobe Flash平台的主要编程语言,广泛用于创建互动内容、游戏和动画。波浪效果是一种常见...

    [Flash as3.0动画教程]文字版

    - **发展**: AS3.0是在AS2.0的基础上进行了重大改进,提高了性能并增加了更多的面向对象编程功能。 - **特性**: 支持更强的数据类型、面向对象编程(OOP)等。 **2.3 类和面向对象编程** - **2.3.1 基类**: 是类的...

    游戏编程数学与物理基础.pdf

    - 动力学基础:介绍了牛顿运动定律及其在游戏中的应用。 - 能量守恒原理:探讨了动能和势能的概念及其在游戏开发中的作用。 - 运动方程:通过数学公式解释了物体在各种力的作用下的运动规律。 3. **空间运动** ...

    VB VB实现画正弦曲线、余弦曲线

    这是一种基础的图形绘制功能,对于初学者来说,理解和实现这样的程序能帮助他们深入理解计算机图形学的基本原理。下面我们将详细探讨如何使用VB来实现这一目标。 首先,我们需要了解正弦和余弦曲线的数学概念。正弦...

    actinscript3国外教程,翻译成中文

    ActionScript 3(AS3)是Adobe Flash Platform中的编程语言,用于创建互动式网页内容、游戏和应用程序。这个“actinscript3国外教程”显然是一份详细的资源,旨在帮助中文学习者掌握ActionScript 3的基础知识,特别...

    AS3.0 Flash 水波纹 flash特效

    3. **波纹计算**:水波纹的运动可以通过数学公式来模拟,例如基于正弦或余弦函数来创建周期性的起伏。这些函数可以帮助我们生成平滑的波动效果。每个波纹可能有其独特的振幅、频率和相位。 4. **位置更新**:根据...

    高一物理第一学期期中调研测试试卷1[精选].doc

    【知识点】 1. 时间与时刻的区别:题目中提到的“计时数据指时间”,强调了时间是一个时间段,例如刘翔跨栏用时11.2s。...这些知识点涵盖了高一物理的基础内容,包括力、运动学、动力学和能量等方面。

    flex_Actionscript3

    ##### 3.1 三角学基础 三角学在计算角度、方向和距离等方面非常有用。 - **角**:使用弧度或度来表示。 - **三角函数**:包括正弦、余弦、正切及其反函数。 - **旋转**:利用三角函数来计算旋转角度。 ##### 3.2 ...

    Flash ActionScript 3.0动画教程中文版高清晰.pdf

    这份教程不仅涵盖了Flash ActionScript 3.0动画的基础知识,还深入探讨了高级技术,如三角学在动画中的应用、渲染技术、物理运动模拟以及用户交互设计,为读者提供了全面的动画制作技能。无论是初学者还是有经验的...

    高一物理学科下册竞赛试题[精选].doc

    【知识点详解】 1. **牛顿第二定律与力...这些知识点涵盖了高一物理中的基础力学部分,包括牛顿定律、运动学、动力学、实验方法以及匀变速直线运动的计算。在解答竞赛试题时,学生需要熟练掌握这些概念并能灵活应用。

Global site tag (gtag.js) - Google Analytics