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

Reply via email to