Hi. Do we agree that metatiling does not completely solve the issue? I'm thinking about the "polygon spans multiple metatiles" case. Eric
2008/10/28, Tim Schaub <[EMAIL PROTECTED]>: > Hey- > > Lehtonen, Mika wrote: >> Hi, >> >> I am trying to do some labels on polygons which are in an overlay layer >> on top of Google Map base layer. The polygon data is served through WMS >> (Geoserver). Labels are produced in GeoServer using its own style >> definition (TextSymbolizer). The problem is that larger polygons get >> more than one label on them. I would prefer them to have exactly one per >> polygon. If I test the polygon layer with Geoserver's OL preview, >> everything is just like I would want it to be. But my html page is >> something else. >> > > Regarding labels, your WMS layer probably uses multiple tiles (unless > you set singleTile to true). With multiple tile requests, the server > treats each as independent, so it will faithfully label as many polygons > as the tile bounds intersect. > > A good solution for nicely labeled tiles that improves performance is to > use something that creates meta-tiles (big tiles that are sliced into > smaller ones) and caches your rendered tiles. Both TileCache and > GeoWebCache will do this for you. > > If you have data that changes frequently - or some other reason not to > cache tiles on the server - you can use the non-standard TILED and > TILESORIGIN parameters in your WMS request. This tells GeoServer that > multiple requests are coming in for tiles, and it figures out which > polygons to label. > > See these two examples: > http://tinyurl.com/tiledfalse (TILED=false) > http://tinyurl.com/tiledtrue (TILED=true) > > Read the bit on "On the fly meta tiler": > http://geoserver.org/display/GEOSDOC/WMS+vendor+parameters#WMSvendorparameters-TILED > > Also, view the source of your GeoServer layer preview to see the use in > an OpenLayers page. > >> I also noticed that the scale in my page when compared to scale in the >> OL preview, is different. However, the SLD seem to be obeying the scale >> value although the real map scale is different. Could that differ be the >> key to my problems? > > OpenLayers assumes a display resolution of 72 dots per inch by default. > This is almost always wrong (but an app designer has no way of knowing). > > The SLD spec says the following: > > The "standardized rendering pixel size" is defined to be 0.28mm × 0.28mm > (millimeters). > > Which (as it admits) is frequently wrong (and generally unknown by the > server). But, at least it is a standard. > > The GeoServer layer preview sets the OpenLayers.DOTS_PER_INCH constant > to match the SLD "standardized rendering pixel size." You can do this > as well in your application: > > OpenLayers.DOTS_PER_INCH = 25.4 / 0.28; > >> >> I will deliver further information if needed. OL is either 2.7 or the >> one delivered with Geoserver 1.7.0. >> > > None of the above will be different with any 2.x version of OpenLayers. > But it looks like OpenLayers 2.7 got in to GeoServer 1.7 > (http://jira.codehaus.org/browse/GEOS-2279). > > Good luck, > Tim > >> - mika - >> _______________________________________________ >> Users mailing list >> [email protected] >> http://openlayers.org/mailman/listinfo/users > > > -- > Tim Schaub > OpenGeo - http://opengeo.org > Expert service straight from the developers. > _______________________________________________ > Users mailing list > [email protected] > http://openlayers.org/mailman/listinfo/users > _______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
