> Ben Rubinstein | Email: [EMAIL PROTECTED]Cognitive Applications Ltd | Phone: +44 (0)1273-821600 http://www.cogapp.com | Fax : +44 (0)1273-728866
Here is a little routine I have written that will accurately calculate the area of irregular polygons so long as there are no crossed lines. You can have irregular shapes as funky as you like and this will work -- provided there are no lines which cross.
The math behind this is fascinating.
Area returned is in pixels. If you wish to use units as square cm, square inches, etc. it can be appropriately adjusted.
function IrPolyArea i put the points of graphic i into k put 0,0 into n repeat for each line i in k add item 1 of i*item 2 of n-item 2 of i *item 1 of n to tsum put i into n end repeat return abs(tsum/2) end IrPolyArea
Raymond E. Griffith
Ray,
This is really slick. I had to change the notation as follows before I could decipher your clever algorithm:
on function IrPolyArea i
put the points of graphic i into tPoints
put 0,0 into tPreviousLine
repeat for each line tLine in tPoints
add item 1 of tLine *item 2 of tPreviousLine - item 2 of tLine *item 1 of tPreviousLine to tsum
put tLine into tPreviousLine
end repeat
return abs(tsum/2)
end IrPolyArea
Jim _______________________________________________ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
