Hi,
Chris Holmes wrote:
Could you submit this to the task tracker? See:
http://docs.codehaus.org/display/GEOSDOC/Reporting+Issues for more
information. It would be really helpful if you could suggest first the
minimum needed for this to be useful (like just allow you to fill out
the value yourself), and what more could be done on it. Like could
there be some sort of 'generate' button similar to the bbox of
featureType? Could we derive it from the bounds of the datastore in a
similar way?
Scale hints can provide two things:
A. Let the administrator declare scale visibility by layer. This helps with
problems of overwhelming rendering for inappropriate scale views. In my
experiments it has been a problem and I notice that it is a frustration in
using uDig as well. Without prior knowledge of scale appropriate layers the
client can get tangled up in very long rendering cycles at best and at worst
blow up the local client altogether.
B. Let the client know what is appropriate. If the getCapabilities request
returns the associated scale hint assigned to a layer the local client can
do something like grey out the layer that is not in zoom view.
Scale hints are scaler so bbox is helpful only in letting you calculate the
current scale. Autogenerated scalehints are not useful from the overall
bounding box, since the idea is to manipulate visibility at larger scales.
You could work out some way to generate the scale hints from a client by
letting the admin zoom to the desired level and then request the min or max
scale hint be populated on the server. However, this requires a client like
uDig be used for administration. I think the easiest approach is just to add
min and max scale hint textboxes to the config page for a featuretype.
Publish those attributes in the getCapabilities results and then calculate
the zoom scale from furnished BBOX queries which is then compared to the
min/max scale hints. If the current BBOX scale falls within the scale hints
for the layer it is queried and rendered, otherwise skipped.
USGS Atlas uses some scale hints which are implemented in their ESRI OWS.
Note: the ScaleHint element does not use the defined SRS but is calculated
on an estimated pixel size in ground units.
http://ims.cr.usgs.gov/servlet19/com.esri.wms.Esrimap/USGS_EDC_National_Atla
s?Service=WMS&Version=1.1.1&Request=GetCapabilities
- <Layer queryable="1" opaque="0" noSubsets="0">
<Name>ATLAS_DAMS_LARGE_DRAINAGE</Name>
<Title>ATLAS_DAMS_LARGE_DRAINAGE</Title>
<SRS>EPSG:4326</SRS>
<LatLonBoundingBox minx="-162.934219894082" miny="18.0160769664877"
maxx="-66.0146106597344" maxy="68.0675886974449" />
<ScaleHint min="1814.4917218905402" max="33670.98040621619" />
</Layer>
- <Layer queryable="1" opaque="0" noSubsets="0">
<Name>ATLAS_DAMS_150</Name>
<Title>ATLAS_DAMS_150</Title>
<SRS>EPSG:4326</SRS>
<LatLonBoundingBox minx="-122.7628" miny="25.7603799999997"
maxx="-67.7777800000003" maxy="48.7481800000005" />
</Layer>
- <Layer queryable="1" opaque="0" noSubsets="0">
<Name>ATLAS_DAMS_075</Name>
<Title>ATLAS_DAMS_075</Title>
<SRS>EPSG:4326</SRS>
<LatLonBoundingBox minx="-153.10449" miny="18.1013500000008"
maxx="-66.4879500000006" maxy="61.4155800000008" />
<ScaleHint min="1814.4917218905402" max="8230.68409929728" />
</Layer>
- <Layer queryable="1" opaque="0" noSubsets="0">
<Name>ATLAS_DAMS</Name>
<Title>ATLAS_DAMS</Title>
<SRS>EPSG:4326</SRS>
<LatLonBoundingBox minx="-162.934219894082" miny="18.0160769664877"
maxx="-66.0146106597344" maxy="68.0675886974449" />
<ScaleHint min="31.426248379135124" max="1814.4917218905402" />
</Layer>
And does one need to be able to add multiple scale hints? Is that even
possible?Also, the advice you give here is great, any chance you could write it
up as a 'use narrative'? Or if you've blogged about it, you can just
give a link to the blog posts. This kind of information is super
helpful, and is great when it lives outside of just the mailing list.
see http://docs.codehaus.org/display/GEOSDOC/Use+Narrative It can be
super informal, just experiences you've had with GeoServer.
-----Original Message-----
From: geoserver-users-admin@lists.sourceforge.net
[mailto:geoserver-users-admin@lists.sourceforge.net] On Behalf Of Chris
Holmes
Sent: Friday, February 24, 2006 10:42 AM
To: Randy George
Cc: geoserver-users@lists.sourceforge.net; 'Omar Zevallos'
Subject: Re: [Geoserver-users] Viewer with Geoserver
Randy George wrote:
Hi,
Adobe SVG ASV3.03 has problems rendering large datasets. The nice
thing, though, about OWS is that it provides a straightforward seamless
interface to very large data sets (such as your 30000+ polygons). You will
need to limit the number of polygons in small scale views. Here a couple
things you could try:1. At small scales show points (circles) rather than polygons. I assume
the
polygons are house symbols. Even using points your 30000+ points could
overload the client rendering. This would mean adding another
table/datastore calculating a centroid for each existing polygon.2. Do not allow polygons or points to render until zoomed in to a
reasonable
level. Unfortunately GeoServer doesn't let you set scale hints yet:
<ScaleHint min="31.426248379135124" max="33670.98040621619" />So you will have to provide scale visibility on your own server
side. I am hoping that future versions of geoserver will implement the
scale
hints. The problem is what to show at small scales.
Could you submit this to the task tracker? See:
http://docs.codehaus.org/display/GEOSDOC/Reporting+Issues for more
information. It would be really helpful if you could suggest first the
minimum needed for this to be useful (like just allow you to fill out
the value yourself), and what more could be done on it. Like could
there be some sort of 'generate' button similar to the bbox of
featureType? Could we derive it from the bounds of the datastore in a
similar way?
And does one need to be able to add multiple scale hints? Is that even
possible?
Also, the advice you give here is great, any chance you could write it
up as a 'use narrative'? Or if you've blogged about it, you can just
give a link to the blog posts. This kind of information is super
helpful, and is great when it lives outside of just the mailing list.
see http://docs.codehaus.org/display/GEOSDOC/Use+Narrative It can be
super informal, just experiences you've had with GeoServer.
best regards,
Chris
3. Combine a WMS image/jpeg with WMS image/svg+xml. In other words use the
more or less static WMS jpeg, png etc until zoomed to a certain level and
then switch to image/svg+xml with the necessary event listeners to make it
useful on the client. Note: with very large datastores the time to render
server side is also prohibitive at small scales. (another reason
scalehints
would be helpful)
Since you are using Adobe ASV here is a sample svg interface you might be
interested in seeing:
http://www.web-demographics.com/OWSGeothermal
There are about 6000 Geothermal SMUWells at the Western US zoom level
shown
as point symbols. There are about 50000 Quatenary Faults,
gml:MultiLineString elements, which will not render at the US level of
zoom
without blowing up the ASV rendering on a 512Mb client.
This experimental site uses client side svg for both WMS and WFS. For WMS
the image is embedded as an svg image element with an xlink:href pointing
to
the WMS like this:
<image id="img" x="-125.0" y="-53.0" width="60.0" height="30.0"
xlink:href="http://onearth.jpl.nasa.gov/wms.cgi?styles=&service=WMS&ServiceN
ame=WMS&request=GetMap&layers=BMNG&format=image/jpeg&srs=EPSG:4326&bbox=-125
,23,-65,53&width=1000&height=500">
</image>This allows local Geoserver WFS site layers to overlay selected WMS.
The handy thing about svg (or any declarative xml graphic spec) are
all of the things you can do with event listeners on the client, which is
why the svg export from geoserver WMS is fairly useless(static), as you
pointed out.
I found using the WFS export and then decorating with custom event
capability to be a more flexible approach. You could do the same with the
svg. In both cases you need server side control in addition to geoserver
to
add client capability. I still wonder about injecting event listener
attribution through sld somehow, since listeners could be considered just
a
form of rendering like fill or stroke.
rkgeorge
-----Original Message-----
From: geoserver-users-admin@lists.sourceforge.net
[mailto:geoserver-users-admin@lists.sourceforge.net] On Behalf Of Omar
Zevallos
Sent: Thursday, February 23, 2006 10:41 PM
Cc: geoserver-users@lists.sourceforge.net
Subject: [Geoserver-users] Viewer with GeoserverHi there, months ago, I have been looking for a viewer (for Browser) to
show
cadastral data through geoserver. I have tried MapBuilder and Adobe SVG
Viewer.
With MapBuilder I did not continue working because I did not find the way
to
work with events (onclick, mouseover, etc), and I´m working with SVG now,
but I have troubles with overload data, since, I have a layer that
includes
lotes (polygons that draw a house in the map) of all my region (about
30000
rows). I do not know like handling so many data in the browser...
I suppose that one of you has had the same problems, I wish a suggestion
about this...
Thanks in advance-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting
language
that extends applications into web and mobile media. Attend the live
webcast
and join the prime developer group breaking into this new coding
territory!
http://sel.as-us.falkag.net/sel?cmd=k&kid0944&bid$1720&dat1642
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting
language
that extends applications into web and mobile media. Attend the live
webcast
and join the prime developer group breaking into this new coding
territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users
--
Chris Holmes
The Open Planning Project
thoughts at: http://cholmes.wordpress.com