Even faster methods are available for calculation of polygon direction:
http://www.faqs.org/faqs/graphics/algorithms-faq/ (160 Kb text document)

Look at subject 2.07.

Kind regards

Uffe Kousgaard
www.routeware.dk

----- Original Message -----
From: "Warren Vick, Europa Technologies Ltd." <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>; "MapInfo List"
<[EMAIL PROTECTED]>
Sent: Thursday, April 25, 2002 11:37 AM
Subject: RE: MI-L Polygon direction


> Hello Robert,
>
> The standard method to determine polygon orientation is indeed by
> calculating the area. Depending on the exact implementation of the
formula,
> counter/anti-clockwise polygon have a negative area and clockwise are
> positive (or vica-versa). The only optimisation that I am aware of is
that
> you can dispense with the computationally expensive sqrt() function -
after
> all, your not interested in the area value - just whether it's +ve
or -ve.
> Note that this method only works with well formed polygons - no self
> intersection or bow ties - anomalies which will cause +ve and -ve
areas
> within the polygon which may cancel each other or give the incorrect
overall
> sign.
>
> Regards,
> Warren Vick
> Europa Technologies Ltd.
> http://www.europa-tech.com
>
> -----Original Message-----
> From: Robert Crossley [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, April 24, 2002 12:33 AM
> To: MapInfo List
> Subject: MI-L Polygon direction
>
>
> Hi all,
>
> A while ago, I asked a question about an external function to
calculate the
> area of a polygon and got some good references.  I ended up using the
> gauss-green function based on the formula:
> Area=(Sum(y(n)-y(n+1))*(x(n)+x(n+1)))/2 .
>
> At the time, there was also some talk of polygon direction, that
didn't seem
> to worry the results.  I now find that that is because as a right
hander, i
> naturally digitised in a clockwise direction.  On further testing, if
I
> digitised in a counter-clockwise direction I was getting a negative
(but
> seemingly
> correct area?) area.
>
> So I thought I should put a direction test into the code, and a search
of
> the archives showed that there was a test for direction as well.  But
the
> test
> seemed to be the gauss-green area calculation, and if it returned a
positive
> number it was clockwise, and a negative number was counter-clockwise.
>
> So am I correct in assuming that the area is the positive value of the
> calculated area from the gauss-green formula and forget about trying
to work
> out
> the direction?
>
> THanks
>
> Robert.
>
>
>
>
>
>
> Robert Crossley
> Robert Crossley & Associates
> 9 Short St
> New Brighton NSW 2483
> AUSTRALIA
>
> P: 02 6680 1309
> F: New Connection
> M: 0419 718 642
> E: [EMAIL PROTECTED]
>
>
>
>
> ---------------------------------------------------------------------
> List hosting provided by Directions Magazine | www.directionsmag.com |
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail:
[EMAIL PROTECTED]
>
>
>
> ---------------------------------------------------------------------
> List hosting provided by Directions Magazine | www.directionsmag.com |
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail:
[EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
List hosting provided by Directions Magazine | www.directionsmag.com |
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to