Показать сообщение отдельно
Старый 31.03.2015, 20:37
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 12  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,922
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Лично у меня не получилось воспроизвести проблему в чистом проекте.
Код AS3:
package com.zackmercury
{
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.Shape;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.display.Graphics;
	import flash.geom.Point;
	import flash.text.TextField;
	import flash.utils.getTimer;
 
	/**
	 * ...
	 * @author ZackMercury
	 */
 
	public class Main extends Sprite
	{
		private var balls:Array = [];
 
		public function Main()
		{
			if (stage)
				init();
			else
				addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		public function init(e:Event = null):void
		{
			if (hasEventListener(Event.ADDED_TO_STAGE))
				removeEventListener(Event.ADDED_TO_STAGE, init);
			//entry
			var btn:MyButton = new MyButton("Test");
			btn.onClick = addBall;
			addChild(btn);
 
			addEventListener(Event.ENTER_FRAME, update);
		}
 
		private function addBall(e:MouseEvent):void 
		{
			var bmpDt:BitmapData = new BitmapData(100, 100, true, 0x00000000);
			var ball:Shape = new Shape();
			with (ball.graphics)
			{
				beginFill(0xCC9911);
				drawCircle(50, 50, 50);
				endFill();
				beginFill(0xFFAA00);
				drawCircle(50, 50, 20);
				endFill();
				beginFill(0x222222);
				drawCircle(50, 50, 5);
				endFill();
			}
 
			bmpDt.draw(ball);
 
			var bmp:Bitmap = new Bitmap(bmpDt, "auto", false);
			addChild(bmp);
			balls.push(bmp);
		}
 
		private function update(e:Event):void
		{
			for (var i:int = 0 ; i < balls.length; i ++)
			{
				balls[i].y = (1 + Math.sin(getTimer() / 1000 + i / 5)) / 2 * 400;
				balls[i].x = (1 + Math.cos(getTimer() / 1000 + i / 5)) / 2 * (800 - balls[i].width);
			}
		}
	}
}
Test.swf   (2.0 Кб)

Быть может, нужно непрозрачность понизить? Что я не так делаю?
Вложения
Тип файла: swf Test.swf (2.0 Кб, 92 просмотров)
__________________
There is no thing in this world that is not simple.