Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как загрузить мувклип из библиотеки чтобы она получилась в Bitmap (http://www.flasher.ru/forum/showthread.php?t=136569)

markII 19.02.2010 19:01

Как загрузить мувклип из библиотеки чтобы она получилась в Bitmap
 
Вот код ,который я посмотрел в хэлпе
Код AS3:

package {
    import flash.display.*;
    import flash.filters.*;
    import flash.geom.*;
 
        import flash.text.TextField;
 
    public class DisplacementMapFilterExample extends Sprite {
 
                private var container:Sprite = new Sprite();
 
        public function DisplacementMapFilterExample() {
                        var t:pic3 = new pic3();
                        var myBitmapData:BitmapData = new BitmapData(500, 500);
                        myBitmapData.draw(t);
                        var pic1:Bitmap = new Bitmap(myBitmapData);
                        addChild(pic1);
                        pic1.x = 100;
                        pic1.y = 100;
        }
 
    }
}

pic3 - мой мувклип.Ошибок не выдает,но ничего не загружается.В чем дело?Заранее спасибо

wvxvw 19.02.2010 19:37

MovieClip != BitmapData, при чем тут Bitmap - не понятно. Если хотите BitmapData - так в библиотеке должна лежать картинка.

dixus 19.02.2010 19:45

В приведенном коде вроде ошибок нет, если возможно, покажите неработающий исходник полностью.

markII 19.02.2010 23:26

Вложений: 1
вот пример.Задача состоит в том чтобы загружать этот мувклип из библиотеки и трансформировать его(придавать ему различную перспективу - типа эмуляция 3d).В мувике будет лежать растровая картинка.Читал на форуме и понял,что для таких целей лучше всего использовать фильтр DisplacementMapFilter.А он работает только с bitmap.Если есть возможность как то деформировать мувик без перевода в bitmap то подскажите как плиззззз.А ща пока что выдает ошибку
Код:

TypeError: Error #1034: Type Coercion failed: cannot convert pic3@2cbba61 to flash.display.Bitmap.at DisplacementMapFilterExample$iinit()

dixus 19.02.2010 23:32

У вас в коде почему-то все перепутано по сравнению с тем примером, что вы привели (как я догадываюсь, вы пропустили оператор new, а потом еще больше запутали код попытками исправить ошибку =)) чтобы работало, должно быть вот так:
Код AS3:

package {
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.geom.Point;
    import flash.geom.Rectangle;
    import flash.net.URLRequest;
 
 
    public class DisplacementMapFilterExample extends Sprite {
 
        public function DisplacementMapFilterExample() {
            var t:pic3 = new pic3();
            var myBitmapData:BitmapData = new BitmapData(500, 500);
            myBitmapData.draw(t);
            var image:Bitmap = new Bitmap(myBitmapData);
            addChild(image);
            image.x = 100;
            image.y = 100;
        }
    }
}


markII 20.02.2010 12:49

dixus,Спасибо!!!Вобщем мне нужно было вот что:
Код AS3:

package {
    import flash.display.*;
    import flash.events.*;
    import flash.geom.*;
    import flash.net.URLRequest;
        import fl.transitions.Tween;
        import fl.transitions.easing.*;
        import flash.ui.*;
          import flash.net.*;
        import flash.utils.getDefinitionByName;
 
 
    public class DisplacementMapFilterExample extends Sprite {
 
        public function DisplacementMapFilterExample() {
 
                        var ClassReference:Class = getDefinitionByName("pic3") as Class;
                  var t:Sprite = new ClassReference();
                        var myBitmapData:BitmapData = new BitmapData(500, 500);
                        myBitmapData.draw(t);
                        var pic1:Bitmap = new Bitmap(myBitmapData);
                        addChild(pic1);
                        pic1.x = 100;
                        pic1.y = 100;
        }
    }
}

Все работает


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

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