Thanks Martijn. I have convinced myself your tip is the correct approach (although your formula is slightly wrong as it gives twice the area) and I have replaced my changes with a new fix using this new approach in the 737 trac ticket.
Regards, Roy Rankin Martijn van Oosterhout wrote: > On Sun, May 11, 2008 at 9:58 AM, Roy Rankin <[EMAIL PROTECTED]> wrote: >> I have done a rewrite of the code as follows: >> >> Determine the mean latitude of the closed way. >> Then add the deltas of longitude for each segment starting with >> a latitude greater than mean and subtract the deltas of longitude >> if the start is less than the mean latitude. >> >> The result should be positive for clockwise ways and negative >> for counter-clockwise ways. > > You're almost there. You should just use the proper formula for the > area of a polygon: > > for each node > area += x*deltay - y*deltax > > Dont' need to calculte the mean, nor test anything for direction. And > 100% relaible (for non-self-intersecting polygons anyway). > > Have a nice day, _______________________________________________ josm-dev mailing list [email protected] http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/josm-dev
