[OpenLayers-Users] Point in parrallel with line formula
Chris Adams
chris at genieknows.com
Thu Apr 30 09:53:39 EDT 2009
+1 means to the left
-1 means to the right
before calling the 'ccw' function, you'll want to order p0 and p1 so
that p0 has the smaller latitude
To get the distance on the left or right, use the formula linked from my
second response. It finds the closest point, on the line to the other
point, and then you need to take the distance between the two. If you
use Pythagorean theorem, it will give you distance in whatever
measurement the projection of your map is in.
newbie wrote:
> Dear Chris, I am a bit confuse. So the d will be in what measurement
> is it meter or km ? Then if is + or - what is the difference too.
> Thank you.
>
> Chris Adams wrote:
> Here's a C++ function (Should be easy to convert to JavaScript) /*
> Taken from Robert Sedgewick, Algorithms in C++ */ /* returns
> whether, in traveling from the first to the second to the third
> point, we turn counterclockwise (+1) or not (-1) */ int ccw( Point
> p0, Point p1, Point p2 ) { int dx1, dx2, dy1, dy2; dx1 = p1.x -
> p0.x; dy1 = p1.y - p0.y; dx2 = p2.x - p0.x; dy2 = p2.y - p0.y; if
> (dx1*dy2 > dy1*dx2) return +1; if (dx1*dy2 < dy1*dx2) return -1;
> if ((dx1*dx2 < 0) || (dy1*dy2 < 0)) return -1; if ((dx1*dx1 +
> dy1*dy1) < (dx2*dx2 + dy2*dy2)) return +1; return 0; } >From this
> post on GameDev.net
> http://www.gamedev.net/community/forums/topic.asp?topic_id=457450
> Note it will also return 0 if the point is precisely on the line.
> The deals with turn directions, so it depends on the ordering of
> the points on the line. To get around this, you'll want to swap p0
> and p1, if if p1 is below p0. (If p1's latitude is smaller than
> p0's) newbie wrote: > Dear All, > Just say I got a pair of lat and
> long p1 and p2 and I draw a line > based on both the points. So
> now I want to know if a particular point in the > parallel range
> of say 50m either on left or right sides of the line. How can > I
> decide this what is the formula please ? >
> _______________________________________________ Users mailing list
> Users at openlayers.org http://openlayers.org/mailman/listinfo/users
>
>
> ------------------------------------------------------------------------
> View this message in context: Re: Point in parrallel with line formula
> <http://n2.nabble.com/Point-in-parrallel-with-line-formula-tp2742247p2746662.html>
> Sent from the OpenLayers Users mailing list archive
> <http://n2.nabble.com/OpenLayers-Users-f1822463.html> at Nabble.com.
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
More information about the Users
mailing list