Показать сообщение отдельно
Старый 12.11.2010, 14:49
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 6  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Млин, специально сейчас проверил.
Ваш код в первом посте работает как надо:
Код AS3:
package {
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.Graphics;
	import flash.display.Shape;
	import flash.display.Sprite;
	import flash.display.StageQuality;
	import flash.events.Event;
	import flash.geom.Matrix;
	import flash.geom.Rectangle;
 
	public class Main extends Sprite {
 
		public function Main() {
			super();
			addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event):void {
			removeEventListener(Event.ADDED_TO_STAGE, init)
 
			var veryDifficultShape:Shape = new Shape();
			var gr:Graphics = veryDifficultShape.graphics;
			gr.lineStyle(1, 0xFF0000);
			gr.drawCircle(0, 0, 50);
 
			addChild(veryDifficultShape);
			veryDifficultShape.x = 100;
			veryDifficultShape.y = 100;
			// рисуем с хорошим качеством
			stage.quality = StageQuality.HIGH;
			var b:Rectangle = veryDifficultShape.getBounds(null);
			var bmd:BitmapData = new BitmapData(Math.ceil(b.width), Math.ceil(b.height), true, 0);
			bmd.draw(veryDifficultShape, new Matrix(1, 0, 0, 1, -b.x, -b.y));
			var bm:Bitmap = new Bitmap(bmd);
			bm.x = 300;
			bm.y = 100;
			addChild(bm);
			stage.quality = StageQuality.LOW;
		}
	}
}