<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 10 (filtered)">
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{color:purple;
text-decoration:underline;}
p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
span.EmailStyle17
{font-family:Arial;
color:windowtext;}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
{page:Section1;}
-->
</style>
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>For some reason, the area that I am getting back for
polygons using jbox seems to be off. The segment length and total length
seem to be fine, but the area is off by a factor of about 5. Does anybody
have any ideas or suggestions? Below are the measure_handler functions I
am using. </span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'> </span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Thanks for the help!</span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'> </span></font></p>
<p class=MsoAutoSig><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Mike Arnold</span></font></p>
<p class=MsoAutoSig><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>micheal.arnold@nscorp.com</span></font></p>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'> </span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>function measure_handler(name, s, t, n, a) </span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>{</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> //
c = 1 / 72dpi / 12inches_per_foot * 1.0003state_plane_scale_factor</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> var
c = 0.0011577546296296; //
constant</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> var
f = [scale] * c; //
scale factor</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> if
((s>0) || (t>0))</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> {</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> if
(n < 3)</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> {</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> defaultStatus
= "This segment = " + distFormat(s*f) + ", Total = " + distFormat(t*f)
+ ", Number of vertices = " + n ;</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> }</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> else</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> {</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> defaultStatus
= "This segment = " + distFormat(s*f) + ", Total = " + distFormat(t*f)
+ ", Number of vertices = " + n + ", Area = " + distFormat(a*f)
;</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> }</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> }</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>}</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> </span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>function roundFeet(x)</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>{</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> var
fpp = ([maxx] - [minx]) / [mapwidth]; // resolution (feet per pixel)</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> if
(fpp < 4) return (Math.round(x));</span></font></p>
<p class=MsoNormal style='text-indent:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>if (fpp < 8) return (Math.round(x/5)*5);</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>if (fpp < 17) return (Math.round(x/10)*10);</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>if (fpp < 40) return (Math.round(x/25)*25);</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>if (fpp < 80) return (Math.round(x/50)*50);</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>return (Math.round(x/100)*100);</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>}</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'> </span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>function distFormat(x) </span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>{</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>var d;</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>if (x > 7920) return ((Math.round(x/5280*10)/10)
+ " miles");</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>d = roundFeet(x);</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>if (d > 2640)</span></font></p>
<p class=MsoNormal style='margin-left:.5in;text-indent:.5in'><font size=1
face=Arial><span style='font-size:8.0pt;font-family:Arial'>return (d + "
ft (" + (Math.round(x/5280*10)/10) + ")mile");</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=1 face=Arial><span
style='font-size:8.0pt;font-family:Arial'>return (d + " ft");</span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span style='font-size:8.0pt;
font-family:Arial'>}</span></font></p>
</div>
</body>
</html>