[QGIS-Developer] QGIS3 - processing python script. Read features from output layer

kimaidou kimaidou at gmail.com
Thu Feb 15 22:11:40 PST 2018


Hi Salvatore,

I already tried to use

blayer = area_result['OUTPUT']
for feat in blayer.getFeatures():
    ....

with no success . If I do so I get

AttributeError: 'str' object has no attribute 'getFeatures'

There must be a way to transforme this string representing the layer as a
processing layer object....
I use this code inside the processAlgorithm method of my
QgsProcessingAlgorithm class.


Michaël

2018-02-15 22:39 GMT+01:00 Salvatore Larosa <lrssvtml at gmail.com>:

> Hi Michaël,
>
> On Thu, Feb 15, 2018 at 6:36 PM, kimaidou <kimaidou at gmail.com> wrote:
>
>> Hi all,
>>
>> I have a simple processing python alg which
>> * generates a buffer with qgis:buffer
>> * use qgis:fieldcalculator to add an buf_area field -> the output vector
>> of my alg is this buffer+new field.
>>
>> I would like to parse the features of the output vector in order to
>> gather some information and put it in a new string output. I have not been
>> able to get the layer object to perform a getFeatures on it.
>>
>> See the code
>> http://paste.debian.net/1010463/
>>
>> In line 32, my blayer is None
>> I think I am not using the good way to get the output vector layer
>> features? I tried to use the same way as for reading an input layer, but
>> oviously it is different.
>>
>
> What does happen if you put area_result['OUTPUT'] directly instead of
> self.parameterAsSource?
> parameterAsSource() accept a parameter as first argument and area_result
> should be already un QgsVectorLayer.
>
> Where you are trying to execute it from?
>
>
> --
> Salvatore Larosa
> linkedIn: http://linkedin.com/in/larosasalvatore
> twitter: @lrssvt
> skype: s.larosa
> IRC: lrssvt on freenode
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20180216/ea99905f/attachment.html>


More information about the QGIS-Developer mailing list