Performance :: Find Distance Between 2 Points In Fastest Way
Sep 22, 2011
This code calculates the distance between 2 points by using distance formula, Math.sqrt ( (x1 - x2)^2 + (y1 - y2) ^2). My first point has mmx and mmy coordination and second one has ox and oy coordination. My question is simple, is there any FASTER way for calculate this?
So, right now when I want to find the distance between two points, I go: dist = Math.sqrt((this_x-that_x)*(this_x-that_x)+(this_y-that_y)*(this_y-that_y)) BLECH! I don't want to do that every time. So I want to make a nice little function that I can apply to an object. Problem is, I don't know how to do this. Is it possible to end up with something as easy as: Math.dist(thisclipname, thatclipname)? How do you guys set up functions that do bulky math and return nice clean numbers?
I need to know the best method to find an item inside a list (Vector, Array, Dictionary, whatever is faster) of complex type (extensions of Objects and Sprites). I've used "Needle in Haystack" method, but it seems that it isn't fast enough.
E.g. Suppose that I have a collection of Sprites (a pool, in fact). Each sprite will be added to the stage and perform some action. After that, it will die. I don't want to pay the cost to dispose it (garbage collect) and create another (new) one every time so I'll keep the dead sprites in a collection.
Sometimes times I'll call a method that will add a sprite to the stage. This sprite can be a old one, if it is already dead, or a new one, if the pool don't have any free sprite.
One of the scenarios that pushed me to this question was a Particle System. A "head" particle leaving a "trail" of particles every frame and exploding into a flashy multitude of particles... Every frame...
Some times this counts up to 50.000 PNGs with motion, rotation, alpha, event dispatching, scale, etc... But, this is JUST ONE scenario...
At the moment I'm trying to use a Object Pool with a Linked List... Hopes that it will be faster that running a whole Array/Vector or create new instances every frame an let them dye with Garbage Collection.
I'm needing this for a current project, so I have been digging around quite a bit (with little luck) on finding the distance between two points VERY fast. Yes, it is quite critical that it be as optimized as possible. I have the basics, Pythagorean Theorem run in different ways, as well as the Point.distance() function.
I am trying to make a program where I put in a bitmap map and then am able to calculate the distance between two points, and I have done that. Now I want to be able to zoom out and still have those two distance calculate the same distance apart, is there a way to do this with AS3 without have to manually scale my code?
For example I don't necessarily want to have to do var distance = Math.sqrt(dx*dx+dy*dy)/scale... Reason being is I would have to redo a lot of code.
I need algorithm ideas for generating points in 2D space with defined minimum and maximum possible distances between points.
Bassicaly, i want to find a good way to insert a point in a 2D space filled with points, in such manner that the point has random location, but is also more than MINIMUM_DISTANCE_NUM and less than MAXIMUM_DISTANCE_NUM away from nearest points.
I am rotating an object with TweenLite, however instead of a set duration I want the duration to be based upon the distance of rotation where 180 degrees = 3 seconds 90 = 1.5 and so on. Here is my attempt to find the distance of rotation:
var time:Number = Math.abs(Math.atan2(Math.sin(angle-wheelObj.rotation),Math.cos(angle-wheelObj.rotation)); TweenLite.to(wheelObj, time, {shortRotation:{rotation:angle}, ease:Expo.easeOut, onComplete:rotateWheel, onCompleteParams:[target]}); TweenLite.to(carObj, time, {shortRotation:{rotation:angle}, ease:Expo.easeOut});
This just isn't working, time is sometimes huge when the rotation is small and sometimes tiny when it is big, so does anyone know a better way to do this?
I have a LineChar, with one LineSeries, on which i am drawing values ( Y axis ), on specific time ( X axis ).The problem is that i don't wanna the points which is distanced on a specific distance in time ( let say 6 hours ) to be connected.Is there a way to make LineSeries with DateTimeAxis not connecting points distanted in specific time ?
How could I find the distance between a given point and a drawn line? I was thinking about using the point-slope formula to draw a perpendicular line between the point and the line and measuring it as the distance, but I'm not quite sure how to do this in as3.
How does Flash use Math.sqrt to get the distance between 2 movieclips? In the example the only givens are 2 points along a triangle:
function getDistance(x1:Number,y1:Number,x2:Number,y2:Numbe r):Number { var dx:Number=x1-x2; var dy:Number=y1-y2; return Math.sqrt(dx*dx+dy*dy); }
dx is the difference between the x coordinates of 2 points/2 mc's dy is the difference between the y coordinates of the same 2 points the Math.sqrt is the Pythagorean theorum
If the Pythagorean theorum is a^2+b^2=c^2 for the sides of a triangle how do 2 points achieve the same result if the lengths of the sides aren't given?
I created a movie where I have a circle in the middle and a line drawing from the center out when the mouse moves. I want to calculate the distance from the mouse position to the middle of the circle. What I am going to do is have a sound playing from the center of the ball..The closer you get the louder the sound gets and the further away from the middle the quieter it gets. You can download my fla to see what I have so far.
Is there a way to find the radial distance using the zipcode? My task is to search the all the users residing with in a specified distance. I know the zipcodes of the users. Eg, users between 25 miles from the current location. I have other search categories, for which i am using mysql queries. I am unable to figure anything out for the distance issue.
My backend is in php and frontend in Flex.
The best option for me would be something like that of www.zip-codes.com/zip-code-radius-finder.asp. ie, if I should be able to get all the zip-codes available in the specified radial distance. So i can compare this zip-codes to the users zip-codes in my database. And select the ones with a match.
I have a line that is drawn using the draw api. I need to find points on the line when given the x value, how would I do this. I know on the bezier segment I can just user the yForX() and get the value but not sure how to with just a straight line.
I'm using the TouchEvent listener rather than the TransformGestureEvent listener because the TransformGestureEvent listener's built in gestures (particularly zoom) seem to be extremely slow and poorly thought out. So I'm dealing with raw touch data and I need to find the number of current touchpoints. Is there a method that returns the number of touchpoints currently on the screen?
I installed a Flash template that has a "Read More" button which is used in several locations of the site. The button corresponds to a single symbol called "button_more" and another symbol within that symbol called "area_more". It's a "Movie Clip" type of symbol, not a "Button" type symbol.
What I'm trying to figure out is where would I find the link to the page where that button points to - it points to different pages of the site depending on where it's located. For example, in the About Us section it links to a page that has more details describing About Us. In the Services section it links to a page that has more details describing Services. So the same symbol is going to different links.
I checked the Properties of the symbol and it doesn't have any option for a link. (I guess it's not really going to a link, but to a different frame in the timeline) But where would I find exactly where each button points to in case I want to edit one of them in the future, or create a new button with a new link?
find a points in a line Actually i want to make some footsteps in a sand. The footsteps are dhynamically placed on the stage. How to find the points in a dioganal. see the image
i'm trouble to find a points in a line Actually i want to make some footsteps in a sand. The footsteps are dhynamically placed on the stage. How to find the points in a dioganal.
I have a time line of 500 points. On a timeline that wraps around how do I find if the shortest distance between two points is to go forward or backward? Example,I'm on frame 30, the target frame is 100 and the total frames are 500. I know that going it will take 70 frames to get to 100 going forward and 430 to go in reverse but I don't know the codes to figure this out. I'm using ActionScript but I think I would understand the codes if it were written in other professional languages like JavaScript.
I am working on the project where everything is based on the distance from the center of the stage. First I made this fla where flash outputs the x and y distance from the center. First problem is that I want to output distance only in positive numbers.
I am posting my code that attaches the movieclips on stage
[Code]...
i was hoping that when the newMc expands, all other mc would keep the same distance between each other as at initialisation. I not able to figure how to do it. maybe even an earlier post or llink where similar query was explained.
I'm devloping some library classes for flocking/steering behaviours on large numbers of objects (2000+). I'm finding that at < 500 instances, performance is reasonable. As the numbers increase, framerate bogs down.
I've seen remarkable performance with libraries such as Flint or Box2D with ridiculous #'s of particles / objects, so it should be possible to optimize / refactor my code to be a bit better.
I'm aware of the basic optimizations, such as bitwise operations and optimized for loops. Are there any more fundamental approaches I should be considering? For example, currently each instance is a vector-based MovieClip. Would working with BitmapData be more efficient?
Will I take a big hit in performance using nested ViewStacks? Should I strive to handle all navigation in one ViewStack and push children manually or will the affected performance be negligible?
We have a medium size Flex 3.6 application that contains around 20 different page views (managed via a single lazy ViewStack) each having multiple components. Most use custom renderers.All model data is loaded at startup and changes to model instances are communicated via binding and/or collection change events.Once the user has viewed each page at least once, all page views are instantiated and happily listen to update events.Which in effect means that each time a model instance changes, all interested views receive that event and compute derived data or trigger item-renderers.I have tested and confirmed this behaviour in a proof-of-concept application. Even when setting a list to being invisible, it still listens to collection change events and invalidates any renderer affected.What would you do?
I have the following function in my FogOfWar class, it calculates if its team can see the position that is passed on the arguments:[code]My problem is that, with only 3 characters in the game, it can only run 4000 times per second, which is not too much.I can implement a cache, so it caches the most commons positions, but, what else can I do to optimize it?