ActionScript 3.0 :: Tweening A Zoom Transform Matrix?
Dec 10, 2009
Im using Daniel Gasienica's Zooming in Flash where he uses the transform matrix to calculate the mouse position so the zooming reference point is the same. Its pretty handy, but i need the zoom to more smooth. I've tried almost everything (mainly the TweenLite engine), but with no luck.
someone could tell me how I can zoom a Canvas, with transform.matrix, so that the content of the component fits into the parent container (application), either inward or outward
this function is called Zoomfit(), I have this code:
I ran into an issue with an app that I have been working on.The application lets a user draw a rectangle, which base class is UIComponent, on an SVG Canvas. The user can rotate, skew, scale,flip horizontal and flip vertical the rectangle. Then they can drop an image into the rectangle.We just cloned the rectangles matrix and applied it to the image and the image would transform the same as the rectangle. Well now we have changed the way the app works.
Now we don't want the image rotated or flipped on the initial drop, and this is where I'm having trouble.I was wondering if there is a way to always find the true top left of any rectangle no matter what kind of matrix is placed on it. I can find the center of the rectangle but when a user flips the rectangle the center point is outside the rectangle.Instead of finding the center I would like to find the topLeft.I have tried several things. Like transform.pixelBounds, but this gives me big numbers like 2200 instead of 400. I have also looked at senocular.com but not sure that I understand it.I just need a dynamic way to always find the top left.
i want to assign a transform matrix to an object, but i want to assign the values myself (as in, no 'rotate, scale etc'), but for example, set a matrix like
[Code]...
which if applied, would have no effect, but would be valid (actually not exactly that matrix, but you get the idea). i want to set the values of the matrix and the object should be affected by those values that i set by myself, no scale rotate or any predefined operations. how can i set my own matrix?
I have a class which extends the Sprite object in as3. I need to be able to override the transform.matrix setter in this class but haven't been successful in doing so.
I've tried many things, along with creating my own separate class which extends the Transform class and then overrides its set matrix function, and set my transform = new CustomTransform(). Sadly this didn't work.
In code this is what i tried:
public class MyClass extends Sprite { public function MyClass() {
I am having quite a bit of trouble with one of my classes not working with the custom PixelPerfect-Class. Looking into it I found the error occurring in this line:
It's throwing a 1009. Playing arounf with trace I have come to the point, that the hero in my little game has no transform.matrix (it's null). This is not related to the CollisionClass, i traced it independently of that.
I have a UI component that I wish to relocate and scale, but in a rather complex way. I've figured out the necessary transformations using the transform matrix, to which I applied several translate and scale operations. I can set the new transform matrix for this UI component to be the above calculated matrix, and the results are accurate; but I need to animate the transition. I can't use the Scale/Move effects alone because they aren't as powerful when it comes to calculating the necessary transformation as the matrices are.So how can I animate the transition of an object given a source and a target transform matrix?Figured it outUsing a tweener and its onUpdate event to reassign the matrix with each intermediate value:
var animMatrix : Matrix = gi.transform.matrix; TweenMax.to(animMatrix, 1, { a : m.a,
I'm working on a project wherein a user can take a snapshot of themselves using their webcam and then edit this image by transforming scale and rotation and save the result.
I've got most of it working, the user can take a snapshot of themselves, transform the object using Senocular's Transform Tool and i'm using .draw() to then save this transformed object. The problem is .draw() is only grabbing data from the top left corner of the stage. It is drawing the transformed object but only from the top left corner.
Why does it only draw from the top left corner and how can i get set the coordinates to only draw from the area where the captured image is set?
You can view the file as is at: [URL]
And i've zipped the FLA and relevant classes at [URL]
Long time since i've been on here. I'm working on a project wherein a user can take a snapshot of themselves using their webcam and then edit this image by transforming scale and rotation and save the result. I've got most of it working, the user can take a snapshot of themselves, transform the object using Senocular's Transform Tool and i'm using .draw() to then save this transformed object. The problem is .draw() is only grabbing data from the top left corner of the stage. It is drawing the transformed object but only from the top left corner. Why does it only draw from the top left corner and how can i get set the coordinates to only draw from the area where the captured image is set?
I found the function: rotateAroundExternalPoint(m:Matrix, x:Number, y:Number, angleDegrees:Number) to rotate an object around an external point. The top of the object will always point at the center point which is exactly what I want.
It works fine but its possible to rotate it in an oval instead of in a perfect circle...I think it should be something with the angleDegrees Parameter but im not sure what to do with it. I also tried to set up an own matrix but I failed. Any right direction to orbit an object in an oval, and where the top of the object always point at the rotation center?
my problem is that if i scale, rotate or translate a display object using its transform.matrix i am not getting the value in the display object but the transform is happening like displayObject.scaleX or displayObject.scaleY etc. i get this new transform value using the dislayobject? as i am using a matrix transform manager which actually changing the transform matrix of the display object.
I have an odd problem in CS4/AS3 with one of my flash files where text is incorrectly rendered if the movieclip containing the text has a 3d matrix transform and quality is set to medium or low. It is easy to reproduce:
Has anyone here ever developed a function (or general library of relevant functions) that will allow one to find the inverse of a matrix? I've searched the forum archives, as well as the internet more generally, but haven't found anything. If anyone has some leads, I hope you'll pass them along.
If I don't hear anything within the next few days, I might try to develop something on my own, but I'd hate to do so if someone has already done the dirty work.
A solution to this problem would be very useful for 3-D work or anyone doing mathematical programming more generally.
I'm having trouble with loading in an external image that I can transform with the Senocular Transform Tool class. I have managed to load in the picture but the transform class doesn't seem want to grab it. Eventually I want to us the FileRef to upload the image but I just need to figure out how it works first. Here my code to load in the external image
[Code]...
The transform class can grab the other movieclips but it doesn't want to grab the new image loaded in from the code above.
I'm getting the following error: Motion tweening will not occur on layers with ungrouped shapes or on layers with more than one group or symbol. I don't have any ungrouped shapes (it's all text), each layer has 5 instances of only one symbol (keyframes), no objects are grouped and text is all static text.
When watching the animation, the first word (web) looks fine, on the second word (design) the tween fails on the last couple of frames of that clip (the blur filter disappears), the third word (and) is OK, and on the forth word (development) the blur filter is not applied to the last 16 frames of that clip.I broke each animation into its own MC thinking that was causing the issue, but that didn't fix anything.
I want to make a scope wich can zoom in on button click and go back to previous stage (zoom out) also by clicking a button.Now i made it work for zooming in (when i click my button it zooms) but when i want to zoom out everything i tried didn't work .Here is the code:
//button for zoom in zoom.addEventListener(MouseEvent.CLICK,glassMove); function glassMove(event:MouseEvent):void{[code]..............
i've made a button that zooms into a movie clip on a rollover, but it on moves it a certain amount each time you rollover the button. code below:
on (rollOver){ _root.Mypic._width += 5; _root.Mypic._height += 5;
} wot i want it to do is to continue zooming in for as long as the mouse is over the button, is there anyway i can change the code to zoom in at the same amount but do it continuously until the mouse is moved off the button. Also is there anyway that i can set it so that the zoom stops at a certain percentage, i.e. it only zooms in so much and then stops. What i mean is that the user can zoom in but the picture will only zoom in to say 200% of the original size.
I am working on flash application TELESCOPE or Camera. My goal is to move around the scene and zoom-in or zoom-out I found that if I move scene, I have to move registration point, because I always want to zoom in the centre of my ocular. So far application works fine only if I move, zoom-in and than before I move any further, zoom-out! But when I move, zoom-in (not fully), move again and zoom-in again, the second zooming doesn't appear on desirable registration point
Using flex / air 2.6 working on an Android device, I am using a canvas with a TransformGestureEvent for zoom in on a map. The listening of the efect is working ok, but I can´t seem to find the information on wether the user intended zoom in or zoom out (fingers getting closer or getting apart).I expected the intention of the gesture to be identifiable with the offsetX and offsetY properties of the event, as you will do on a swipe gesture event. But I always get 0 for both properties, no matter how I do the gesture in the device.How can I know if the fingers getting closer or getting apart in a gesture zoom event?
i had a flash file, and the image was dynamically loaded in a movieClip. when i double click the image it will zoom max. and another double click it will retain its best fit.
I need to have a button to be clicked for the zoom effcet to be activated, then when the mouse hovers over an image it should zoom to 200%. I have 40 images which I'd like to have this effect by.Also when the cursor is over the image is it possible to make the change the cursor to a magnifying glass?
I'm developing a full screen zoom/pan UI. Everything is working great, except I can't get it to center on the correct point when zooming in.
You can view what I have here: [URL]
The numbers in the top-left corner are the navigation, and the white boxes represent the individual sections.
I have a large container movieclip that fills the entire page. Inside of that movieclip (site) I have all of my individual section movieclips (section1-section6). I'm also using a dynamic registration point class to dynamically set the registration point of the "site" movieclip to the current selected section, so that the zoom in/out is centered on that section.
When a user clicks on a navigation item, I first reduce the _xscale and _yscale of "site" to 80, when that is complete I move _x and _y to the position of the selected section's movieclip. When that is complete, I set the _xscale and _yscale back to 100. Right now, it is not zooming in centered, so I have a final step where I correct the _x and _y position after zooming back in.
If I don't zoom in/out I can successfully pan the movieclip and center on the correct section. I believe the problem is that I am moving the _x and _y to the position of the "site" movieclip as if it is at 100%, but since it is at 80% it is not moving to the correct position. I tried to fix this by giving the _x and _y coordinates as:
endX = endX / 100 * 80;
Which made it a little better, but still not centered. I have a feeling that there may be a fundamental flaw in my approach to this.
For some reason the forum won't let me attach my .zip, so I posted it online, as well: [URL]
My code below, in case you don't want to download the file:
How to make several MCs to zoom in on mouse over and zoom out to it�s original scale on mouse out??? all this with actionscript and with some ease (elasticity) to make the motion more natural?
I need to have a button to be clicked for the zoom effcet to be activated, then when the mouse hovers over an image it should zoom to 200%. I have 40 images which I'd like to have this effect by.Also when the cursor is over the image is it possible to make the change the cursor to a magnifying glass?
i have visited a very good flash site..I gotta give credit for their dedication and their work as well. [URL] I wonder, how they put all those animation in a banner with that small size of file ? I mean banner's size is not big at all. My other question is that, how do you make it "zoom in and zoom out" on a movie..Like on those banners. Do they binding all the layers to make it a movie then resize it on the movie or what?