Hi,
I found two ways of doing that, I think the second is faster but not
sure. (And I think they will both be slower than the random order code
you were using before, but the order will remain.)
Good luck,
Raymond
---
layer = iface.activeLayer()
ids = layer.selectedFeatureIds()
print(ids)
# first option, loop all features and test if the id is in
# the selected ids:
for feat in layer.getFeatures():
if feat.id() in ids:
print(feat)
# second option, loop selected ids and get their feature:
ids.sort()
print(ids)
for id in ids:
feat = layer.getFeature(id)
print(feat)
On 04-06-19 06:01, Zhang Qun wrote:
Thanks Nyall. Then is there anyway i can get the original order? My data
is road lane points and the sequence order represent the driving direction.
On Tue, Jun 4, 2019, 11:58 AM Nyall Dawson <nyall.daw...@gmail.com
<mailto:nyall.daw...@gmail.com>> wrote:
On Tue, 4 Jun 2019 at 13:38, Zhang Qun <zhangq....@gmail.com
<mailto:zhangq....@gmail.com>> wrote:
>
> Hi,
> Does anyone know how the features are ordered when you extract by
selectedFeatures()? Is it in the same order as the input delimited
text file? I'm asking because sometimes I found the looping does not
give me the same order as in my data source.
It's an unordered set - i.e. effectively random.
Nyall
_______________________________________________
Qgis-user mailing list
Qgis-user@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user
_______________________________________________
Qgis-user mailing list
Qgis-user@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user