ActionScript 3.0 :: Pass A Bitmap Between Two Custom Classes?
Mar 22, 2010
I have two custom as3 classes, TriviaGame and TriviaQuestion, and I am attempting to retrieve a bitmap image stored in TriviaQuestion and have found it impossible thus far.
It seems the root of my problem is that bitmap is somehow null in my GetImage() function, even though it is class data that has been set earlier in ImageLoaded(). The only time I am able to access the bitmap's info (in order to add it to the display) is inside ImageLoaded().
In TriviaQuestion.as, loading the image:
private function XMLLoadedHandler (e:Event):void
{
xml = new XML(e.target.data);
I know the topic of "duplicating" movieclips is a hot issue with the new virtual machine. Luckily, I understand the implications. I only am [currently] interested in duplicating a Bitmap. See, I load an image from an URL using 'flash.display.Loader.load', which is a non-blocking operation in Flash Player.However,I may use multiple copies of the loaded image (which is reported to be a Bitmap, naturally) in the display list at the same time.Hence, I naturally do not want to load the image from an URL every time, because I don't want to wait for a non-blocking call to complete. Nor do I need to - I mean one copy is already loaded, so it should be possible to just "duplicate" it, right?
My idea is to do use the bitmapData property of a Bitmap and pass it to the constructor of a new Bitmap object. I have not tried the following in action, but I want to hear whether any of you did and if the following would not work, what would:
Code:
var original_bitmap: Bitmap; var copy_of_original_bitmap: Bitmap = new Bitmap(original_bitmap.bitmapData);
LiveDocs mention that the BitmapData being passed to a Bitmap constructor is "being referenced", which to me might suggest it cannot be used twice? There is also the BitmapData::clone() method, which I am not sure is applicable here or not.I know this is a lot of talk instead of just trying this out, but I test so much Flash Player code daily just to see "what works" (which should be documented instead by Adobe),
I've created a base class to house some basic functions I'd like to have across several movie clips in a game I'm making, however, when I link a custom class to the same movie clip I get the message; "The base class will not be used because the class specified is already defined and extends its own subclass. If you wish to use the base class, specify a class name in the Class field that will be auto-generated or enter the default base class 'flash.display.MovieClip' in the Base Class field." I removed the 'extends MovieClip' inside the Class but it still shows the message. Does this mean that I cannot use a custom class and a custom base class on a movie clip?
i m making a drawing application .i want to save my drawing wit out bitmap classs because when i reload that it is not editable. So can any one tell me how to save my drawing to server with out bitmap .because i want to reuse it in flash.
I want to send the contents of a variable to a class where it can be used in its functions. Since I have no experience with object orientated programming what so ever I tried to break it down into real simple code so I can understand better what's going on and how I can implement it in my main code.I made a test file and a test class, basicly I just want to give a variable contents in my main code, then send the variable to the class so the class can trace it. But no matter how I try it i always get "Testoop.as, Line 6 1120: Access of undefined property test.Here is the code:
so this is the FLA: import Testoop; var test:String;
I've traditionally all my as3 code in one included .as file, not as packages / class files, but I'm trying to make that transition. I'm a little confused about how to pass information back and forth among class files though. For example, what I'm trying to make is a sort of node diagram where clicking on a certain node will sprout out its child nodes, and clicking on a child node will sprout out its children, etc. I have a main class, Main.as, which I was going to make parse an XML document and store an array of all the relevant data for each node (things like a title, link, etc). Then I have a class file called Node.as which actually builds the node, adds it to the stage, and sets up its listeners and the motion tweens.
My question is - if all the information for the nodes is stored in Main.as, but the click handling is done in Node.as, how does Node.as know what attributes to assign to each added node (i.e., how does it access the array from Main.as to assign properties to the clips created)?[code]...
ive written a class to control my content panels on my site. They work well! Currently they controll all the positioning perfectly on there own. What I am having trouble with, is how do i pass variables into my classes. For instance, my main content panel, has variables in the class: public var contentState:Number; Now, what I would like to do, is have movieClips on my stage, or 'buttons' that will be able to change 'contentState' within my class.How do i go about passing these variables?[code]
I need to pass a boolean variable initially set to false to one of my classes called "EasyGame".It is than changed to true when one of the function in this class is runned.
What I want to do is pretty simple but I must not know how to do it. I want the URLFactory to create the Array and store it in the variable "dataArray" and use the Array in the Main class by calling the GetList() of the URLFactory class. What I have returns nothing...
Basically I need to set a variable equal to URLLoader.data (var something:String = URLLoader.data) so I can use this variable in other classes.
There are many tutes on the web on how to make interface elements, such as drop down menus, or accordion menus. The example Menu Class includes all the event listeners and functions. It invariably ends with the CLICK event function tracing some comment so you know it works. But no information on how to implement the Menu Class. So say you have a Main Document Class that instantiates a Menu Class. How can you pass the CLICK event back to the Main Document Class to do something with it? As far as I can see, the Menu Class can build the menu but all the listeners and functions for it have to reside in the Main Document Class. Or do you have to build a custom Class that extends the Event Class?
I use multiple custom classes like tweenlite, csvparse, papervision and many more. The way I do is put them in one central location and edit Flash CS4 Actionscript 3.0 settings to include that location.The problem I face is even though I don't use all the classes in a project, flash CS4 compiles every single class that is in that central location eventually increasing my compile time by minutes.
Is there any way to get a list of custom classes? I'd like to be able to dynamically access the custom classes (that I've created by the "Export for Actionscript" checkbox in the "Linkage" dialog) without having to hard-code their names into the script.
How do you shift the colors of a bitmap image, with a red/yellow cloud, so that red becomes orange, then yellow, then orange, then red again? The yellow should go trough the same process, but start and end with yellow. Same with all the other colors in between.Kind of like when you play with the hue-setting in photoshop, but instead of looping trough the whole spectrum, it only loops trough red>orange>yellow>orange>red.
[code]This is my document class, with the Textfields beeing placed on stage.While this all compiles and displays fine I do not get the trace output for the text fields, actually the only trace I get is "constructing". I tried it without the "each" keyword but to no avail as well.
I'm looking to extend Vector.<T>, but it's final, so I'm going to have to include it as a member instead.Regardless, I'd like to make the wrapper class type independant, so I was wondering what the snytax for template classes are.
i'm still in the process of grasping my move from AS2 to AS3 (or from timeline coding to external classes), and here's a problem i've run into.i have two classes, for the sake of easiness, call them Class1 and Class2.in frame 1, if i have
ActionScript Code: var c1:Class1 = new Class1(); var c2:Class2 = new Class2();
I'm trying to get a button to change color via a Custom class written in ActionScript. I have built and attached an example to show you all what I'm trying to achieve. The code works perfectly with a MovieClip, but when I try to apply it to a Button, it falls flat (can't even find the reference to the button it seems). On my stage are two objects:
1. A Movie Clip 2. A Button
These are both set to "Export for ActionScript", and have an attached class called 'ColorClass'. ColorClass is basically what does all the work (makes a Color object, and has set and get methods). I also have an action layer where all my other code is contained. I'm fairly new to ActionScript, but come from a Java background
im trying to port my code to as3 but i stumbled on a problem i have no idea how to fix. error report:
Code: verify PointAirFri$iinit() stack: scope: [global Object$ Point$ PointAirFri$] locals: PointAirFri Number Number Number 0:getlocal0 stack: PointAirFri scope: [global Object$ Point$ PointAirFri$] locals: PointAirFri Number Number Number 1:pushundefined stack: PointAirFri void? scope: [global Object$ Point$ PointAirFri$] locals: PointAirFri Number Number Number 2:setslot 14 stack: scope: [global Object$ Point$ PointAirFri$] locals: PointAirFri Number Number Number 4:abs_jump 78424138 45 stack: scope: [global Object$ Point$ PointAirFri$] locals: PointAirFri Number Number Number 0:getlocal0 stack: PointAirFri scope: [global Object$ Point$ PointAirFri$] locals: PointAirFri Number Number Number 1:pushscope stack: scope: [global Object$ Point$ PointAirFri$] PointAirFri locals: PointAirFri Number Number Number 2:getlocal0 stack: PointAirFri scope: [global Object$ Point$ PointAirFri$] PointAirFri locals: PointAirFri Number Number Number 3:constructsuper 0 VerifyError: Error #1063: Argument count mismatch on Point$iinit(). Expected 3, got 0. at PointAirFri$iinit() at docClass/::init() at docClass$iinit() this is how the defined the classes:
Code: package{ public class Point { vars public function verlet(a) { code } public function savePoint() {; code } public function restore() { code } public function Point(__x:Number, __y:Number, __fr:Number) { x = __x; y = __y; dx = 0; dy = 0; vx = 0; vy = 0; friction = __fr; } } }
package{ import Point; public class PointAirFri extends Point { private var airFriction; public override function verlet (a) { code } public function PointAirFri(__x:Number, __y:Number, __afr:Number) { x = __x; y = __y; dx = 0; dy = 0; vx = 0; vy = 0; airFriction=__afr; } } }
if anyone has any idea why that error happens please enlighten me
I have a few custom classes stored in AS files. Is it possible to have these classes imported another way from using the following method:
Code: import ClassFile;
I want to have the AS files loaded from a server (policy file created for inter-domain talk) into to flash. Also I want it to work, if a person downloads the main SWF and plays it on their compy,i want the class files to be loaded from [URL] and so on.