@@ -276,7 +276,6 @@ def buffering( self, useField ):
276
276
def convex_hull (self , useField ):
277
277
vproviderA = self .vlayerA .dataProvider ()
278
278
allAttrsA = vproviderA .attributeIndexes ()
279
- vproviderA .select ( allAttrsA )
280
279
fields = vproviderA .fields ()
281
280
writer = QgsVectorFileWriter ( self .myName , self .myEncoding ,
282
281
fields , QGis .WKBPolygon , vproviderA .crs () )
@@ -291,10 +290,11 @@ def convex_hull(self, useField ):
291
290
self .emit ( SIGNAL ( "runStatus(PyQt_PyObject)" ), 0 )
292
291
self .emit ( SIGNAL ( "runRange(PyQt_PyObject)" ), ( 0 , nFeat ) )
293
292
for i in unique :
294
- vproviderA .rewind ()
295
293
hull = []
296
294
first = True
297
295
outID = 0
296
+ vproviderA .select ( allAttrsA )
297
+ vproviderA .rewind ()
298
298
while vproviderA .nextFeature ( inFeat ):
299
299
nElement += 1
300
300
self .emit ( SIGNAL ( "runStatus(PyQt_PyObject)" ), nElement )
@@ -339,7 +339,6 @@ def convex_hull(self, useField ):
339
339
def dissolve ( self , useField ):
340
340
vproviderA = self .vlayerA .dataProvider ()
341
341
allAttrsA = vproviderA .attributeIndexes ()
342
- vproviderA .select ( allAttrsA )
343
342
fields = vproviderA .fields ()
344
343
writer = QgsVectorFileWriter ( self .myName , self .myEncoding ,
345
344
fields , vproviderA .geometryType (), vproviderA .crs () )
@@ -368,17 +367,20 @@ def dissolve( self, useField ):
368
367
outFeat .setAttributeMap ( attrs )
369
368
writer .addFeature ( outFeat )
370
369
else :
371
- unique = ftools_utils . getUniqueValues ( vproviderA , int ( self .myParam ) )
370
+ unique = vproviderA . uniqueValues ( int ( self .myParam ) )
372
371
nFeat = nFeat * len ( unique )
373
372
self .emit ( SIGNAL ( "runStatus(PyQt_PyObject)" ), 0 )
374
373
self .emit ( SIGNAL ( "runRange(PyQt_PyObject)" ), ( 0 , nFeat ) )
375
374
for item in unique :
376
375
first = True
376
+ vproviderA .select ( allAttrsA )
377
377
vproviderA .rewind ()
378
378
while vproviderA .nextFeature ( inFeat ):
379
379
nElement += 1
380
380
self .emit ( SIGNAL ( "runStatus(PyQt_PyObject)" ), nElement )
381
- if inFeat .attributeMap ()[ self .myParam ].toString ().trimmed () == item .toString ().trimmed ():
381
+ atMap = inFeat .attributeMap ()
382
+ tempItem = atMap [ self .myParam ]
383
+ if tempItem .toString ().trimmed () == item .toString ().trimmed ():
382
384
if first :
383
385
QgsGeometry ( inFeat .geometry () )
384
386
tmpInGeom = QgsGeometry ( inFeat .geometry () )
0 commit comments