Not sure why it is not selecting your features. I will try to reproduce it and will let you know
About the layers and how they are found, here is some info: Input layers for Processing are data sources (if a layer is file based, that means the filepath to it). If you enter something that is not that, Processing tries to figure out what you mean, basically checking if any of your layers has the name you entered, and then using it's layer.source() value. But for that, the layer must be loaded. To avoid that, you can directly enter the path to your layer, instead of a layer name I will let you know once i can reproduce your issue and find out what is happening Cheers 2016-09-30 16:07 GMT+02:00 Etienne Trimaille <[email protected]>: >> AttributeError: class Processing has no attribute 'Initialize' > > Did you try : 'initialize' ? > According to > https://github.com/qgis/QGIS/blob/master/python/plugins/processing/core/Processing.py#L146 > > 2016-09-30 20:51 GMT+07:00 Eric Goddard <[email protected]>: >> >> Thanks Victor, I had tried that within the QGIS Python console and got >> the same error about the number of arguments. When I drop the OUTPUT >> parameter it runs, so now my call looks like this: >> >> processing.runalg('qgis:selectbylocation', "photos", "boundaries", >> u'intersect', 0.0, 0) >> >> If I run just this line in the interpreter, it outputs: {'OUTPUT': >> u'/home/eric/Development/csi_data_collection/scripts/photos.gpkg'} >> >> However, it doesn't select any of the points within the selected >> polygon boundary. If I run the tool from the Processing Toolbox, it >> does select the points within the boundary. When running that tool >> from python should it use selected features in the intersection layer? >> I tried it with no boundaries selected and it still didn't select >> anything. >> >> Thanks again for the response. Making progress, but it would still be >> good to get clarification on how/if Processing can be used from >> standalone scripts. in the call to to runalg I did have to change the >> layer inputs from the variables containing references to the >> QgsVectorLayer objects to the layer name that I passed to those vector >> layers on creation. Processing also couldn't find the layers until I >> added them to the QgsMapLayerRegistry instance, which I think means >> when I instantiate the QgsApplication in the standalone script I need >> to pass True instead of False for it to use the GUI? >> >> >> >> On Thu, Sep 29, 2016 at 4:25 PM, Victor Olaya <[email protected]> wrote: >> > looks like the docs are outdated and the way to call the algorithm is >> > now different >> > >> > ALGORITHM: Select by location >> > INPUT <ParameterVector> >> > INTERSECT <ParameterVector> >> > PREDICATE <ParameterGeometryPredicate> >> > PRECISION <ParameterNumber> >> > METHOD <ParameterSelection> >> > OUTPUT <OutputVector> >> > >> > The PRECISION parameter is not documented in the help file. >> > >> > Hope this helps >> > >> > 2016-09-29 22:39 GMT+02:00 Eric Goddard <[email protected]>: >> >> Hello everyone, >> >> >> >> I'm using QGIS 2.16.3 on Ubuntu 14.04 (from the qgis.org/ubuntugis >> >> repo with ubuntugis-unstable ppa). I have a geopackage layer (I >> >> originally started out with a spatialitelayer, but I kept getting >> >> >> >> ASSERT: "i.value() == handle" in file >> >> >> >> /tmp/buildd/qgis-2.16.3+20trusty/src/providers/spatialite/qgsspatialiteconnection.cpp, >> >> line 780 >> >> Aborted (core dumped) >> >> >> >> when calling getFeatures() on the layer) with two columns that I want >> >> to populate. One contains the month and year a photo was taken, >> >> extracted from EXIF metadata. The other is for the name of the polygon >> >> that contains the point feature. Extracting the date from the metadata >> >> works fine, but I'm having some serious difficulties with running the >> >> 'qgis:selectbylocation' processing algorithm in a standalone script. >> >> Stack Overflow has several posts on using Processing in standalone >> >> scripts, the most recent of which [1] I tried. It crashes on line 15 >> >> in my script [2](Processing.initialize()) with the following error >> >> message: >> >> >> >> The current error message I'm getting is: >> >> Error in sys.excepthook: >> >> Traceback (most recent call last): >> >> File "/usr/lib/python2.7/dist-packages/qgis/utils.py", line 196, in >> >> qgis_excepthook >> >> showException(type, value, tb, None, messagebar=True) >> >> File "/usr/lib/python2.7/dist-packages/qgis/utils.py", line 107, in >> >> showException >> >> open_stack_dialog(type, value, tb, msg) >> >> File "/usr/lib/python2.7/dist-packages/qgis/utils.py", line 142, in >> >> open_stack_dialog >> >> iface.messageBar().popWidget() >> >> AttributeError: 'NoneType' object has no attribute 'messageBar' >> >> >> >> Original exception was: >> >> Traceback (most recent call last): >> >> File "extract_image_dates.py", line 14, in <module> >> >> Processing.Initialize() >> >> AttributeError: class Processing has no attribute 'Initialize' >> >> >> >> >> >> Since I was unable to get it running in the standalone script, I >> >> loaded the script I wrote in the QGIS Python console. It ran, but it >> >> said that the number of arguments to 'qgis:selectbylocation' was >> >> wrong, but my call to the algorithim on line 55 matches the docs [3]. >> >> >> >> Any pointers on how to get this working would be greatly appreciated, >> >> and I'd be happy to make a PR on the QGIS Documentation to add a >> >> section about it once it works. >> >> >> >> >> >> Thanks! >> >> Eric >> >> >> >> [1] >> >> http://gis.stackexchange.com/questions/129915/cannot-run-standalone-qgis-script >> >> [2] https://gist.github.com/egoddard/c188c62115f2fe8df24f32b3119e51b3 >> >> [3] >> >> http://docs.qgis.org/2.14/en/docs/user_manual/processing_algs/qgis/vector_selection_tools.html#select-by-location >> >> _______________________________________________ >> >> Qgis-developer mailing list >> >> [email protected] >> >> List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer >> >> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer >> _______________________________________________ >> Qgis-developer mailing list >> [email protected] >> List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer >> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer > > _______________________________________________ Qgis-developer mailing list [email protected] List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer
