ActionScript 2.0 :: Math.floor - Round Down To Nearest 10th
Mar 12, 2008
I want to round a whole number down to the nearest whole 10th. Like 52, becomes 50. Or 49, becomes 40. Or 2005, becomes 2000. Does that make sense? I imagine it has a math.floor approach, but I can not figure it out.
var p:int = 0; var n:Number = 0; n = 32.999999999999999; p = Math.floor(n); trace(p); // returns 33 n = 32.11111111111111; p = Math.floor(n); trace(p); // returns 32
I would expect both of these to return 32. I have searched, and it seems this is an unreported bug in AS3. Or ... am I doing something wrong?
I am building a control to allow me to set a meeting time, and I would like it to use as a default, the current time rounded up to the nearest 15 minute interval. So if it is currently 6:07, it would read 6:15 as the start time.
Does anyone know how this might be accomplished, or have run across a code snippit that would put me on the right track?
I have a code in which I have to use Math.round if a certain value is for example 3.67 (67 is higher than 50) and Math.ceil if a value is for example 3.23 (23 is lower than 50). What can I do to make flash calculate if what after the dot �.� in 3.23 (for example) is higher than 50?
I just ran some tests on round numbers.In preparation for getting max performance from AS3, I want to test as many areas as possible.All I did was generate a rounded random number a million times per frame, and record the time step in milliseconds.[code]Now the strangest part is having a non rounded random number generated a million times per frame netted an average time of 195 milliseconds, faster than using int as a random number. It must simply be that because Math.random isn't returning an integer, some form of conversion of taking place for your variable to be an integer.
Incidentally, using a Number instead of integer for the looping variable decreased performance minimally, just a few milliseconds.So simply having your variable as an integer, and using no rounding at all produces the fastest results if you want a round number.Remember though, there are many other areas in Flash to dramatically increase performance. Being that we're talking about a million iterations per frame, the difference in performance is not exactly dramatic here. One is not even twice as fast as another, over a million iterations.
I have been trying to find some code that lets me round a number to the nearest multiple of another number.So if for example we have number 44 the nearest multiple of seven would be 42.
What is math.round() do? In kirupa's Random numbers tutorial, he explained the use of math.floor(), but said round() was for another time. Yet I see that, and not .floor() in use in the random movement tutorial.
I followed a tutorial from actionscript.org , the tricky part is that i wanted to change the Kb to a % display and it's messing up.Here's the previous code [AS]lastFrame = 1;
function loadedIndicatorFrame() { var newFrame = int((_parent.getBytesLoaded() / _parent.getBytesTotal()) * 65) + 2; if (newFrame - lastFrame > 4) { //too far
I am trying to add an eventlistener to the stage to respond to a resizing. When doing so i want to keep the relative position of a movieclip-object constant to the upper and leftmost edges, without changing the alignmode of the stage to top left. This can be achieved as shown below - examplified with two classes and reference to fla implied. The problem is now: When supplying the crucial statements with a Math.round, the movieclip-object gets displaced pixelwise with each new resizing:
Whereas the solution without Math.round is rock stable so it doesn't move at all, as it is not supposed to either! Can anyone figure out why? I know it's a luxury-problem, as my use case is solved. The problem is that i don't know why? Shouldn't the use of Math.round just assure the int-value? Such a small issue could easily spoil the whole app! And i fear that i have misunderstood something fundamental in as3, and suddenly become unpleasantly surprised.
I am trying to create a simple floor plan that highlights where the computers are on the floor.
1. Each computer has a name for e.g. Comp1, Comp2, Comp3 etc.
2. The computer names are in a list on the left hand side.
3. On the right hand side is the simple floor plan with computer images (or clipart)
This is what is expected:
1. As the mouse is mover over the item on the list, the computer associated with it must light up (or highlighted) For e.g. when the mouse is over Comp1 in the list then computer1 image (or clipart) on the floor plan must light up
2. When the mouse is over a computer on the floor plan, then the associated computer name in the list must light up For e.g. when the mouse is over computer2 image (or clipart), then Comp2 in the list must light up. I was trying to get some ideas from [URL]. I was able to make the image for a computer. It doesn't go far enough to tell me how to accomplish the above. Using Excel, I did this nearly five years back, by putting the clipart in specific cells and hyperlinking them. Now we want to make it available on the web.
My friend and I are working on a flash project in actionscript 3, and we are trying to move several movieclips by a portion of a pixel. Since we have filters on these movieclips, flash rounds their location to the nearest pixel, making the motion look jumpy. Is there anything that can be done to stop flash from rounding their location to the nearest pixel?
I am trying to detect bodies which are near current. To do it, I've created quite a big collision shape, around the current body, and made it sensor. Collision event was triggered, but it's not what I need. Main thing is that collision event is called only first time when another body entered the detection field... And I want to be able to detect changes in bodies location, after it. (I am considering the fact that other bodies are moving inside detection field)
two balls are stationary on stage and I am dragging ball 1 between them. I want my program to deny the ability to do this (technical terms) and move the ball automatically to the closest point available that does not overlap either of the other two balls i.e. the left side of the dragged ball may touch but not over lap ball 3. I have a feeling the circular equation: (x-a)^2 + (Y-b)^2 = c comes into it but it may need pythagoras instead as the balls are all circular but not all the same size. The best way I can see for this is to write a multi-part equation for the bounds of boths balls and then finding the nearest point, but not sure how to do this in as3, perhaps using the 'for each' tag.
is there any lib or api out to deal with this ? EVEN, if there is any resource , article from another language c++ , c , .. i just didn't have enough time to test lot of ways
If you search interactive floors , or interactive floor projection you can find some companies who provide such a thing
I'm not sure if this is directly hardware related or not. I've just started playing around with papervision 3d and I threw together this map floor and test sprite to see how it would look. The problem is, whenever I have a large portion or the map in my viewport, it lags. I was just wondering if maybe:
a) My code is horrid b) My computer is a piece c) Papervision3D is just bad for 3D
I mean the concept is simple, there's nothing fancy going on and I'm only using planes. Maybe it's because I'm using 25x25 of them? Is there a better path to use 3D than paper3d? Anyways, here's the code.
I am designing a character to move right and left but the character is not recognising the floor movieclip and is falling straight threw the floor.I have attached a zip file with the flash document sample and associated Actionscript file.