![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Знатоки JSFL..
Такая задача: Помогите плз организовать такое на JSFL
__________________
Code Different |
|
|||||
|
Или подкинте пожалуста хорошую статью по JSFL с примерами..
__________________
Code Different |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
if (!fl.getDocumentDOM().library.itemExists("tile")) {
fl.getDocumentDOM().library.addNewItem("movie clip", "tile");
}
fl.getDocumentDOM().library.editItem ("tile");
for (i = 1; i < 1001; i++){
obj = {};
obj.x = (Math.random () * 300) >> 0;
obj.y = (Math.random () * 300) >> 0;
angle = Math.random () * 360 * Math.PI / 180;
fl.getDocumentDOM().library.addItemToDocument (obj, "ps" + (Math.random () * 30) >> 0);
fl.getDocumentDOM().selectAll();
sel = fl.getDocumentDOM().selection[0];
matrix = sel.matrix;
matrix.a = Math.cos (angle);
matrix.b = Math.sin (angle);
matrix.c = -Math.sin (angle);
matrix.d = Math.cos (angle);
sel.matrix = matrix;
}
Последний раз редактировалось iNils; 11.06.2008 в 20:01. |
|
|||||
|
__________________
Code Different |
|
|||||
|
Цитата:
if (!fl.getDocumentDOM().library.itemExists("tile")) {
fl.getDocumentDOM().library.addNewItem("movie clip", "tile");
}
fl.getDocumentDOM().library.editItem ("tile");
for (i = 1; i < 1001; i++){
obj = {};
obj.x = (Math.random () * 300) >> 0;
obj.y = (Math.random () * 300) >> 0;
angle = Math.random () * 360 * Math.PI / 180;
type = (Math.random () * 30) >> 0;
fl.getDocumentDOM().library.addItemToDocument (obj, "ps" + type);
fl.getDocumentDOM().selectAll();
sel = fl.getDocumentDOM().selection[0];
matrix = sel.matrix;
matrix.a = Math.cos (angle);
matrix.b = Math.sin (angle);
matrix.c = -Math.sin (angle);
matrix.d = Math.cos (angle);
sel.matrix = matrix;
}
__________________
Code Different |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Понял в чем дело.
Такая ошибка происходит, когда не добавляет элемент, поэтому выбирать на сцене нечего и selection[0] равен undefined. Для работы данного кода, у вас в библиотеке должны быть элементы с именами ps0 .. ps29, именно именами, а не идентификаторами которыми пользуются в attachMovie (это все таки JSFL, а не AS) |
|
|||||
|
Всё переименовал... Всё равно выдает ту же ошибку..
Дальше я решил попробывать добавлять определённый клип "ps13"... он всё сдублировал отлично, но самое интересное что в конечном итоге всё равно выдал ту же ошибку.. Значит насколько я понимаю ошибка в: Может к (Math.random () * 30) >> 0 , надо применить что то типа toString()?
__________________
Code Different Последний раз редактировалось vitlance; 11.06.2008 в 23:55. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Не надо. При тестировании я использовал имена: ps0, ps1, ps2, ps3, ps4 и
все прекрасно работало. Проверьте еще раз имена, диапазон 0-29, а не 0-30 или 1-30.
Также после строчки fl.getDocumentDOM().library.addItemToDocument вставьте и посмотрите какое имя вызвает ошибку. |
|
|||||
|
Всё я понял, у меня просто был ляп с именами небольшой... Спасибо большое.. Только одна просьба, можите сказать в 2 словах что делает эта часть кода:
__________________
Code Different |
![]() |
![]() |
Часовой пояс GMT +4, время: 19:07. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|