[QGIS-Developer] Can I automatically style a layer generated with a Processing Sink?
Nyall Dawson
nyall.dawson at gmail.com
Tue Sep 11 23:21:49 PDT 2018
On Wed, 12 Sep 2018 at 04:00, C Hamilton <adenaculture at gmail.com> wrote:
>
> In a processing routine I create an output vector layer.
>
> self.addParameter(
> QgsProcessingParameterFeatureSink(
> self.PrmOutputLayer,
> tr('Output layer'))
> )
>
> (sink, dest_id) = self.parameterAsSink(parameters,
> self.PrmOutputLayer, context, fields, QgsWkbTypes.LineString, srcCRS)
>
> I would like to style the output layer by enabling a label based off of one of the fields. Can I do this in Processing? I guess what I would like to get is the actual vector layer that is created. Is that possible?
Actually the best approach is to use a layer post processor. This is
flexible and totally thread-safe :)
I don't think there's any Python examples in QGIS yet, but see
https://github.com/qgis/QGIS/blob/master/src/analysis/processing/qgsalgorithmcategorizeusingstyle.cpp#L104
and
https://github.com/qgis/QGIS/blob/master/src/analysis/processing/qgsalgorithmimportphotos.cpp#L227
for some c++ examples.
Here's a possible Python example:
https://gist.github.com/nyalldawson/26c091dd48b4f8bf56f172efe22cf75f
Nyall
More information about the QGIS-Developer
mailing list