![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2005
Адрес: Литва
Сообщений: 195
|
Что и? Я и спрашиваю, как можно порезать на более мелкие состовляющие клипы один большой! Что же не понятного-то?
|
|
|||||
|
[+1 22.07.07]
|
клади сверху маску... т.е. у превого инстанаса маска начинается от 0,0... у второго инстанас с 100,0... и .т.д... наверное есть что-то и более эффективное.. |
|
|||||
import flash.geom.*;
import flash.display.BitmapData;
createEmptyMovieClip("mc",0);
with(mc){
lineStyle(1,0xFF0000);
beginFill(0xFF0000);
lineTo(100,0);
lineTo(100,100);
lineTo(0,100);
lineTo(0,0);
}
var n:Number = 4;
var m:Number = 4;
var btp:BitmapData = new BitmapData(mc._width,mc._height);
var pieces:Array = new Array();
btp.draw(mc);
for(var i=1;i<=n;i++){
for(var j=1;j<=m;j++){
pieces.push(new BitmapData(btp.width/n,btp.height/m));
pieces[pieces.length-1].copyPixels(btp,new Rectangle((i-1)*btp.width/n,(j-1)*btp.height/m,btp.width/n,btp.height/m), new Point(0,0));
}
}
var piece:MovieClip;
var counter:Number = 0;
for(var i=1;i<=n;i++){
for(var j=1;j<=m;j++){
piece = createEmptyMovieClip("piece"+_root.getNextHighestDepth(),_root.getNextHighestDepth());
piece.attachBitmap(pieces[counter],0);
piece._x = 100+i*(piece._width+10);
piece._y = 100+j*(piece._height+10);
counter += 1;
}
}
|
|
|||||
|
[+1 22.07.07]
|
2 bigDan: я как понял:
- прочерчивается mc размером 100х100 - делается новый BitmapData размером с mc - в этот BitmapData мы рисуем наш mc ?? {в цикле: - в массив запихиваем новый BitmapData размером с btp/n (где n - кол-во кусков) - в данный BitmapData переносим (.copyPixels) фрагмент из btp..} - потом создаем на сцене кусочки - добавляем в них битмапы из нашего массива... ? |
|
|||||
|
правильно
![]() |
|
|||||
|
[+1 22.07.07]
|
потенциально вместо нашего вычерченного mc мы могли туда забить любоый растр?
|
|
|||||
|
Регистрация: Sep 2005
Адрес: Литва
Сообщений: 195
|
Большое спасибо за совет!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 01:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|