Показать сообщение отдельно
Старый 14.11.2006, 23:36
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 3  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Ну вобще-то говоря 100 на 100, это 10'000 клипов, что является весьма трудоемкой задачей. А код такой:
Код:
import flash.display.BitmapData;
/*
mc - клип который надо разобрать
parent - место создания клипов-пикселей
xOffset - смещение по оси x для создаваемых клипов-пикселей внутри parent
yOffset - смещение по оси y для создаваемых клипов-пикселей внутри parent
*/
function clipToPixels (mc:MovieClip, parent:MovieClip, xOffset:Number, yOffset:Number) {
	var bmp:BitmapData = new BitmapData (mc._width, mc._height, true, 0xFF);
	bmp.draw (mc);
	for (var i:Number = 0; i < mc._width; i++) {
		for (var j:Number = 0; j < mc._height; j++) {
			var mcPixel:MovieClip = parent.createEmptyMovieClip ("mcPixel" + parent.getNextHighestDepth (), parent.getNextHighestDepth ());
			mcPixel._x = xOffset + i;
			mcPixel._y = yOffset + j;
			mcPixel.attachBitmap (new BitmapData (1, 1, true, bmp.getPixel32 (i, j)), 0);
		}
	}
	bmp.dispose ();
}
clipToPixels (mc, this, 10, 10);
__________________
(и)Нильс.ru | Плагины для FlashDevelop