Revision 41521 trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.app/org.gvsig.app.mainplugin/src/main/resources-plugin/scripting/scripts/validate_layer.py
validate_layer.py | ||
---|---|---|
56 | 56 |
for feature in layer.features(): |
57 | 57 |
# En cada iteracion informamos a la barra de progreso de por donde vamos |
58 | 58 |
taskStatus.setCurValue(i) |
59 |
vs = feature.geometry().getValidationStatus(); |
|
60 |
if not vs.isValid() : |
|
61 |
hay_problemas = True |
|
62 |
if vs.getProblemLocation()!=None: |
|
63 |
wktgeom = vs.getProblemLocation().convertToWKT() |
|
59 |
if feature.geometry() != None: |
|
60 |
vs = feature.geometry().getValidationStatus(); |
|
61 |
if not vs.isValid() : |
|
62 |
hay_problemas = True |
|
63 |
if vs.getProblemLocation()!=None: |
|
64 |
wktgeom = vs.getProblemLocation().convertToWKT() |
|
65 |
else: |
|
66 |
try: |
|
67 |
# Atrapamos los errores no vaya a ser que la geometria este tan dañada que |
|
68 |
# nos falle el calculo de su centroide. |
|
69 |
wktgeom = feature.geometry().centroid().convertToWKT() |
|
70 |
except: |
|
71 |
wktgeom = None |
|
72 |
output.write("<li>") |
|
73 |
if wktgeom == None: |
|
74 |
output.write('%5.5d %s<br>%s' % (i, feature.toString(),vs.getMessage())) |
|
75 |
else: |
|
76 |
output.write('<a href="%s">%5.5d</a> %s<br>%s' % (wktgeom,i, feature.toString(),vs.getMessage())) |
|
77 |
output.write("</li>") |
|
78 |
layer.getSelection().select(feature) |
|
64 | 79 |
else: |
65 |
try: |
|
66 |
# Atrapamos los errores no vaya a ser que la geometria este tan dañada que |
|
67 |
# nos falle el calculo de su centroide. |
|
68 |
wktgeom = feature.geometry().centroid().convertToWKT() |
|
69 |
except: |
|
70 |
wktgeom = None |
|
71 |
output.write("<li>") |
|
72 |
if wktgeom == None: |
|
73 |
output.write('%5.5d %s<br>%s' % (i, feature.toString(),vs.getMessage())) |
|
74 |
else: |
|
75 |
output.write('<a href="%s">%5.5d</a> %s<br>%s' % (wktgeom,i, feature.toString(),vs.getMessage())) |
|
76 |
output.write("</li>") |
|
77 |
layer.getSelection().select(feature) |
|
80 |
hay_problemas = True |
|
81 |
output.write("<li>") |
|
82 |
output.write('%5.5d %s<br>%s' % (i, feature.toString(), "Null geometry")) |
|
83 |
output.write("</li>") |
|
78 | 84 |
i+=1 |
79 | 85 |
finally: |
80 | 86 |
# Al terminar |
... | ... | |
95 | 101 |
else: |
96 | 102 |
msgbox("Layer "+layer.getName()+" is valid.") |
97 | 103 |
|
104 |
|
Also available in: Unified diff