[Geoserver-devel] R: Planning the next few months (warning, long mail)

Hello list.

I'm reading this thread with much interest. In the webmapping application my company is building (based on GeoServer), we're sadly discovering the issue about tiled rendering (label moving near tile boundary and cell and text cutting).

Tiled rendering is very "cool" and definitively a must for us (for both performance and usability reasons), but these problem seems to put a stop on this road.

Directly supporting it in GeoServer (via WMS-C or TMS) would be great, but in the meantime we're guessing if there could be some workaround that let one use the tile mechanism and still keep getting correct maps (without at least ugly cut cells).

Has anybody some hint in this direction? Maybe through a patch to GeoServer, as was discussed in this list some time ago (about a possible vendor-specific option in the SLD with which to get no cross-tile label, for example)?

Many thanks in advance for any feedback.

Best Regards,

Fabio Da Soghe

-----Messaggio originale-----
Da: geoserver-devel-bounces@lists.sourceforge.net [mailto:geoserver-devel-bounces@lists.sourceforge.net] Per conto di Andrea Aime
Inviato: lunedì 11 dicembre 2006 9.00
A: Paul Ramsey
Cc: Geoserver-devel
Oggetto: Re: [Geoserver-devel] Planning the next few months (warning, long mail)

Paul Ramsey ha scritto:

On 10-Dec-06, at 8:55 AM, Andrea Aime wrote:

* tiled WMS: this requires changes in both the gt2 renderer and
    a new module that builds on top on the current WMS I guess.
    Changes required in the renderer are not earth shattering, so
    I guess they could be handled in 2.3.x or 2.4.x once branched.

Why do you perceive tiling as a re-implementation issue? I think the
TileCache approach already being pushed by Metacarta shows that it's
just a layering on top of existing rendering infrastructures. So WMS
tiling should be handled as another layer on top of an (unchanged)
render stack?

Yes, you could, and it can be work very fine.
At the minimum, we require the geotools renderer to stop moving labels for each different rendering request, and this is in the pack of "properly supporting WMS-C", that is, just fix the current WMS and make it usable to serve tiles with TileCache on top of it.

Supporting TMS in Geoserver is another matter. From where I stand, if an admin is familiar with Apache and Python he would choose MapServer or Mapnik as the backend anyways, unless he needs better looking maps.

On the contrary, an organisation using already Java may be uncomfortable of fiddling with another piece of software, one using Microsoft stuff would be probably even more scared away from having to install not one but two foreign technologies.

Having around TileCache makes it less urgent to implement one in Geoserver, at the same time the implementation is already there and quite nice and compact, so re-coding it in Geoserver should not be a major effort either.

Cheers
Andrea Aime

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Fabio Da Soghe ha scritto:

Hello list.

I'm reading this thread with much interest. In the webmapping
application my company is building (based on GeoServer), we're sadly
discovering the issue about tiled rendering (label moving near tile
boundary and cell and text cutting).

Tiled rendering is very "cool" and definitively a must for us (for
both performance and usability reasons), but these problem seems to
put a stop on this road.

Directly supporting it in GeoServer (via WMS-C or TMS) would be
great, but in the meantime we're guessing if there could be some
workaround that let one use the tile mechanism and still keep getting
correct maps (without at least ugly cut cells).

Yeah, I hear you. We'll be hopefully doing something in the next
weeks, since I'm almost done with the first iteration of the
versioned data store.

Has anybody some hint in this direction? Maybe through a patch to
GeoServer, as was discussed in this list some time ago (about a
possible vendor-specific option in the SLD with which to get no
cross-tile label, for example)?

Well, this requires two things:
* a buffer area, that is, to make sure every line, symbol and label
   is properly rendered we have to expand the rendering area of the
   tile. A smarter way, once we have server side tile caching, is
   the metatile approach TileCache is using, that is, render say
   6 adjacent tiles to avoid paying a big extra rendering effort
   due to the buffer.
* avoid having labels consider the rendered bbox and jump around,
   the renderer should consider a big seamless surface instead,
   since this is what tiling is about, build a seamless surface
   out of smaller images.

