Hi Kimaidu.
Thank you for your constructive remarks.
Many of the issues you raise here were also identified before or at the
recent developer meeting. See also
http://www.qgis.org/wiki/QGISWebClientIdeas
The issue with the different scales are really annoying, so why dont we
make the 96 dpi the default? Do you really think it is much slower? BTW
- we already get 96dpi images, only OL seems to calculate the scale with
72dpi. We even try to detect the dpi when loading the client. Not sure
if this works properly ... Thanks anyway for the hint. I will test it.
An improved GetLegendGraphics with user configurable sizes is already
requested and will be a paid development/improvement from Sourcepole.
GetCapabilities improvements: at the meeting we decided to use a web
map context (similar to GetCapabilities) but more configurable to
transport settings we want, e.g the initial layer visibility, etc.
Thanks,
Andreas
On Mon, 14 Nov 2011 16:47:27 +0100, kimaidou wrote:
Hi devs,
During the development of Lizmap, we have needed some features not
yet implemented, or encountered some problems. I would like to write
down in the email all the things which seem interesting as a
feedback,
and all the questions I have. Please see it as a user contribution,
and not as criticism if course. (I am using QGIS 1.7.1). I will open
tickets if needed depending on your answers.
GENERAL
* DPI : I you want to have the exact same renderding for Qgis Desktop
and Qgis Server, you have to use DPI=96 in the WMS client (e.g. in
OpenLayers, you have to set the option : OpenLayers.DOTS_PER_INCH =
96). For webmapping point of view, increasing DPI from 72 (default in
web applications) to 96 is not a good thing, as it increases the size
of images received by the client. It could be great to set in Qgis
project properties the DPI for the rendering in Qgis Desktop. This
way, the user will have the choice to create one project in 72 DPI
for
web purpose only. The web client will then be able to ask images with
the same 72 dpi, and the rendering will remain identical between
desktop and server. I do not know if it is an easy thing to do, or a
big development to achieve this...
GETCAPABILITIES
* Layers meta-data
At present, Qgis Server send an empty "Abstract" property for each
layer in the GetCapabilities request, since it is not possible to
write down this abstract in Qgis Layer properties dialogue. It could
be good to have this possibility for groups too. In Lizmap plugin,
the
user can manually edit the Abstract field for each group or layer,
but
it would be better imho to have it directly in Qgis.
GETLEGENDGRAPHICS
* SVG icon for point layer : When you change the DPI parameters, the
text size changes, but the size of the SVG icon does not
- 96 DPI :
http://178.32.101.237/lizmap/index.php/lizmap/service/?PROJECT=alaska&pp=demo&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetLegendGraphics&LAYERS=airports&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&FORMAT=image%2Fpng&TRANSPARENT=TRUE&WIDTH=150&DPI=96
[1]
- 300 DPI :
http://178.32.101.237/lizmap/index.php/lizmap/service/?PROJECT=alaska&pp=demo&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetLegendGraphics&LAYERS=airports&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&FORMAT=image%2Fpng&TRANSPARENT=TRUE&WIDTH=150&DPI=300
[2]
One solution could be to have 2 different parameters to change text
and icon size independently ?
* Legend of a group shows also layers that are not visible (min and
maxscale layer property). I tried to use the SCALE parameter to check
this behaviour. The getLegendGraphics returns all the layers of a
group (if called with the group name as the LAYERS parameter). For
exemple, a group called "hydro" and containing 2 layers "main river"
(visible at all scales) and "minor rivers" visible only at scales =<
5
000 000. If I ask the legend for this group "hydro", I would like the
server to only return the legend of "major rivers" with SCALE=10 000
000, and both layers with SCALE=2 000 000.
QGIS API
* Get groups state : I could not figure out how to get the toggled
state of groups with the api. I tried :
self.iface.legendInterface().isGroupVisible(myGroups.indexOf(myId))
But it seems to provide another type of information.
The idea is to know if a group is toggled or not in the project.
I hope I was clear enough :)
kimaidou
Links:
------
[1]
http://178.32.101.237/lizmap/index.php/lizmap/service/?PROJECT=alaska|+|amp|+|pp=demo|+|amp|+|SERVICE=WMS|+|amp|+|VERSION=1.3.0|+|amp|+|REQUEST=GetLegendGraphics|+|amp|+|LAYERS=airports|+|amp|+|EXCEPTIONS=application%2Fvnd.ogc.se_inimage|+|amp|+|FORMAT=image%2Fpng|+|amp|+|TRANSPARENT=TRUE|+|amp|+|WIDTH=150|+|amp|+|DPI=96
[2]
http://178.32.101.237/lizmap/index.php/lizmap/service/?PROJECT=alaska|+|amp|+|pp=demo|+|amp|+|SERVICE=WMS|+|amp|+|VERSION=1.3.0|+|amp|+|REQUEST=GetLegendGraphics|+|amp|+|LAYERS=airports|+|amp|+|EXCEPTIONS=application%2Fvnd.ogc.se_inimage|+|amp|+|FORMAT=image%2Fpng|+|amp|+|TRANSPARENT=TRUE|+|amp|+|WIDTH=150|+|amp|+|DPI=300
--
--
Andreas Neumann
Böschacherstrasse 10A
8624 Grüt (Gossau ZH)
Switzerland
_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer