On Wed, May 14, 2008 02:17 PM, Jody Garnett <[EMAIL PROTECTED]> wrote:
>
JAMISON CONLEY wrote:
>> Andrea & Jody,
>>
>> From reading the proposal I didn't think that assignment process I
>> described was how it worked, but with a sufficiently (or overly)
>> complex symbol name, most of the functionality can be incorporated.
>> Instead of an XML snippet of
>> <Parameter name="headSize">15</Parameter>
>> the name could have
>> glyph://arrow?headSize=15&length=${speed}&orientation=${direction}
>> where speed and direction are attributes. I think both are ways to
>> get around limitations in SLD 1.0/SE 1.1, and the primary difference
>> is how that is achieved, through adjustments to the XML or creatively
>> embedding that information in the name.
>I understand your proposal; and it is something that was considered
>(since the code to allow parameters to be expressions was already in
>place). I agree with you that both are hacks; so I decided to go with
>the one that had an active developer - at the time I could not find
>anyone who was using or understood the GlyphRenderer class.
>
>Understandable.
>
>> What seems to be missing is the ability to go beyond attribute names.
>CQL lets you work with the full range of the Expression Syntax...
>> It often made sense to set the size of a mark to an expression like 50
>> * attribute so that the marks were big enough, or set the size to
>> log(attribute) so the map isn't dominated by one or two
>humongous
>> marks. To my knowledge, CQL doesn't permit this,
>It does; check out the examples here:
>-
>http://udig.refractions.net/confluence/display/EN/Common+Query+Language#CommonQueryLanguage-Math
>
>I was wrong. Thank you for sending that link.
>
>> I have code that, in effect, adds a column to a FeatureCollection
>> (assuming that code can survive the changes to the FeatureCollection
>> interface in 2.5), so adding a new column logAttribute to the dataset
>> and naming the symbol glyph://arrow?headSize=${logAttribute}... should
>> be a workaround. With that workaround, the proposal looks good to me.
>I am very interested in hearing about your FeatureCollection functions,
>previously GeoVista (in GeoTools 2.2) made use of functions that looked
>up the FeatureCollection associated with an individual Feature and
>performed a bit of summary work. That functionality was not supported by
>the OGC General Feature Model and was removed for GeoTools 2.3 ...
>
>We adapted to that by passing the FeatureCollection along with the Feature.
>It was some extra bookkeeping, but nothing too onerous.
>To my knowledge, this was mostly, if not entirely in the form of
>classification functions, and I switched over to the ones in the geotools
>library (e.g., org.geotools.filter.function.EqualIntervalFunction).
>
>So now you have kind of a two step process:
>- Explicitly run a function / expression on the FeatureCollection to
>generate a result
>- Take the result and use it as a parameter when evaluating an
>expression for each feature
>
>Using this you can do a lot of the attribute normalization work that
>GeoVista made good use of.. although I suspect that most of that can be
>reduced to one of the SE 1.1 Categorization functions...
>> I'd probably do a glyph library using implementations of the
>> ExternalGraphicFactory interface, since the glyphs could easily become
>> more complex than a single java.awt.Shape object.
>Agreed; I hope that the use of Icon there will help.
>
>Jody
>
>
>
The use of Icon will help.
Jamison Conley
Dept. of Geography
Pennsylvania State University
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel