Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как можно вывести BitmapData / Bitmap (http://www.flasher.ru/forum/showthread.php?t=76042)

dipter 25.02.2006 14:07

Как можно вывести BitmapData / Bitmap
 
Не могу сообразить как можно вывести BitmapData / Bitmap на экран. У меня есть package map в котором я хочу создавать эту Bitmap, выводить ее нужно не сразу, а тогда когда она нарисуется (создаю я ее в таймере, просто нужно в ней нарисовать слишком много объектов и если буду делать через цикл, то будет тормозить). Если бы не было таймера, то все просто в map создаю ф-ю которая возвращает эту Bitmap, а вот как сделать чтобы она возвращала картинку после прорисовки последнего объекта я не могу понять?

Как вариант можно было бы из map делать this.addChild(), но такое не проходит…….

Antares 25.02.2006 18:31

Из BitmapData делаем Bitmap и цепляем его с помощью addChild

dipter 25.02.2006 19:02

Именно прицепить и не получается т.к. в отдельном package, addChild не срабатывает.

Antares 25.02.2006 19:04

Цитата:

Сообщение от dipter
Именно прицепить и не получается т.к. в отдельно package, addChild не срабатывает.

Отдельно package?

dipter 25.02.2006 20:05

Ну ошибся, я в отдельном package. Я создаю package для прорисовки данной Bitmap (например package map), a затем мне нужно ее вывести на экран, я пробовал делать ф-ю, которая возвращает мне эту картинку, а затем я ее добавляю на экран (stage). Но из-за того что мне нужно прорисовать очень много объектов (если рисовать в цикле то требуется примерно 3 секунды, т.е. на 3 секунды все виснет), я хочу сделать так чтобы прорисовка шла не в цикле, а в таймере (например по 1мс на один объект). Далее мне нужно чтобы после прорисовки последнего объекта данная Bitmap добавлялась на экран если я пропишу addChild в package map, то картинка не выводиться.

Antares 25.02.2006 22:02

А должна? Вам не кажется, что нужно создать хотя бы один класс и работать в нем?
AS3 позволяет помещать функции в пакеты, но функции, а не голый код. Плюс, addChild нужно вызывать у определеного объекта.

dipter 26.02.2006 09:57

Естественно у меня в пакете есть и ф-я и класс (например package - map, class - cl , а ф-я - fu (а именно в этой ф-ии запускается таймер на создание Bitmap)), затем из главного пакета я создаю объект (ob=new cl(), конечно перед этим я импортирую пакет), а затем вызываю ф-ю (ob.fu()), так вот здесь и возникает вопрос если бы ф-я fu() возвращаля bitmap, то все нормально я бы в главном пакете (тоже не знаю как его назвать) написал addChild(ob.fu()), и на экране бы появилась нужная картинка, но так как fu() запускает лишь таймер, то приходится делать еще одну ф-ю (в пакете map), которая будет циклически выполняться каждые 2 мс и когда создастся последний объект мне нужно сделать addChild() (но именно в пакете map или каким-то образом вернуть значение Bitmap в главный package....

BlooDHounD 26.02.2006 13:13

пакет - является контейнером классов, функций, переенных.
его нельзя отобразить визуально, так как его вообще не существует. он создан для обращения к тому что в нём лежит.
если Вам нужно что-то отобразить, то разберитесь что такое класс.

dipter 26.02.2006 14:58

Ок, попытаюсь сообразить...

Antares 27.02.2006 01:17

Пакеты созданы для того, чтобы два разных класса с одним именем не путались. Для избежания конфликтов. Другое название пакета -- пространства имен (namespaces). И все.


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

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