<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>Dear All,</span></div><div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"><div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"><div id="yiv2095034340"><div style="color: rgb(0, 0, 0); font-family: times new roman, new york, times, serif; font-size: 12pt; background-color: rgb(255, 255, 255);"><div><span>I got this problem: Error: uncaught exception: [Exception... "Component returned failure code: 0x8007000e (NS_ERROR_OUT_OF_MEMORY) [nsIDOMHTMLCanvasElement.height]"&nbsp; nsresult: "0x8007000e (NS_ERROR_OUT_OF_MEMORY)"&nbsp; location: "JS frame :: <a href="http://localhost/bma/kamap/htdocs/XMLOverlay/kaXmlOverlay.js" rel="nofollow" target="_blank">http://localhost/bma/kamap/htdocs/XMLOverlay/kaXmlOverlay.js</a> :: _BrowserIdent_setCanvasHW :: line
 1551"&nbsp; data: no]</span></div><div><span></span>&nbsp;</div><div><span>the line xmloverlay&nbsp; are not shown when zoomed at the last scale of the map using this following scales ('scales' =&gt; array( 4,3,2,1,0.5,0.1,0.08,0.06,0.05,0.04,0.02,0.01 ), and ESPG 4326.</span></div><div>&nbsp;</div><div>using this algorithm:</div><div>&nbsp;function
 hiliteLine(retval){<br>&nbsp;//alert(retval);<br>&nbsp;<br>if (retval!=null){<br>var a=retval.split('|'); <br>var aPoints = new Array();<br>for (p=0;p&lt;a.length;p++){<br>var b=a[p].split(',');<br>aPoints[p] = new Array(parseFloat(b[0]),parseFloat(b[1]),p);<br>}<br>&nbsp;</div><div>//the function<br>if (<br>myXmlOverlay!=null){myXmlOverlay.remove();myXmlOverlay=null;}<br>&nbsp;&nbsp;&nbsp; printFlaglets (aPoints[0][0],aPoints[0][1],aPoints[aPoints.length-1][0],aPoints[aPoints.length-1][1]);<br>&nbsp;</div><div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myXmlOverlay = new kaXmlOverlay( myKaMap, 510); <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var line =null;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var coordinates = "";<br>&nbsp;&nbsp;&nbsp;&nbsp;//xmlOverlayUseCanvas = false;//disable canvas use for
 any compatibility problem<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i=0;i&lt;aPoints.length;i++){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var&nbsp; latitude = aPoints[i][0];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var longuitude = aPoints[i][1];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var pointId =
 i;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var my_point =myXmlOverlay.addNewPoint(pointId, longuitude, latitude);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*var my_symbol = new kaXmlSymbol();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_symbol.size = 12;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_symbol.color = '#ff0000';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 //my_point.setInnerHtml(aPoints[i][2]);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_point.onmouseover = myPointClicked;</div><div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_point.addGraphic(my_symbol);*/<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (i&gt;0) coordinates += ",";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; coordinates += longuitude + " " + latitude;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_point = myXmlOverlay.addNewPoint("Line",longuitude, latitude);<br>&nbsp;&nbsp;&nbsp;&nbsp;alert(coordinates);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; line = new kaXmlLinestring(my_point);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; line.readCoordinates(my_point, coordinates);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; line.color = 'red';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; line.stroke = 4;<br>&nbsp;&nbsp;&nbsp;&nbsp;line.opacity=0.5;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_point.addGraphic(line);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*my_point = myXmlOverlay.addNewPoint("myPoly",longuitude, latitude);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; poly = new kaXmlPolygon(my_point);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; poly.readCoordinates(my_point, coordinates);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; poly.color = 'green';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; my_point.addGraphic(poly);*/<br>}<br>}</div><div>&nbsp;</div><div>map:</div><div>MAP<br>&nbsp;NAME mainmap<br># EXTENT [minx] [miny] [maxx] [maxy]. <br># EXTENT -137138 586244 1618910 2308935<br>EXTENT&nbsp; 100 13.45 101.32 13.99<br>#83.49609375 1.1864386394452024 118.5205078125 21.3303150734318<br>&nbsp; FONTSET
 ../etc/fonts.txt<br>&nbsp; IMAGECOLOR 139 166 188<br>&nbsp; INTERLACE TRUE<br>&nbsp; SYMBOLSET ../etc/symbols.sym<br>&nbsp; SHAPEPATH "../data"<br>IMAGETYPE&nbsp; png<br>&nbsp;INTERLACE OFF</div><div>OUTPUTFORMAT<br>&nbsp;NAME aggpng<br>&nbsp;DRIVER AGG/PNG<br>&nbsp;MIMETYPE "image/png"<br>&nbsp;## transparency only with RGBA Image Mode<br>&nbsp;## mapserver had to be compiled -with-experimental-png<br>&nbsp;IMAGEMODE RGBA<br>&nbsp;EXTENSION "png"<br>&nbsp;FORMATOPTION "QUANTIZE_FORCE=ON"<br>&nbsp;FORMATOPTION "QUANTIZE_COLORS=256"<br>&nbsp;FORMATOPTION "QUANTIZE_NEW=ON"<br>&nbsp;TRANSPARENT ON<br>&nbsp;end<br>OUTPUTFORMAT<br>&nbsp; NAME "png"<br>&nbsp; DRIVER "GD/PNG"<br>&nbsp; MIMETYPE "image/png"<br>&nbsp; IMAGEMODE RGB<br>&nbsp; FORMATOPTION&nbsp; INTERLACE=OFF<br>&nbsp; TRANSPARENT OFF<br>&nbsp; EXTENSION "png"<br>END</div><div>OUTPUTFORMAT<br>&nbsp; NAME "png8"<br>&nbsp; DRIVER "GD/PNG"<br>&nbsp; MIMETYPE "image/png"<br>&nbsp; IMAGEMODE
 PC256<br>&nbsp; FORMATOPTION&nbsp; INTERLACE=OFF<br>&nbsp; TRANSPARENT OFF<br>&nbsp; EXTENSION "png"<br>END</div><div>OUTPUTFORMAT<br>&nbsp; NAME "jpeg"<br>&nbsp; DRIVER "GD/JPEG"<br>&nbsp; MIMETYPE "image/jpeg"<br>&nbsp; IMAGEMODE RGB<br>&nbsp; FORMATOPTION "QUALITY=70"<br>&nbsp; EXTENSION "jpg"<br>END</div><div>#<br># Image formats for AGG<br>#<br># OUTPUTFORMAT&nbsp;&nbsp; ### 24 bit PNG<br>&nbsp; # NAME 'agg_png'<br>&nbsp; # DRIVER AGG/PNG<br>&nbsp; # IMAGEMODE RGB<br># END</div><div># OUTPUTFORMAT&nbsp; ### 32 bit PNG with alpha channel from transparency<br>&nbsp; # NAME 'agg_pnga'<br>&nbsp; # DRIVER AGG/PNG<br>&nbsp; # IMAGEMODE RGBA<br># END</div><div># OUTPUTFORMAT&nbsp; ### 8 bit PNG<br>&nbsp; # NAME 'agg_png8'&nbsp; <br>&nbsp; # DRIVER AGG/PNG<br>&nbsp; # IMAGEMODE RGB<br>&nbsp; # FORMATOPTION "QUANTIZE_FORCE=ON"<br>&nbsp; # FORMATOPTION "QUANTIZE_DITHER=OFF"<br>&nbsp; # FORMATOPTION "QUANTIZE_COLORS=256"<br># END</div><div>#
 OUTPUTFORMAT<br>&nbsp; # NAME 'agg_jpeg'<br>&nbsp; # DRIVER AGG/JPEG<br>&nbsp; # IMAGEMODE RGB<br># END</div><div><br>OUTPUTFORMAT<br>&nbsp; NAME GTiff<br>&nbsp; DRIVER "GDAL/GTiff"<br>&nbsp; MIMETYPE "image/tiff"<br>&nbsp; IMAGEMODE RGB<br>&nbsp; #FORMATOPTION "TFW=YES"<br>&nbsp; #FORMATOPTION "COMPRESS=PACKBITS"<br>&nbsp; EXTENSION "tif"<br>END</div><div>OUTPUTFORMAT<br>&nbsp; NAME imagemap<br>&nbsp; MIMETYPE "text/html"<br>&nbsp; FORMATOPTION SKIPENDTAG=OFF<br>&nbsp; DRIVER imagemap<br>END<br>&nbsp;SIZE 800 525<br>&nbsp; STATUS ON<br>&nbsp; TRANSPARENT TRUE<br>&nbsp; UNITS METERS<br>#PROJECTION<br>#"init=epsg:4326"<br>#"proj=longlat"<br>#"datum=WGS84"<br>#"ellps=WGS84"<br>#"no_defs"<br>#END<br>PROJECTION<br>&nbsp;&nbsp; "init=epsg:4326"<br>&nbsp;END</div><div>&nbsp;&nbsp;&nbsp; <br>&nbsp; WEB<br>&nbsp; </div><div>&nbsp;&nbsp;&nbsp; IMAGEPATH "/ms4w/tmp/ms_tmp/"<br>&nbsp;&nbsp;&nbsp; IMAGEURL "/ms_tmp/"</div><div><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;
 END</div><div>REFERENCE<br>&nbsp;&nbsp;&nbsp; COLOR -1 -1 -1 <br>&nbsp;EXTENT&nbsp; 91.87 4.57 112.01 21.73 <br># 83.49609375 1.1864386394452024 118.5205078125 21.3303150734318<br>&nbsp;&nbsp;&nbsp; IMAGE "images/reference.png"<br>&nbsp;&nbsp;&nbsp; OUTLINECOLOR 0 0 0<br>&nbsp;&nbsp; SIZE 120 90<br>&nbsp;&nbsp;&nbsp; STATUS ON<br>&nbsp;<br>&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp; END</div><div>&nbsp;</div><div><br>LEGEND<br>&nbsp; KEYSIZE 18 12<br>&nbsp; LABEL<br>&nbsp;&nbsp;&nbsp; TYPE BITMAP<br>&nbsp;&nbsp;&nbsp; SIZE MEDIUM<br>&nbsp;&nbsp;&nbsp; COLOR 0 0 89<br>&nbsp; END<br>&nbsp; STATUS OFF<br>END</div><div><br>SCALEBAR<br>&nbsp; STATUS off<br>&nbsp; TRANSPARENT off<br>&nbsp; INTERVALS 4<br>&nbsp; SIZE 200 3<br>&nbsp; UNITS meters<br>&nbsp; COLOR 250 250 250<br>&nbsp; OUTLINECOLOR 0 0 0<br>&nbsp; BACKGROUNDCOLOR 100 100 100<br>&nbsp; STYLE 0<br>&nbsp; POSTLABELCACHE true<br>&nbsp; LABEL<br>&nbsp;&nbsp;&nbsp; COLOR 0 0
 90<br>&nbsp;&nbsp;&nbsp; #OUTLINECOLOR 200 200 200<br>&nbsp;&nbsp;&nbsp; SIZE small<br>&nbsp; END&nbsp; # Label<br>END&nbsp; # Reference<br>&nbsp; <br>QUERYMAP<br>&nbsp; STYLE HILITE<br>&nbsp; COLOR 0 0 0<br>END</div><div>&nbsp; SYMBOL<br>&nbsp;&nbsp;&nbsp; NAME 'circle'<br>&nbsp;&nbsp;&nbsp; TYPE ELLIPSE<br>&nbsp;&nbsp;&nbsp; POINTS 1 1 END<br>&nbsp;&nbsp;&nbsp; FILLED TRUE<br>&nbsp; END</div><div>############</div><div>#/////////////////province here<br>&nbsp; LAYER<br>&nbsp;&nbsp;&nbsp; NAME "province"<br>group "province"<br>#&nbsp;&nbsp;&nbsp; CONNECTION "user=postgres dbname=rpmsii host=localhost port=5432 password=dohtu"<br>#&nbsp;&nbsp;&nbsp; CONNECTIONTYPE POSTGIS<br>#&nbsp;&nbsp;&nbsp; DATA "the_geom from province using unique gid using srid=4326"<br>DATA province<br>#PROJECTION<br>#"init=epsg:32647"<br>#"proj=utm"<br>#"zone=47"<br>#"a=6377276.345"<br>#"b=6366075.41314024"<br>#"units=m"<br>#"no_defs"<br>&nbsp;#&nbsp;&nbsp; END<br>&nbsp;
 METADATA<br>&nbsp;&nbsp;&nbsp; "DESCRIPTION"&nbsp;&nbsp; "Thailand Provinces"<br>&nbsp;&nbsp;&nbsp; "RESULT_FIELDS" "province_name_t area prov_code"<br>&nbsp; END<br>&nbsp; TYPE POLYGON<br>&nbsp; STATUS ON<br>&nbsp;<br>&nbsp; #LabelItem "province_name_t"&nbsp; <br>CLASSITEM "gid" <br>CLASS<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EXPRESSION "1"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TEMPLATE "parks.html"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NAME "31"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; METADATA<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; END<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STYLE<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ANGLE 360<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; COLOR 206 254 135<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OUTLINECOLOR 0 0 0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SIZE 1<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SYMBOL 0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; END<br>&nbsp;&nbsp;&nbsp;
 END<br>&nbsp;&nbsp;&nbsp;.....</div></div></div></div></div></div></body></html>