Флэш-приложения: механика — различия между версиями

Материал из Department of Theoretical and Applied Mechanics
Перейти к: навигация, поиск
(Средства разработки флэш-приложений)
Строка 3: Строка 3:
 
== Случайное блуждание ==
 
== Случайное блуждание ==
  
[http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D1%87%D0%B0%D0%B9%D0%BD%D0%BE%D0%B5_%D0%B1%D0%BB%D1%83%D0%B6%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5 Случайное блуждание] — процесс, состоящий из последовательного суммирования случайных шагов. Имеет огромное количество приложений в самых различных областях знаний — например [http://ru.wikipedia.org/wiki/%D0%91%D1%80%D0%BE%D1%83%D0%BD%D0%BE%D0%B2%D1%81%D0%BA%D0%BE%D0%B5_%D0%B4%D0%B2%D0%B8%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 броуновское движение] частицы в жидкости или колебания цен на бирже. Ниже представлена простейшая модель двумерного случайного блуждания — на каждом шаге к координатам точки с равной вероятностью добавляется -1, 0 или 1. Для наглядности также случайно меняется цвет точки. Разработчики [[А. Кривцов]], [[А. Пшенов]].
+
[http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D1%87%D0%B0%D0%B9%D0%BD%D0%BE%D0%B5_%D0%B1%D0%BB%D1%83%D0%B6%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5 Случайное блуждание] — процесс, состоящий из последовательного суммирования случайных шагов. Имеет огромное количество приложений в самых различных областях знаний — например [http://ru.wikipedia.org/wiki/%D0%91%D1%80%D0%BE%D1%83%D0%BD%D0%BE%D0%B2%D1%81%D0%BA%D0%BE%D0%B5_%D0%B4%D0%B2%D0%B8%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 броуновское движение] частицы в жидкости или колебания цен на бирже. Ниже представлена простейшая модель двумерного случайного блуждания — на каждом шаге к координатам точки с равной вероятностью добавляется -1, 0 или 1. Для наглядности также случайно меняется цвет точки.  
  
 
{| class="simple" border="1"
 
{| class="simple" border="1"
Строка 21: Строка 21:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 +
 +
Текст программы на языке [http://ru.wikipedia.org/wiki/ActionScript ActionScript] 3.0 (разработчики [[А. Кривцов]], [[А. Пшенов]]): <toggledisplay status=hide showtext="Показать↓" hidetext="Скрыть↑" linkstyle="font-size:default">
 +
<pre>
 +
package
 +
{
 +
import flash.display.Shape;
 +
import flash.display.Sprite;
 +
import flash.events.Event;
 +
 +
public class Main extends Sprite
 +
{
 +
public var start : Number = 0;
 +
public var d : Number;
 +
 +
public function Rand() : Number
 +
{
 +
return Math.floor(3 * Math.random()) - 1;
 +
}
 +
 +
public function RandomWalk(e:Event) : void
 +
{
 +
if (start == 0)
 +
{
 +
start = 1;
 +
d = 10;
 +
x = stage.stageWidth / 2;
 +
y = stage.stageHeight / 2;
 +
}
 +
else
 +
{
 +
x = x + d * Rand();
 +
y = y + d * Rand();
 +
if (x < 0) x = x + stage.stageWidth;
 +
if (x > stage.stageWidth) x = x - stage.stageWidth;
 +
if (y < 0) y = y + stage.stageHeight;
 +
if (y > stage.stageHeight) y = y - stage.stageHeight;
 +
}
 +
 +
var s : Shape = new Shape();
 +
 +
var colour : uint = Math.floor(Math.random() * 0xffffff);
 +
s.graphics.beginFill(colour, 1);
 +
 +
s.graphics.drawRect(x, y, d-1, d-1);
 +
 +
stage.addChild(s);
 +
}
 +
 +
public function Main():void
 +
{
 +
stage.addEventListener(Event.ENTER_FRAME, RandomWalk);
 +
}
 +
 +
}
 +
 +
}
 +
</pre>
 +
</toggledisplay>
 +
  
 
== Другие страницы на сайте, использующие флэш-приложения ==
 
== Другие страницы на сайте, использующие флэш-приложения ==

Версия 16:57, 23 декабря 2012

На этой странице располагаются простые флэш-приложения, демонстрирующие интересные математические или физические процессы.

Случайное блуждание

Случайное блуждание — процесс, состоящий из последовательного суммирования случайных шагов. Имеет огромное количество приложений в самых различных областях знаний — например броуновское движение частицы в жидкости или колебания цен на бирже. Ниже представлена простейшая модель двумерного случайного блуждания — на каждом шаге к координатам точки с равной вероятностью добавляется -1, 0 или 1. Для наглядности также случайно меняется цвет точки.

play=true|height=640|width=800</flash>


Со случайным блужданием связано много интересных математических фактов, скажем, в двумерном случае вероятность возвращения точки в исходное положение — единица, а матожидание времени возвращения — бесконечность. В трехмерном случае вероятность возвращения уже меньше единицы. Ниже представлены реализации того же приложения в меньших окнах, позволяющие сравнить несколько случайных блужданий.


play=true|height=320|width=400</flash> play=true|height=320|width=400</flash> play=true|height=320|width=400</flash>


Текст программы на языке ActionScript 3.0 (разработчики А. Кривцов, А. Пшенов): <toggledisplay status=hide showtext="Показать↓" hidetext="Скрыть↑" linkstyle="font-size:default">

package 
{
	import flash.display.Shape;
	import flash.display.Sprite;
	import flash.events.Event;
	
	public class Main extends Sprite 
	{
		public var start : Number = 0;
		public var d : Number;

		public function Rand() : Number
		{
			return Math.floor(3 * Math.random()) - 1;
		}
		
		public function RandomWalk(e:Event) : void
		{
			if (start == 0) 
			{
				start = 1;
				d = 10;
				x = stage.stageWidth / 2;
				y = stage.stageHeight / 2;
			} 
			else
			{
				x = x + d * Rand();
				y = y + d * Rand();
				if (x < 0) x = x + stage.stageWidth;
				if (x > stage.stageWidth) x = x - stage.stageWidth;
				if (y < 0) y = y + stage.stageHeight;
				if (y > stage.stageHeight) y = y - stage.stageHeight;
			}
			
			var s : Shape = new Shape();
			
			var colour : uint = Math.floor(Math.random() * 0xffffff);
			s.graphics.beginFill(colour, 1);
			
			s.graphics.drawRect(x, y, d-1, d-1);
			
			stage.addChild(s);
		}
		
		public function Main():void 
		{
			stage.addEventListener(Event.ENTER_FRAME, RandomWalk);
		}
		
	}
	
}

</toggledisplay>


Другие страницы на сайте, использующие флэш-приложения

Средства разработки флэш-приложений

Разработка ведется на языке ActionScript 3.0. Для работы необходимо установить:

Советы по установке

Флэш-уроки на русском языке

См. также