Hi Anita,
sorry for the late reply, busy times, and I knew the response would be
long.
The update is ... complicated :-)
So, around the sprint a few issues were fixed and have code merged in
master (QGis 3.x):
* Export of ogc:Filter in places where an expression is required,
used to happen for any non zero rotation and any non fully opaque
alpha, making the SLD invalid/unreadable. Pull request here,
merged on master: https://github.com/qgis/QGIS/pull/3366
* The styling works by default in "on screen mm", but SLD does not
have such notion (has on screen pixel, on ground meter, on ground
feet), and QGis did not rescale the values, making for very thin
lines and tiny symbols. Fixed in this pull request, merged on
master: https://github.com/qgis/QGIS/pull/3414
* Scale based visibility declared at the layer level was not
exported in SLD, making for layers that would show up at all zoom
levels. Pull request here, merged as well:
https://github.com/qgis/QGIS/pull/3436
* GeoServer/GeoTools could not handle the way font based marks were
exported. The syntax was actually valid, so I decided to build
support for QGis own convention in GeoTools. This is the only bit
already available in all supported GT/GS branches (develop,
stable, maintenance): https://osgeo-org.atlassian.net/browse/GEOT-5496
* QGis exports as "well known mark" names values that are not
actually "well known", this one in being solved in
GeoTools/GeoServer by adding support for the same names. Pull
request pending, still haven't had the time to check it out:
https://github.com/geotools/geotools/pull/1288
* Labels are not exported at all as TextSymbolizer, during the
spring Raymond Nijssen started working on that, he's got a
promising work in progress, not yet turned into a pull request
Kudos to the QGis developers that helped me with discussion,
suggestions, and pull request reviews :-)
Yet, there is still quite a lot of work to be done. Off the top of my
head:
* Backporting some/all of the above to QGis 2.16 and maybe 2.14
* QGis has a nice support for "parametric" SVG based on a draft SVG
extension that never became "official", basically, it allows to
have SVG with parameters for stroke color, width and opacity, fill
color and opacity. GeoTools does not recognize such extension and
always renders SVG symbols full black. I intend to add this
support to GT/GS, see
http://osgeo-org.1560.x6.nabble.com/Adding-support-for-parametric-SVGs-td5282722.html
, and then enrich the QGis export to add said params in the SLD.
Mind, right now the export QGis is doing is also invalid, it's
adding tags trying to support the stroke related params that are
not part of the SLD standard. I hope to be able to build this on
the GeoTools side before September 18th, the feature freeze date
for the next GT/GS release, but no promises.
* Alignment (top/bottom/left/right) is well supported in SLD, but
the current QGis exported does not write the appropriate tags.
Should not be too hard to fix, but there might be several places
in the code to change.
* There is no support to export symbology where values are gathered
from a property, or an expression based on properties. SLD
supports this from day 0, but the SLD export code has no ability
to support that. It would be nice to have basic support for
property names, arithmetic, maybe some mapping between QGis own
functions and GT/GS functions usable in SLD (full list here, can
be easily extended:
http://docs.geoserver.org/stable/en/user/filter/function_reference.html
). This would be a massive undertaking, I'm afraid it won't be
feasible without funding, but we'll see (note, all the work I did
so far was unfunded).
* There is no support for exporting raster symbology, colormaps,
contrast stretch and the like. GeoServer also does not understand
SLD 1.1 raster symbology (it's quite different from the SLD 1.0
one), so work will have to be done on both sides. Seems another
large undertaking.
* x/y translation/offset for lines and polygons is not implemented
in GeoServer (only for points and labels instead), that would
require some work, but not too much
* Compositing/blending is supported in GeoServer as a SLD extension,
could be thus exported (cannot promise all single
compositing/blending modes are a match on the two sides)
* Pseudo 3D buildings are supported as an extension in GeoServer
SLD, so this kind of layer is probably exportable. Might need some
work on the GeoServer side to render the same way as QGis though
(as far as I know QGis is doing some sorting). Example style for
GeoServer and map here:
https://github.com/charleyglynn/Extruded-buildings-SLD
* z-stacked symbols like "highway" roads (paint all roads orange
thick, go back, paint all roads white thin) are supported on both
sides, but the export does not support it, and some change in the
overall export logic would be required to actually support it, as
SLD requires multiple FeatureTypeStyle elements, one per z level,
to be generated in order to get the same effect. Right one there
is just one FTS with many rules and symbolizers in it.
* Geometry generators can probably be partially translated as
"geometry transformations" in SLD, except in our case they do work
in real world coordinates, not on screen:
http://docs.geoserver.org/stable/en/user/styling/sld-extensions/geometry-transformations.html
* Some types of symbology like shapeburst and inverted polygons are
simply not available in SLD, nor in GeoServer own extensions, so
one would have to first implement those in GeoServer, create
appropriate SLD extensions, and then have QGis implement them in
the output
I'm probably forgetting something, and likely unaware of other QGis
mapping capabilities I did not mention above :-)
In any case, my target for the sprint was to show that exporting
_basic_ styling is feasible, and does not require months of work. To
some extent that was achieved (especially when we get the text
symbolizer support). Hopefully it will make more people interested,
maybe some devs will pitch in, and some sponsoring organizations can
fill in the blanks.... an open source developer can dream, right? :-p
Cheers
Andrea
On Tue, Aug 30, 2016 at 8:42 PM, Anita Graser <anitagra...@gmx.at
<mailto:anitagra...@gmx.at>> wrote:
Hi everyone!
Hope you made it back home safe after Bonn. Could you give a short
update on this topic, what was discussed / decided / worked on in
Bonn?
Thank you and best wishes,
Anita
On Sat, Jul 9, 2016 at 10:56 AM, Andrea Aime
<andrea.a...@geo-solutions.it
<mailto:andrea.a...@geo-solutions.it>> wrote:
On Tue, Jun 28, 2016 at 7:42 PM, Andrea Aime
<andrea.a...@geo-solutions.it
<mailto:andrea.a...@geo-solutions.it>> wrote:
I'll be at the code sprint after the conference, Saturday
and Sunday.
Change of plans, I'll be there the Sunday before the
conference, and due to flight
arrangements, also most of Saturday (in case anyone's
interested we can find
a place to start hacking)
Cheers
Andrea
--
==
GeoServer Professional Services from the experts! Visit
http://goo.gl/it488V for more information.
==
Ing. Andrea Aime
@geowolf
Technical Lead
GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313 <tel:%2B39%200584%20962313>
fax: +39 0584 1660272 <tel:%2B39%200584%201660272>
mob: +39 339 8844549 <tel:%2B39%20%C2%A0339%208844549>
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
<http://twitter.com/geosolutions_it>
*AVVERTENZE AI SENSI DEL D.Lgs. 196/2003*
Le informazioni contenute in questo messaggio di posta
elettronica e/o nel/i file/s allegato/i sono da considerarsi
strettamente riservate. Il loro utilizzo è consentito
esclusivamente al destinatario del messaggio, per le finalità
indicate nel messaggio stesso. Qualora riceviate questo
messaggio senza esserne il destinatario, Vi preghiamo
cortesemente di darcene notizia via e-mail e di procedere alla
distruzione del messaggio stesso, cancellandolo dal Vostro
sistema. Conservare il messaggio stesso, divulgarlo anche in
parte, distribuirlo ad altri soggetti, copiarlo, od
utilizzarlo per finalità diverse, costituisce comportamento
contrario ai principi dettati dal D.Lgs. 196/2003.
The information in this message and/or attachments, is
intended solely for the attention and use of the named
addressee(s) and may be confidential or proprietary in nature
or covered by the provisions of privacy act (Legislative
Decree June, 30 2003, no.196 - Italy's New Data Protection
Code).Any use not in accord with its purpose, any disclosure,
reproduction, copying, distribution, or either dissemination,
either whole or partial, is strictly forbidden except previous
formal approval of the named addressee(s). If you are not the
intended recipient, please contact immediately the sender by
telephone, fax or e-mail and delete the information in this
message that has been received in error. The sender does not
give any warranty or accept liability as the content, accuracy
or completeness of sent messages and accepts no responsibility
for changes made after they were sent or for other risks which
arise as a result of e-mail transmission, viruses, etc.
-------------------------------------------------------
_______________________________________________
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
<mailto:Qgis-developer@lists.osgeo.org>
List info:
http://lists.osgeo.org/mailman/listinfo/qgis-developer
<http://lists.osgeo.org/mailman/listinfo/qgis-developer>
Unsubscribe:
http://lists.osgeo.org/mailman/listinfo/qgis-developer
<http://lists.osgeo.org/mailman/listinfo/qgis-developer>
--
==
GeoServer Professional Services from the experts! Visit
http://goo.gl/it488V for more information.
==
Ing. Andrea Aime
@geowolf
Technical Lead
GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
*AVVERTENZE AI SENSI DEL D.Lgs. 196/2003*
Le informazioni contenute in questo messaggio di posta elettronica e/o
nel/i file/s allegato/i sono da considerarsi strettamente riservate.
Il loro utilizzo è consentito esclusivamente al destinatario del
messaggio, per le finalità indicate nel messaggio stesso. Qualora
riceviate questo messaggio senza esserne il destinatario, Vi preghiamo
cortesemente di darcene notizia via e-mail e di procedere alla
distruzione del messaggio stesso, cancellandolo dal Vostro sistema.
Conservare il messaggio stesso, divulgarlo anche in parte,
distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità
diverse, costituisce comportamento contrario ai principi dettati dal
D.Lgs. 196/2003.
The information in this message and/or attachments, is intended solely
for the attention and use of the named addressee(s) and may be
confidential or proprietary in nature or covered by the provisions of
privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New
Data Protection Code).Any use not in accord with its purpose, any
disclosure, reproduction, copying, distribution, or either
dissemination, either whole or partial, is strictly forbidden except
previous formal approval of the named addressee(s). If you are not the
intended recipient, please contact immediately the sender by
telephone, fax or e-mail and delete the information in this message
that has been received in error. The sender does not give any warranty
or accept liability as the content, accuracy or completeness of sent
messages and accepts no responsibility for changes made after they
were sent or for other risks which arise as a result of e-mail
transmission, viruses, etc.
-------------------------------------------------------
_______________________________________________
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer