comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Finding the intersection of 2 short lines
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Finding the intersection of 2 short lines [message #79206] Mon, 13 February 2012 08:50 Go to previous message
ben.bighair is currently offline  ben.bighair
Messages: 221
Registered: April 2007
Senior Member
On Feb 13, 10:15 am, Jimmy <jimmyb...@gmail.com> wrote:
> On Feb 13, 12:48 pm, "ben.bighair" <ben.bigh...@gmail.com> wrote:
>
>
>
>> On Feb 13, 5:39 am, Jimmy <jimmyb...@gmail.com> wrote:
>
>>> Hi everyone.
>
>>> I'm trying to find a way of detecting the crossing point of two short
>>> lines (as part of a larger problem with detecting overlapping
>>> polygons). I've used intersect.pro which gives me the general
>>> intersect, but then I have to use the mother of all ugly if statements
>>> (which I'm having trouble getting working) to detect whether the
>>> intersect is actually on my short lines or extended away somewhere
>>> else.
>
>>> Is there a more elegant way of doing this? The code needs to find
>>> whether the two lines cross, and return the intersection point.
>
>> Hi,
>
>> I have often used Paul Bourke's geometry webpages as a good starting
>> point, like this one for line intersections (2d)...
>
>> http://paulbourke.net/geometry/lineline2d/
>
>> I used that stuff to develop these (you'll need David Fanning's cg*
>> routines)
>
>> http://dl.dropbox.com/u/8433654/pbourke_lines.zip
>
>> Cheers,
>> Ben
>
> Hi Ben,
>
> Thanks very much for this, works like a charm. I had looked at the
> website you linked, but missed the crucial line at the bottom: "The
> equations apply to lines, if the intersection of line segments is
> required then it is only necessary to test if ua and ub lie between 0
> and 1. Whichever one lies within that range then the corresponding
> line segment contains the intersection point. If both lie within the
> range of 0 to 1 then the intersection point is within both line
> segments". Reading your code, this appears to be how you find it?
>
> Thanks again,
> Jimmy

Hi,

Yikes! I don't remember it very well, but I think that is what this
line does:

onSegment = [ (ua GE ZERO) AND (ua LE ONE), (ub GE ZERO) AND (ub LE
ONE)]

Cheers,
Ben
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Stretching MODIS data
Next Topic: Required Classes

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 18:04:51 PDT 2025

Total time taken to generate the page: 0.00491 seconds