Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 02.11.2006, 05:05
sem1313 вне форума Посмотреть профиль Отправить личное сообщение для sem1313 Найти все сообщения от sem1313
  № 1  
Ответить с цитированием
sem1313

Регистрация: Feb 2006
Сообщений: 588
По умолчанию Создание BitmapData через цикл

Вопрос такой возник, делаю такую нарезку... Почему отображается только последний Битмап?
Код:
for(var i = 0; i <= 15; i++) {
	var CurPict = PictBm_mc.createEmptyMovieClip("PictEf"+i, this.getNextHighestDepth());
	CurPict.createEmptyMovieClip("Picter",0);
	var myBitmapData1:BitmapData = new BitmapData (20, MainPict._height, true, 0);
	myBitmapData1.copyPixels(myBitmapData, new Rectangle(i*20, 0, i*20+10, MainPict._height), new Point());
	CurPict.Picter.attachBitmap(myBitmapData1, 0);
	CurPict._x = i*20;
}
?


Последний раз редактировалось sem1313; 02.11.2006 в 05:40.
Старый 02.11.2006, 05:54
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Вам лучше знать, это же ваш код.
Ошибка может быть в координатах, в исходных размерах myBitmapData, отсутствии MainPict, да в чём угодно.

Старый 02.11.2006, 06:02
sem1313 вне форума Посмотреть профиль Отправить личное сообщение для sem1313 Найти все сообщения от sem1313
  № 3  
Ответить с цитированием
sem1313

Регистрация: Feb 2006
Сообщений: 588
Ошибка где то в цикле, так как до цикла все задается верно...

На всякий выложу весь код
Код:
var MainPict = _root.attachMovie("Pict1_mc", "Pict1", 100);
MainPict._visible = false;

var PictEf = _root.createEmptyMovieClip("PictEf_mc", this.getNextHighestDepth());
var myBitmapData:BitmapData = new BitmapData (MainPict._width, MainPict._height, true, 0xffffffff);
PictEf.attachBitmap(myBitmapData, this.getNextHighestDepth());
myBitmapData.draw("MainPict");
var PictBm = _root.createEmptyMovieClip("PictBm_mc", this.getNextHighestDepth());
PictEf._alpha = 30;
for(var i = 0; i <= 10; i++) {
	var CurPict = PictBm_mc.createEmptyMovieClip("PictEf"+i, this.getNextHighestDepth());
	CurPict.createEmptyMovieClip("Picter",0);
	var myBitmapData1:BitmapData = new BitmapData (20, MainPict._height, true, 0);
	myBitmapData1.copyPixels(myBitmapData, new Rectangle(i*20, 0, i*20+10, MainPict._height), new Point());
	CurPict.Picter.attachBitmap(myBitmapData1, 0);
	CurPict._x = i*20;
}

Старый 02.11.2006, 06:21
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ошибка в new Rectangle. Ширина полоски фиксирована или нет?
Дальше я разбираться не стал, там есть ещё несколько ошибок, но они не влияют на результат.

Ушёл спать.

Старый 02.11.2006, 06:27
sem1313 вне форума Посмотреть профиль Отправить личное сообщение для sem1313 Найти все сообщения от sem1313
  № 5  
Ответить с цитированием
sem1313

Регистрация: Feb 2006
Сообщений: 588
_etc, спасибо. Я тоже так подумал... Спасибо.

Старый 02.11.2006, 06:38
sem1313 вне форума Посмотреть профиль Отправить личное сообщение для sem1313 Найти все сообщения от sem1313
  № 6  
Ответить с цитированием
sem1313

Регистрация: Feb 2006
Сообщений: 588
Хотя нет, мы оба не верно подумали... Кто бы мог знать что вся загвоздка в определении глубины для PictBm_mc.createEmptyMovieClip...

Я задал конкретное приращение глубины - 100+i, и все стало на свои места... new Rectangle - соответственно не причем...

Старый 02.11.2006, 06:39
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ошибка в первой строке цикла, ты указываешь максимальную глубину (она постоянна) у this, а не у PictBm_mc, поэтому ты замещаешь предыдущий мувик новым на той же глубине.

з.Ы. Теперь точно спать.

Старый 02.11.2006, 06:57
sem1313 вне форума Посмотреть профиль Отправить личное сообщение для sem1313 Найти все сообщения от sem1313
  № 8  
Ответить с цитированием
sem1313

Регистрация: Feb 2006
Сообщений: 588
Ну да, все верно. Я тоже это заметил, но только когда понял что все Битмапы аттачатся на одну глубину...Они должны смещаются по x... Они и смещались, но затирались предыдущие...

Старый 02.11.2006, 06:58
sem1313 вне форума Посмотреть профиль Отправить личное сообщение для sem1313 Найти все сообщения от sem1313
  № 9  
Ответить с цитированием
sem1313

Регистрация: Feb 2006
Сообщений: 588
Very big санкс...

Создать новую тему Ответ Часовой пояс GMT +4, время: 01:27.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 01:27.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.