Hi,
the rendering based GetFeatureInfo implementation I was talking about some
days ago.
Advantages:
* it handles point symbols with an irregular shape, you get a hit only if
you click on the actually
painted portion of the symbol (or close by), but not if you click in a
empty part of it
Works nicely also for those that simulated offsets by adding extra space
in the symbol image
* if handles properly styles with different symbol sizes, you get a hit
only if you click on the
painted symbol, instead of getting a hit considering the largest possible
symbol in the style
* conversely, if a size is fully dynamic (defined as 10 times the value of
an attribute for example),
you get a hit if you actually click on a painted symbol, instead of
having to go very close to
the center (the old code would give up and assume the search radius is
the minimal one, 5px)
* does not get issues with dash arrays or hatches, will give you a hit even
if you're clicking
in the white space (which required some extra effort given it's paint
based)
Disadvantage:
* it's somewhat slower as it's painting instead of just querying,
and significantly slower if you have sizes that are attribute dependent,
since it will scan the features first (without painting them, just
evaluating expressions)
to know how large the search area must be, but this can be overcome by
setting the buffer search area in the feature type.
But.. I guess better slower than giving back a response that is
completely inaccurate/wrong?
The code is on trunk and enabled by default, it can be turned off by
setting the following system variable:
-Dorg.geoserver.wms.featureinfo.render.enabled=false
I'll backport to 2.4.x once 2.4.3 is out, in such a way that none of the
existing code is touched
(the refactor of GetFeatureInfo won't be backported) and off by default in
this case
Please try it out and let me know how it works for you, it will be in
master nightly builds starting
tomorrow.
Cheers
Andrea
--
*== GeoSolutions will be closed for seasonal holidays from 23/12/2013 to
06/01/2014 ==*
Ing. Andrea Aime
@geowolf
Technical Lead
GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
-------------------------------------------------------
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear picture of how application performance
affects their revenue. With AppDynamics, you get 100% visibility into your
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel