LegendInfo could be embedded in the StyleInfo, and in fact this would
happen automatically if you simply make a LegendInfo class and add one as a
property of StyleInfo objects. Justin might disagree but I don't see any
potential drawbacks with this approach (unless it's useful to share legends
between styles - but it shouldn't be, right?)
As for having ShapePainter paint external legends, I think that I would use
a separate method rather than trying to wrap Legends as Styles somehow.
--
David Winslow
OpenGeo - http://opengeo.org/
On Mon, Oct 1, 2012 at 7:10 PM, Yancy Matherne
<[email protected]>wrote:
> Hi all,
>
> We have a few weather observation layers that include many attributes,
> and we use several TextSymbolizers with custom fonts, rotations, anchor
> points, etc. to generate a complex icon that graphically represents several
> attributes' values at the same time [see attached GetMap]. Unfortunately,
> the GetLegendGraphic service does not generate a useful legend out of the
> box for these styles [see attached GetLegendGraphic]. The icons for these
> layers are so complex that a legend like [
> http://visual.merriam-webster.com/images/earth/meteorology/station-model.jpg]
> would be more useful than a vertical listing of the rules.
>
> We are looking to patch GeoServer to do two things:
> 1) Point the LegendURL in the GetCapabilities to an ExternalGraphic.
> 2) Implement the LegendGraphic for Rules in SLD.
>
> I have already started looking into each patch, and I think I have a
> general approach to each.
>
> 1) Capabilities_1_3_0_Transformer.handleLegendURL() already takes a
> LegendInfo parameter, but Capabilities_1_3_0_Transformer.handleStyles()
> always passes in null. I was thinking we could add a LegendInfo to
> StyleInfo to persist the ExternalGraphic information. But I'm not sure on
> the details of this. Would I be able to put the LegendInfo directly into
> the StyleInfo XML file or would there need to a separate file with
> references between them?
>
> 2) The LegendGraphic element in Rules is part of the SLD spec, but it
> does not appear (to me) to be implemented in GeoServer. While using the
> debugger, in BufferedImageLegendGraphicBuilder.buildLegendGraphic(), a
> LegendGraphic that is included in your SLD is accessible by calling
> applicableRules[i].getLegend(). But that never happens in the actual code
> so it never gets used. I was looking to just paint the GraphicLegend there,
> but the shapePainter.paint() method that is used there takes a Style2D
> object and I haven't been able to figure out how to convert a GraphicLegend
> to a Style2D object or perhaps use a different paint method?
>
> I think these would be useful additions for the whole community and I
> appreciate any feedback or recommendations on this. Part of the tasking is
> to commit this back to GeoServer source.
>
>
> Thanks,
> Yancy Matherne
> Software Developer
>
> Geocent, LLC
> 111 Veterans Blvd., Suite 1600
> Metairie, LA 70005
> O: (504) 831-1900
> E: [email protected]
> http://www.geocent.com
>
>
> ------------------------------------------------------------------------------
> Got visibility?
> Most devs has no idea what their production app looks like.
> Find out how fast your code is with AppDynamics Lite.
> http://ad.doubleclick.net/clk;262219671;13503038;y?
> http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> _______________________________________________
> Geoserver-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geoserver-devel
>
>
------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel