Script buscar referència cadastral

Com es va comentar en l’altra entrada, Línies Cartogràfiques va acudir a les jornades de gvSIG, que van ser molt interessants i es va poder treure molt de partit. Una de les coses que va semblar molt interessant van ser els “principis” del codi lliure, tot i que abans d’acudir a les jornades ja erem partidaris del codi lliure, encara no havíem sigut conscients de com d’important és compartir qualsevol codi que es faça, és per això, que compratim un script molt bàsic que hem creat per a buscar una parcel·la per referència cadastral, que la sel·leccione i centre la vista en ella,  s’ha de tindre una capa de parcel·les en un camp REFCAT. Ja sabem que ja està implementada l’eina, però ens pot servir per a altres scripts i també per a que l’usuari del nostre SIG no haja de buscar la eina de buscar per atributs. Faltarien modificar algunes coses per a que funcione perfectament, però de moment és operatiu.


from gvsig import *
from commonsdialog import *
from geom import *
import sys

#Buscar parcel·la per referència cadastral
#Laia Linares Ortells

def busc_ref_c(layer, features, view, ref_c):
  c=0
  for i in features:
    if i.REFCAT==ref_c:
      sel=layer.getSelection().select(i) # selecciona la parcel·la que ha buscat
      geom_sel=i.geometry() # extrau la geometria de la parcel·la
      geom_bu=geom_sel.buffer(10)
      view.getMap().getViewPort().setEnvelope(geom_bu.getEnvelope()) # zoom a la parcel·la
      msgbox ("La referencia cadastral es correcta")
      c==1
      return c
  if c==0:
    ref_c = inputbox("La referencia cadastral no es correcta \n Introdueix la referencia cadastral valida")
    busc_ref_c(layer, features, view, ref_c)

def main():
    c=0
    layer = currentLayer()
    features = currentLayer().features() #Emmagatzemem totes les entitats
    view = currentView()
    if layer == None:
      msgbox ("Carrega la capa de parceles")
    else:
      ref_c = inputbox("Introdueix la referencia cadastral")
      busc_ref_c(layer, features, view, ref_c)

This entry was posted in Uncategorized and tagged , . Bookmark the permalink.

1 Response to Script buscar referència cadastral

  1. Pingback: Scripting en gvSIG: Centrar vista en uno o varios polígonos | másquesig

Leave a comment