Hi Frank,<br><br>You're absolutely right. Changing those values in mapresample.c to 10 removed the artifacts when using a WMS request. They're still present when the request is made via mapscript though. I need to manually code a mapscript example though, because right now I'm testing that via TileCache, and I'm not 100% certain how the image is being requested. Can you think of a reason why WMS would be different from a straight read and reproject through mapscript?<br>
<br>cc'ing TileCache list and mapserver lists as well<br>--<br><br><div class="gmail_quote">On Tue, Nov 18, 2008 at 5:58 PM, Frank Warmerdam <span dir="ltr"><<a href="mailto:warmerdam@pobox.com">warmerdam@pobox.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">Roger André wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Frank,<br>
<br>
I've theorized all sorts of reasons for what I'm seeing. So far none of them are right. Basically, if I take a really high-res epsg:4326 image, and serve it up through Mapserver in epsg:900913, there are instances where I get images back which are missing rows of pixels at the bottom of the image. If I reduce the resolution of the image the lines go away. I haven't yet figured out at what resolution the problem starts to appear.<br>
<br>
I just tested the idea of changing the values in the warper code:<br>
First:<br>
nResWinSize += 100;<br>
Then:<br>
nResWinSize += 500;<br>
<br>
Then rebuilt gdal. Didn't seem to make a difference.<br>
</blockquote>
<br></div>
Roger,<br>
<br>
Are you sure the GDAL warper is being used? If the reprojection is being<br>
done by MapServer it will be using the MapServer warper.<br>
<br>
Try changing the +- 1.0 values to larger values in the following code in<br>
mapserver's mapresample.c:<br>
<br>
/* -------------------------------------------------------------------- */<br>
/* Project desired extents out by 2 pixels, and then strip to */<br>
/* available data. */<br>
/* -------------------------------------------------------------------- */<br>
memcpy( &sOrigSrcExtent, &sSrcExtent, sizeof(sSrcExtent) );<br>
<br>
sSrcExtent.minx = floor(sSrcExtent.minx-1.0);<br>
sSrcExtent.maxx = ceil (sSrcExtent.maxx+1.0);<br>
sSrcExtent.miny = floor(sSrcExtent.miny-1.0);<br>
sSrcExtent.maxy = ceil (sSrcExtent.maxy+1.0);<br>
<br>
<br>
See if that helps. Currently there is no processing option that does<br>
what SOURCE_EXTRA does, though it might be worth adding one.<div><div></div><div class="Wj3C7c"><br>
<br>
Best regards,<br>
-- <br>
---------------------------------------+--------------------------------------<br>
I set the clouds in motion - turn up | Frank Warmerdam, <a href="mailto:warmerdam@pobox.com" target="_blank">warmerdam@pobox.com</a><br>
light and sound - activate the windows | <a href="http://pobox.com/%7Ewarmerdam" target="_blank">http://pobox.com/~warmerdam</a><br>
and watch the world go round - Rush | Geospatial Programmer for Rent<br>
<br>
</div></div></blockquote></div><br>