As said, I hope to get at least some of this changes in by
the end of January, but I can make no promises.

Cheers
Andrea

We're hoping to work on it relatively soon, at the very least the fix to do better rendering of labels for tiles.

But in the meantime, if you're using metacarta's TileCache - http://labs.metacarta.com/wms-c/ - they have an option called 'metaTile' that gives pretty nice results with regards to tiles on GeoServer.

See: http://sigma.openplans.org/ for an example and http://sigma.openplans.org/tilecache\-1\.3/tilecache\.cfg for how we set up the params (note that you need version 1.3 and the python imaging library for it to work properly).

What it does is request a 5x5 tile (which you can set to be even bigger with the metaSize param) from the WMS, and cuts it up on the client side. This is how ka-map works actually, as MapServer's renderer is even more finicky for tiles than GeoServer (they also need the metaBuffer so lines don't get rounded off). Some labeling is still repeated, but it's not at every tile so it looks much better.

You also get better performance overall - the first tile will come back a bit more slowly, but the set of tiles will come much more quickly, as GeoServer does better rendering a large area all at once. And of course that's only on areas that haven't been pre-cached. You can use their client to pre-cache you're whole map if it's not too big. (I need to take some time to write up a nice tutorial on setting all this up...)

If that's not sufficient for you and you're interested in funding the patch to the renderer immediately or getting directions on how to do it yourself let us know.

best regards,

Chris

Fabio Da Soghe wrote:

Hello list.

I'm reading this thread with much interest. In the webmapping application my company is building (based on GeoServer), we're sadly discovering the issue about tiled rendering (label moving near tile boundary and cell and text cutting).

Tiled rendering is very "cool" and definitively a must for us (for both performance and usability reasons), but these problem seems to put a stop on this road.

Directly supporting it in GeoServer (via WMS-C or TMS) would be great, but in the meantime we're guessing if there could be some workaround that let one use the tile mechanism and still keep getting correct maps (without at least ugly cut cells).

Has anybody some hint in this direction? Maybe through a patch to GeoServer, as was discussed in this list some time ago (about a possible vendor-specific option in the SLD with which to get no cross-tile label, for example)?

Many thanks in advance for any feedback.

Best Regards,

Fabio Da Soghe

-----Messaggio originale-----
Da: geoserver-devel-bounces@lists.sourceforge.net [mailto:geoserver-devel-bounces@lists.sourceforge.net] Per conto di Andrea Aime
Inviato: lunedì 11 dicembre 2006 9.00
A: Paul Ramsey
Cc: Geoserver-devel
Oggetto: Re: [Geoserver-devel] Planning the next few months (warning, long mail)

Paul Ramsey ha scritto:

On 10-Dec-06, at 8:55 AM, Andrea Aime wrote:

* tiled WMS: this requires changes in both the gt2 renderer and
    a new module that builds on top on the current WMS I guess.
    Changes required in the renderer are not earth shattering, so
    I guess they could be handled in 2.3.x or 2.4.x once branched.

Why do you perceive tiling as a re-implementation issue? I think the TileCache approach already being pushed by Metacarta shows that it's just a layering on top of existing rendering infrastructures. So WMS tiling should be handled as another layer on top of an (unchanged) render stack?

Yes, you could, and it can be work very fine.
At the minimum, we require the geotools renderer to stop moving labels for each different rendering request, and this is in the pack of "properly supporting WMS-C", that is, just fix the current WMS and make it usable to serve tiles with TileCache on top of it.

Supporting TMS in Geoserver is another matter. From where I stand, if an admin is familiar with Apache and Python he would choose MapServer or Mapnik as the backend anyways, unless he needs better looking maps.

On the contrary, an organisation using already Java may be uncomfortable of fiddling with another piece of software, one using Microsoft stuff would be probably even more scared away from having to install not one but two foreign technologies.

Having around TileCache makes it less urgent to implement one in Geoserver, at the same time the implementation is already there and quite nice and compact, so re-coding it in Geoserver should not be a major effort either.

Cheers
Andrea Aime

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

!DSPAM:1003,45954c16300391665516417!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org