QGIS is used rendering order of symbol layers within features not within layer. Try to set up layer (two overlapped polygons) symbology for getting such result http://hub.qgis.org/attachments/4909/geoserver_sld.png. Of course you can open the same layer twice and set up their symbology separately, but it is not the right solution.
On Fri, Sep 28, 2012 at 11:18 AM, Nathan Woodrow <[email protected]>wrote: > QGIS does already have the ability to control the rendering order of > symbol layers, and should be able to do what you need. > > - Nathan > > Sent from some fancy phone looking thingo > ------------------------------ > From: Denis Rykov > Sent: 28/09/2012 1:29 PM > To: [email protected] > Subject: [Qgis-developer] Improve symbology system > > Some days ago I've faced with the following problem. For example, I have > two overlapped polygons and want to draw this layer such way: > http://hub.qgis.org/attachments/4909/geoserver_sld.png Now it looks like > I cannot do it with QGIS symbology system. Screenshot which I provided > above was made in GeoServer with the following SLD configuration: > > <StyledLayerDescriptor version="1.0.0" xmlns:xlink=" >> http://www.w3.org/1999/xlink" xmlns:ogc="http://www.opengis.net/ogc" >> xmlns="http://www.opengis.net/sld"> >> <NamedLayer> >> <Name>test</Name> >> <UserStyle> >> <Name>test</Name> >> <FeatureTypeStyle> >> <Rule> >> <LineSymbolizer> >> <Stroke> >> <CssParameter name="stroke-width">4</CssParameter> >> <CssParameter name="stroke">#dddddd</CssParameter> >> </Stroke> >> </LineSymbolizer> >> </Rule> >> </FeatureTypeStyle> >> <FeatureTypeStyle> >> <Rule> >> <PolygonSymbolizer> >> <Fill> >> <CssParameter name="fill">#fa5000</CssParameter> >> </Fill> >> </PolygonSymbolizer> >> </Rule> >> </FeatureTypeStyle> >> </UserStyle> >> </NamedLayer> >> </StyledLayerDescriptor> > > > I tried to import this SLD into QGIS, but SLD docs containing multiple > FeatureTypeStyle are not supported yet (#6413<http://hub.qgis.org/issues/6413> > ). But I think that problem is more seriously. Now in QGIS rendering > performs by features but not by layers. Try to explain it. For example we > have two symbol's layer - first with border, but without filling and second > - with filling but without border. If we try to render such layer we will > get the following result: > http://gis-lab.info/forum/download/file.php?id=5008. It is expected > beacause QGIS is used by feature rendering approach. Another approach is > using rendering by layer: first draw a layer according to the symbology of > the first level, and then second and then overlying each other. In this > case we get result as in GeoServer. I think that this approach is more > flexible, using "by layer" rendering we can get the the same result as > using "by feature" approach (in our case using one level symbology with > border and filling). Is it to makes sense to add checkbox to each symbology > layer wich will be indicate QGIS rendering system used "by layer" rendering > approach? > > ArcGIS is used "by feature" approach but solves described issue by using > join operator, for example: > http://gis-lab.info/share/DR/screenshots/symbollevels.png >
_______________________________________________ Qgis-developer mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-developer
