ActionScript 3.0 :: Spread Items In A Circular Path With A Right Rotation Angle Facing The Center?
May 29, 2011
I am trying to place leaves in a circle to create a flower with code. I run into some problems.Is it possible to rotate the leaves so they all rotate in the direction of the center of the flower? And is it possible to calculate how many leaves can fit around a certain circle radius without to much overlapping?
I need to move a movieclip dynamically over a path. The movieclip has a front which should remain pointing to front when moving along the path. So I need an angle at which the movieclip should be rotated regularly. This is something similar to the motion guide we have in Flash.
I have just built my first website in Flash CS4 and have come across a couple problems. When I published it online, I found that the site is not centered and has a huge white area around it. How can I center the window and spread my background out infinitely?
I have a round workfield and want to place 10 items evenly divided around the border. So basically I want to spread 10 items over a circle (not a line).
I have a set of links (movie clips) arranged in a circle. When one of the links is clicked, I would like the circle of links to rotate until the selected link is in a certain position - straight down (90 degrees) in this case - and the others to maintain their positions relative to the clicked link (ie: they all move, but the distance between them is maintained). The behavior is intended to be like a bullet rotating into a chamber on a revolver, or - more accurately - like that of a Ferris Wheel. [URL] Here is my mangled version of the AS from the site linked above:
ActionScript Code: // setting variables var centerX = Stage.width/2; // Stage Center X var centerY = Stage.height/2; // Stage Center Y
I have a movieclip and when I do 3D rotation from Transform panel, It rotates perfect, center is in the middle of image, and when I apply mc.rotationY, rotation center is in left of the image, aren't 3D rotation from Transform panel and mc.rotationY from AS same? what's up?
I'm trying to make a circular motion path using Senocular's tutorial here.What I want is a box to move around a circle motion path that is created in AS when the user presses a button. However I'm having trouble decifering all of Sencular's code because there is a lot of advanced stuff that he puts in that I don't want and I'm having trouble getting started.
I am designing an interface where a person will drag a circular measurement tool (called a goniometer) over part of an image, and then rotate two different arms on the tool to measure an angle.The entire tool itself needs to be draggable by its center. So far I have the arms rotating by means of pressing the arrow keys on the keyboard, but it would be more realistic to have the user drag the arms to rotate them. I can't think of how to accomplish that, though.
I know 3D rotation is well documented on SO and many other sites, but despite reading countless explanations I still haven't figured out where I'm going wrong. My background is in art and design, not math and programming, and I'm never really certain if my angle of attack (no pun intended) is the right one. Rather than paste a patchwork of my dismal code, I'm including an image describing my problem. What I'd really like is a step-by-step worded breakdown of how to solve it. Pseudo code is useful, but I will learn more if someone will just aim me in the right direction or point out common pitfalls.
I have 2 objects on stage, pane (which rotates) and topbut (which initiates the rotation) Currently onRollOver of topbut rotates pane indefinitely, what I'd like it to do is stop once the rotation has gone through 180 degrees.
I'm working on an interactive animation for a university assignment. Here in this scene the user is able to turn a safe dial left and right either using on screen buttons or keyboard keys. The trouble I'm having is trying to write an IF statement to detect the angle of the safe dial so when the dial == an angle of rotation the scene goes on to play the next frame of the animation.
I have a stage with and height of :600x400 On this stage i have 3 squares that have a centerpoint in the middle. The square are 90 (width) and 80 (height)The first square is aligned to the left site and the second one in the middle and the third one on the right The perspectiveProjection is setup using the middle of the stage as it projectionCenter.When i rotate all squares to 90 degrees (rotationY) than only the middle one is now not visible anymore, at that point i want to switch the image inside the square. But at 90 degrees the left and right squares are not invisible.. For the left square that point wouldbe at 90 - 22, and the right one 90 + 22. Is there a way to calculate the correction value (22) in this example?
What i don't want is to give every square it's own perspectiveProjecten , then it would work but you have a completely different3D rotation.The only thing that goes wrong in my example is that the image from the left and right square are not changed at the right time, because 90 degrees on the left square does not mean it it not visible at that point.
I can't seem to figure out how to accomplish a fairly simple task: I have a simple graphic and I'd like to apply an "orbiting" effect to it - so that the graphic moves in a circle around an arbitrary point (without rotating around its own center).[code]...
I'm attempting to create a color wheel component in Flex 4 that will allow me to represent RGB and HSL data.I'm doing so with a circular color wheel representing the various hues available to me and a rectangular gradient in the center of that which will represent the lightness and saturation fields
Currently I have the objects represented but I cannot determine the best way to fill them in. I have no problem creating the gradient necessary in the center square, but I cannot get the outer ring to build a -circular- gradient. It seems the only two native gradients in flex are linear and radial, but I need the gradient to linearly follow the path around the ellipse. How would I make this possible?
I have a circle with 8 dots around the edge of it. Based on the center of the circle and the mouse's location, I want the dot that the mouse is closest to, to get bigger. I've got this so far ActionScript Code: angle = Math.atan2(rt.mouseY - y, rt.mouseX - x); But I'm getting some weird quadrant values returned that are between -3 and 3. Is there a way to know which degree out of a 360 circle my mouse is at in regards to the center of the circle?
how I can count the B point's coordinates (see attached image... or not as I am a new user...pf!). I know the arrow's rotation - so the angle (let's say it is -120), A's coordinates (0, 0) - A is the middle point of the arrow, and that the distance between A and B is 50 px.
As you can see in my code, I'm trying to adjust on the fly the x and y properties so that the movieclip gives the impression to rotate from its center and not from its corner at 0,0
Code: var myclip:MovieClip = new MovieClip(); myclip.buttonMode = true; myclip.graphics.beginFill(0);
[code]....
but it doesn't work and the clip does not rotate well
So let's begin. I want to build a wheel which you can spin, similar to a roulette wheel. You can do this both ways (CW and CCW, this issue causing the bug, actually). The wheel has some acceleration to it too, and I achieve this by measuring the start and final angle of the drag movement, using Math.atan2(dy, dx). The problem is the following: atan2 outputs the following angle scheme, assuming the point relative to which the math is done is in the center of the circle.
atan2 returns a value measured in radians, so I'm using the classic angle*180/Math.PI formula. I've changed this original scheme into the following, using some simple math to shift the angles a bit, to resemble more accurate circle angles (going up to 360 degrees) The problem that I'm facing at the moment is should the user decide he wants to swipe clockwise, and moves through the right point, where 0 turns into 360 or 180 turns into -180, the whole angle difference thing is capsized. It registers a CCW movement (as if the user swiped his mouse all around the circle). So, I'm looking for some ideas as to how I can work around this small issue.
I am trying to rotate a Sprite in three dimensions around its centerpoint, and I am struggling to understand some of the behavior of matrix3D.
Ive overridden the set rotationX, rotationY, and rotationZ methods of the Sprite as follows:
override public function set rotationX (_rotationX:Number) : void { this.transform.matrix3D.prependTranslation(this.width/2.0, this.height/2.0, 0); this.transform.matrix3D.prependRotation(-this.rotationX, Vector3D.X_AXIS);
[Code].....
I am using prependTranslation to correct the centerpoint of the rotation, and the first prependRotation to cancel out any previously-applied rotation.
Testing it out, rotationX works exactly as expected, and the Sprite rotates around its horizontal axis.
rotationY and rotationZ also appear to work fine. However, there is one problem: whenever rotationY or rotationZ are set, all of the other rotation values change as well. This is not a problem with rotationX -- if I set rotationX, nothing else changes. But if I set rotationY or rotationZ all the rotation values change, which is a problem for my app (which is trying to save and restore values).
I think I am just lacking some understanding about what is going on with matrix3D. How can I implement this so there is no interdependence between the values?
I want to change the centre of rotation of the body to be more in the front of the body. So that applyForce and also collisions make the body not turn in the centre but more in the front.
I found this actionscript online to rotate a sprite around its center point but I get two errors when I use it. 1084: Syntax error: expecting identifier before leftparen. 1084: Syntax error: expecting rightparen before leftbrace. Also, in place of angleDegrees do I put in the angle I want the sprite to rotate by?
var point:Point=new Point(spr_box.x+spr_box.width/2, spr_box.y+spr_box.height/2); rotateAroundCenter(spr_box,45); function rotateAroundCenter (ob:*, angleDegrees) { var m:Matrix=ob.transform.matrix; m.tx -= point.x;
I coded an entire file based on the top left registration point of my movie clip. I want it rotate it to point at the cursor, but since the registration point isn't in the middle.. its not a perfect rotation around the center of the mc. Is there anyway to rotate it around the center of the movie clip without changing the registration point?
ActionScript Code: stage.addEventListener(Event.ENTER_FRAME, aimBall, false, 0, true); function aimBall(event:Event):void { ball_mc.rotation = getAngle(ball_mc.x, ball_mc.y, mouseX, mouseY) -90; trace(ball_mc.rotation); } function getAngle(x1:Number, y1:Number, x2:Number, y2:Number):Number { var radians:Number = Math.atan2(y1-y2, x1-x2); return rad2deg(radians); } function rad2deg(rad:Number):Number { return rad * (180/Math.PI); }
url...I'm using this code i made some changes like changing the array for a xml.In some part i put a button to stop the movement and i used [code] and it works perfectly, but then i want to return with another button to the movement. and i can't make it work.