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

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

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

Регистрация: Jan 2011
Сообщений: 27
По умолчанию Непростое копирование мувиклипа.

Задача многократно скопировать мувиклип, особенность: Внутри него другие мувиклипы каждый из которых остановлен на определенном кадре.

Добавлено через 46 минут
Мой вопрос слишком простой или слишком сложный ? Почему никто не может помочь.


Последний раз редактировалось kotbuterbrod; 04.01.2011 в 10:16.
Старый 04.01.2011, 11:14
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 2  
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
ну, как вариант, можно создать еще один экземпляр этого мувиклипа (его класс должен существовать в библиотеке), пройтись по его вложенным мувмклипам и выставить на нужных кадрах.

Но, вообще-то, то делается не совсем так.

Старый 04.01.2011, 11:22
kotbuterbrod вне форума Посмотреть профиль Отправить личное сообщение для kotbuterbrod Найти все сообщения от kotbuterbrod
  № 3  
kotbuterbrod

Регистрация: Jan 2011
Сообщений: 27
Вот в этом то и проблема, пройтись по ним не так просто их много и данные для них, грузятся из базы данных в общем, будет не очень технично. Я думал может есть какая то возможность создать копию экземпляра - я честно говоря думал, что это и есть сильная сторона ООП.

Старый 04.01.2011, 11:39
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 4  
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Метода clone() для мувиклипов нет.
Можете его написать сами.
Но в итоге все равно все сведется к порождению экземпляра определенного класса и установке для него соответствующих параметров.

Впрочем, возможно, имеет смысл погуглить.
Может, уже существует какое-нибудь готовое решение.

Старый 04.01.2011, 11:46
kotbuterbrod вне форума Посмотреть профиль Отправить личное сообщение для kotbuterbrod Найти все сообщения от kotbuterbrod
  № 5  
kotbuterbrod

Регистрация: Jan 2011
Сообщений: 27
Вроде бы такая такая насущная проблема, и такое не очевидное решение..... Да я уже и гуглил и яндексил и даже альтавистил....

Может быть имеется способ снять как-то как растр изображение.... смотрел bitmapData не понял про мой это случай или нет.

Задача то простейшая в двух местах отобразить один мувик.....

Старый 04.01.2011, 11:53
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 6  
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
все с точностью до наоборот
при правильном подходе Вы никогда не столкнетесь с такой задачей

ЗЫ. Это, кстати, общее правило в AS3 - если что-то не имеет простой и ясной реализации, значит надо решать иначе.

Добавлено через 2 минуты
Цитата:
Может быть имеется способ снять как-то как растр изображение....
без проблем
http://help.adobe.com/ru_RU/AS3LCR/F...tml#draw%28%29

что все-таки на самом деле-то надо?

Старый 04.01.2011, 11:58
kotbuterbrod вне форума Посмотреть профиль Отправить личное сообщение для kotbuterbrod Найти все сообщения от kotbuterbrod
  № 7  
kotbuterbrod

Регистрация: Jan 2011
Сообщений: 27
Хотелось бы понять как мог бы выглядеть правильный подход, в данных условиях, если вам не сложно.

Добавлено через 4 минуты
На самом деле надо описанный мувиклип отобразить в разных частях экрана.

Старый 04.01.2011, 12:07
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 8  
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
на мой взгляд, правильный подход выглядит примерно так:

1. Есть некий класс ComplexMovieClip, который описывает целиком этот сложный мувиклип, собирает его и знает его конфигурацию и текущее состояние.

2. В этом классе есть метод getParameters(), который считывает параметры существующего экземпляра мувиклипа, и setParameters(), который их "накатывает" на новый экземпляр мувиклипа. Сами параметры передаются, например, XMLList'ом или просто в виде объекта.

3. Процесс клонирования реализуется так:

Код AS3:
// currentMC - существующий мувиклип
var newMC:ComplexMovieClip = new ComplexMovieClip();
newMC.setParameters(currentMC.getParameters());
addChild(newMC);

Старый 04.01.2011, 12:17
kotbuterbrod вне форума Посмотреть профиль Отправить личное сообщение для kotbuterbrod Найти все сообщения от kotbuterbrod
  № 9  
kotbuterbrod

Регистрация: Jan 2011
Сообщений: 27
По размеру кода это будет сопоставимо. С тем, что бы вручную все назначать .... если не больше..... вот тебе и ООП.... а правильность или неправильность это вопрос второй если у меня "неправильный код" состоит из трех строчек а "правильный" из семи и в выполнении между ними нет разницы, то зачем платить больше ? Спасибо за советы, просто я думал, что в ООП это решается разом. Я тогда уж лучше bitmapData использую

Старый 04.01.2011, 12:25
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 10  
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Сделайте в AS2
там MovieClip.duplicateMovieClip есть

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

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

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


 


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


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