[Qgis-user] Rendering shared exterior boundaries of adjacent polygon features
Andreas Neumann
a.neumann at carto.net
Wed Jun 19 22:05:34 PDT 2024
Hi Tim,
Are you looking for the "Draw line only inside polygon" feature
described at
http://nyalldawson.net/2014/01/qgis-two-neat-features-in-2-2/ ?
In that case you would probably have two symbol levels:
- one for the line pattern fill (cross-hatched)
- a second one on top of the other one drawing an "Outline:simple line"
on top of it using the "Draw line only inside polygon" checkbox.
This is only briefly described at
https://docs.qgis.org/3.34/en/docs/user_manual/style_library/symbol_selector.html
Quote:
_Outline: simple line: uses a simple line symbol layer to represent the
polygon boundary (Rings) which can be the interior rings only, the
exterior ring only or all the rings). The Draw line only inside polygon
option displays the polygon borders inside the polygon and can be useful
to clearly represent adjacent polygon boundaries. The other settings for
the outline simple line are the same as for simple line symbols._
But perhaps I am totally misunderstanding your request ...
Greetings,
Andreas
On 2024-06-20 03:26, Tim Malloy via QGIS-User wrote:
> Fellow QGIS Users -
>
> I'm trying to determine if its possible to have QGIS render the
> exterior boundary of polygon features only once when that boundary is
> shared with an adjacent feature (don't render overlapping exterior
> boundaries for both polygon features). The data I'm working with is a
> county parcels layer and the symbology I'm using for this layer is a
> cross hatched line fill with a separate component for the outline of
> the polygons. I've tried a couple of expressions (examples below)
> including one geometry generator and one data defined override for the
> stroke width of the boundary line but none of them achieves my
> objective. I'm using QGIS 3.34.7 and my coding skills are limited. I
> feel like I've seen this issue covered somewhere but have been unable
> to find a solution after extensive online exploration.
>
> Method #1: "boundary( difference( $geometry, aggregate( 'union',
> 'intersects', $geometry, other_layer := @layer)))" This expression was
> used on the outline component of the symbology described above.
>
> Method #2: "CASE WHEN intersects( $geometry, geom_to_wkt( boundary(
> $geometry ))) THEN 0 ELSE 1 END" Here I switched to using an
> expression on the stroke width of a simple fill, but I got an error
> message saying "Cannot convert to geometry".
>
> Any input would be greatly appreciated.
>
> Tim
>
> _______________________________________________
> QGIS-User mailing list
> QGIS-User at lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20240620/4d4f1087/attachment.htm>
More information about the QGIS-User
mailing list