Hi

> On 22 Jul 2020, at 08:48, Nyall Dawson <[email protected]> wrote:
> 
> On Wed, 22 Jul 2020 at 17:39, Andreas Neumann <[email protected]> wrote:
>> 
>> Hi Nyall,
>> 
>> Thanks for your reply.
>> 
>> Thanks for explaining the issue about the enforced rasterization of the line 
>> pattern fills. Any rough estimate how much the speed penalty would be when 
>> one would implement the line pattern fill purely as vector?
> 
> Hard to say upfront -- it's going to depend on the size (pixels) of
> the features, and the number of lines in the fill pattern. Gut feeling
> is that it's unlikely to be noticeable for individual users, but
> costly enough to be an issue for server. Somewhere in the middle
> there!
> 
>> Also - would it be possible to "enforce" vector only rendering of line and 
>> point pattern fills - not only for export, but also for server or canvas 
>> rendering? As an example, when generating raster tiles, it would be nice to 
>> get a higher quality (even on server output) at the expense of speed. When a 
>> Mapproxy is harvesting tiles from a QGIS server, it would be nice if there 
>> could be a parameter in the GetMap request that enforces higher quality 
>> vector rendering at the expense of a lower performance.
> 
> Hm -- maybe we should add a project level setting for "rendering
> quality". There's actually quite a few more shortcuts we could
> potentially take if someone just cares about fast rendering vs high
> quality rendering (e.g. rendering shapeburst fills at a lower
> resolution). So potentially we could add a setting "rendering quality"
> with options like "Prioritise speed over
> quality"/"Balanced"/"Prioritize quality over speed". (I think layout
> exports should ALWAYS use the highest quality render though, so they'd
> ignore this setting)


I’m imagining a checkbox in the status bar here next to the enable / disable 
render one that toggles ‘draft’ mode versus ‘awesome mode’….I love that QGIS 
has advanced so far that we are even having this discussion :-)





Regards

Timi

> 
> Nyall
> 
> 
>> 
>> Thanks,
>> 
>> Andreas
>> 
>> On 2020-07-22 08:32, Nyall Dawson wrote:
>> 
>> On Fri, 17 Jul 2020 at 19:34, Andreas Neumann <[email protected]> wrote:
>> 
>> 
>> Hi,
>> 
>> In our efforts to improve cartographic quality, I'd also like to discuss, if 
>> we could somehow improve the quality of the line-pattern fills, and/or the 
>> antialiasing quality of the qt renderer. A very small change in angle can 
>> change the quality of a line-pattern fill in QGIS pretty or very ugly.
>> 
>> Also: even if all buildings in the following rendering have the same 
>> distance between lines, some look much "denser" than others. Have a look at 
>> the attached file where I labeled some line fills as ugly and pretty.
>> 
>> Is there something that QGIS could do to improve the "prettyness" of line 
>> pattern fills, or would this have to change in the qt library?
>> 
>> Thanks if you have any thoughts on this topic,
>> 
>> 
>> Sorry for the delayed reply!
>> 
>> This is a long-standing issue in QGIS' polygon fill support. See
>> https://github.com/qgis/QGIS/issues/16100 (filed 2013). Basically, the
>> line pattern symbol type uses a trick to speed up the rendering of
>> features by first making a small tiled raster image of the line
>> pattern, and then painting the polygons using this raster brush. It's
>> nice and fast, and works well for canvas/server renders, but is far
>> from ideal for high quality exports. It's also an issue if you try to
>> use data defined settings on the line sub symbol -- because the
>> pattern is generated using the tiled image, you won't see the expected
>> results if you try to make the appearance of individual lines in the
>> pattern vary.
>> 
>> For reference, up until 3.14 the point pattern fill had the same
>> limitation. For 3.14 point pattern fills were improved to now export
>> the fill as vector markers (the same raster brush approach is still
>> used for canvas renders, where speed is more important vs quality).
>> 
>> What we need to do is implement a similar fix as was done for the
>> point pattern fill, and render each individual line in a line pattern
>> fill as a proper vector line (during layout exports, or when we detect
>> that the line subsymbol has data defined properties set).  Hopefully
>> something we can do for 3.16...
>> 
>> Nyall
>> 
>> 
>> 
>> 
>> Andreas
>> 
>> _______________________________________________
>> QGIS-Developer mailing list
>> [email protected]
>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>> 
>> 
> _______________________________________________
> QGIS-Developer mailing list
> [email protected]
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

—












Tim Sutton

Co-founder: Kartoza
Honorary PSC Member and Ex-Project chair: QGIS.org <http://qgis.org/>

Visit http://kartoza.com <http://kartoza.com/> to find out about open source:

Desktop GIS programming services
Geospatial web development
GIS Training
Consulting Services

Skype: timlinux 
IRC: timlinux on #qgis at freenode.net

I'd love to connect. Here's my calendar link 
<https://calendly.com/timlinux/30min> to make finding time easy.

_______________________________________________
QGIS-Developer mailing list
[email protected]
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to