Actionscript 3 :: Change The Registration Point When Using Bitmapdata.draw?
Dec 5, 2011
I have a movieclip on stage that I draw into a bitmap, how do I change the registration point, the code below produces bitmap with half chopped off:
var bitmapData:BitmapData = new BitmapData(mc.width, mc.height, true, 0x00FFFFFF);
var matrix:Matrix = new Matrix();
matrix.translate(0, -mc.height/2);
I'm trying to convert a Sprite that I have into BitmapData so I can perform some collision detection. There are a few things about the way the Sprites are used that is making this more difficult than I expected:
The Sprite itself is a container which holds another Sprite that actually has a box drawn in it. The inner Sprite is positioned negative half its width & height so that it can be rotated from the center via the container. The container may be rotated at any angle at any given time
So my approach thus far has been attempting to draw the outer Sprite onto a new BitmapData object with a Matrix to account for the difference. Whilst I can use a Matrix to make this work for one particular rotation angle, I cannot find a way to make it work for any rotation.
Here's what I'm doing to draw onto the new BitmapData:
var p:Product = getProduct(); // Product is the container with the inner sprite var bounds:Rectangle = p.getBounds(stage); var bd:BitmapData = new BitmapData(bounds.width, bounds.height, true, 0x00FFFFFF);
[Code]....
Translating by the same amount as the previous example will no longer work here, and the box will still be cut off. I've looked around at some solutions posted before or suggestions from other people but they don't seem to work for me due to my container Sprite and rotation.
I need to have 2 kinds of masks, one with a registration point in the top left so that when I tween its height it expands downwards, and one with a registration point in the bottom left so that when I tween its height it expands upwards?how do i do that, with code ofcourse?i have made something but i dont know if its the right way:(this expands downwards, but i dont know how to get it to expand upwards)
Code: import gs.TweenLite; var subMask:Shape = new Shape();
I have the following code to create a Sprite with a rectangle in it:
container = new Sprite(); container.graphics.beginFill(0x00CCFF, .5); container.graphics.lineStyle(1, 0x00CCFF);[code].......
The only thing is, I'd like the registration point to be in the middle (not the top left corner). Is there a way to set up the registration point in the middle of the rectangle, but still have the position of the rectangle be correct?
i.e. not moved over so that the top left corner of the rectangle is in the "middle" of where I want the rectangle to be...
I have a movie clip on my stage with various elements in it. When I edit this movie clip all the coordinates for the various elements have really random values because the registration point is not set to the top left corner of the symbol but I can't find any way to change the registration point - nothing I've found online so far works.
I have an object which is converted into a symbol. I double click on this object/symbol and it goes into its own seperate timeline. For my coding purposes I would like to know how to change the registration point of the symbol so it moves along or is addjustable on a symbols its own timeline so a can create animations on an objects timeline without screwing up my codeing because objects don't register when their moved away from the registration point the compiler still thinks that the registration point is where it was previously.
Is there a way to change the position of the registration point inside a Movie Clip using Flash5 ?I've found stuff online for older Flash versions but not CS5.
Has anyone got a bit of code I can use to change the center point DisplayObjects rotate around in a 3D space? I need it to work with rotationX, rotationY and rotationZ. I know theres a workaround of wrapping every object in aother sprite and offsetting the x & y positions but I'd much prefer a math solution. As an example of the problem, this code should make a star shape:
I have a symbol created out of a bitmap image. When I converted the "bitmap" to a "movieclip" object, I selected the center registration point in the dialog box. After the symbol is created an placed on the stage, I can seen the registration point at the center of the movieclip. Nevertheless, if I check the coordinates of the movieclip, it refers to the top left corner instead of the registration point. The most strange thing is that if I try to check the coordinates of the movieclip using Actionscript - something like trace("x: " + mc._x + "y: " + mc._y); - it do refers to the center point of the movieclip. So how can I have the coordinates during design time the same as during runtime? Why do I always have to refer to the top left corner and not to the ACTUAL registration point?
how to change the registration point of a movie clip at run time using action script 3.0.I have gotten a lot of code in the past but none of it worked and all of it was not for 3.0 but other versions.
I'm trying to create a needle gauge type preloader, and I've created the needle and made it a MC and set the registration point to bottom middle, but it still rotates on a centered axis. This is the tutorial I'm following: [URL]
Is there a way to extend only the bottom part of a dynamic Movieclip? I tried to change the height or to scale my mc but it always makes the change relativity to the center of the Movieclip. I guess I should define a registration point and change the height according to it but i'm not sure of how to do it
I have a fairly complex movie clip with a bunch of animations in it, and it seems that the registration point for it is at some random location in the middle of it all.
Is there any way to change the registration point of a symbol after it has been created? I can't seem to find information one way or the other anywhere
I am having an issue with using BitmapData.draw(stage). I am getting the following error:
SecurityError: Error #2123: Security sandbox violation: BitmapData.draw: file:///C|/Documents%20and%20Settings/bla...bla...bla.swf cannot access null. No policy files granted access. Here is a portion of my code:
var bd:BitmapData = new BitmapData(2800, 2100); bd.draw(stage);//this is where the error happens All of the files referenced (.xml/.jpg/.swf) are located in the same local folder as the main .swf. How do I get around this error? The main objective is to print the stage using PrintJob(). I am using Flash Professional CS5.5 and publishing to Flash 10.0/10.1. Let me know if I need to supply any more info.
When you create shape on stage and right click and chose create object you can chose Registration point for the object you chose what corner will be used as center of coordinates for this object. Now onice you create object is there way to change this registration point e.g. i created it in center now i want to to be in upper left corner?
When you create shape on stage and right click and chose create object you can chose Registration point for the object
you chose what corner will be used as center of coordinates for this object. Now onice you create object is there way to change this registration point e.g. i created it in center now i want to to be in upper left corner?
I have a MC in an AS3 animation and I want to increase its height from bottom to top which would mean that the registration point should be bottom of the MC and center of width (horizontal center).
When you create shape on stage and right click and chose create object you can chose Registration point for the object..you chose what corner will be used as center of coordinates for this object. Now onice you create object is there way to change this registration point e.g. i created it in center now i want to to be in upper left corner?
I've been using BitmapData.copyPixels() to draw graphics onto a canvas (Bitmap).I need to rotate the resulting graphics without the use of draw() because it's vastly slower.How can I rotate the target graphic? I'm assuming that there might be a formula or library that I can use which will first reorganize the pixels that make up a graphic based on an origin (point) and radians.I'm pretty certain that I'm not capable of creating such logic, so if there are any known libraries that do this, that would be awesome.I'd like to achieve something similar to XNA's SpriteBatch.Draw() method, which accepts rotation as its 5th argument.
I'm currently working on a flash game and I need to know how to addChild a BitmapData or draw a BitmapData to screen. If I can't than how can I give a DisplayObject my BitmapData?