<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Buenas,<br>
<br>
Con un script rápido creo que puede hacerte buena función.<br>
<br>
Para cargar un script: <a class="moz-txt-link-freetext" href="https://www.youtube.com/watch?v=7c_6KetDOAM">https://www.youtube.com/watch?v=7c_6KetDOAM</a><br>
<br>
Necesitas tener una vista con las capas cargadas, y una capa de
puntos seleccionada.<br>
<br>
Lo que hace es buscar en todo el resto de capas que tengas en esa
vista las posibles intersecciones, mostrando los valores por
consola, dando una salida similar a esta:<br>
Running script listas_info_interseccion.<br>
<br>
Point info: {u'campo2': u'Venecia', u'campo1': 101L}<br>
- Layer: valencia_index<br>
-- {u'fecha': u'1980-01-01', u'location':
u'/cdrom/data/cartografia/Valencia/valencia1980.ecw'}<br>
-- {u'fecha': u'1992-01-01', u'location':
u'/cdrom/data/cartografia/Valencia/valencia1992.ecw'}<br>
-- {u'fecha': u'2002-01-01', u'location':
u'/cdrom/data/cartografia/Valencia/valencia2002.ecw'}<br>
- Layer: parcelas_Valencia<br>
-- {u'PARCELA': u'03', u'AREA': 327L, u'FECHAALTA': 20011119,
u'MUNICIPIO': 900, u'MAPA': 242, u'COORX': 725957.12, u'NUMERO': 4,
u'FECHABAJA': 99999999, u'NUMERODUP': u'', u'MASA': u'59286',
u'NUMSYMBOL': 6, u'VIA': 1321, u'HOJA': u'YJ2752H', u'COORY':
4372804.5, u'TIPO': u'U', u'DELEGACIO': 46}<br>
- Layer: manzanas_valencia<br>
-- {u'AREA': 1061L, u'FECHAALTA': 20011119, u'MUNICIPIO': 900,
u'MAPA': 242, u'COORX': 725927.0, u'FECHABAJA': 99999999, u'MASA':
u'59286', u'NUMSYMBOL': 2, u'HOJA': u'YJ2752H', u'IDX': u'1234',
u'COORY': 4372811.0, u'TIPO': u'U', u'DELEGACIO': 46}<br>
<br>
Point info: {u'campo2': u'Paris', u'campo1': 102L}<br>
- Layer: valencia_index<br>
-- {u'fecha': u'1980-01-01', u'location':
u'/cdrom/data/cartografia/Valencia/valencia1980.ecw'}<br>
-- {u'fecha': u'1992-01-01', u'location':
u'/cdrom/data/cartografia/Valencia/valencia1992.ecw'}<br>
-- {u'fecha': u'2002-01-01', u'location':
u'/cdrom/data/cartografia/Valencia/valencia2002.ecw'}<br>
- Layer: parcelas_Valencia<br>
- Layer: manzanas_valencia<br>
<br>
Como ves, muestra los valores de los polígonos que intersecan con
cada punto.<br>
<br>
Es posible que funcione también si seleccionas una capa de polígonos
al inicio. Al menos te puede servir de punto de partida. Ya nos
comentas si algo así te es útil.<br>
<br>
Un saludo,<br>
Óscar<br>
<br>
<br>
Código:<br>
<br>
from gvsig import *<br>
<br>
def infoInter(featurePoint, lstLayers):<br>
pointValues = featurePoint.getValues()<br>
pointValues.pop('GEOMETRY')<br>
gfeat = featurePoint.geometry()<br>
print "\nPoint info: ", pointValues<br>
for layer in lstLayers:<br>
print "- Layer: ", layer.name<br>
for pol in layer.features():<br>
polValues = pol.getValues()<br>
gpol = pol.geometry()<br>
polValues.pop('GEOMETRY')<br>
if gpol.intersects(gfeat):<br>
print "-- ", polValues<br>
<br>
<br>
<br>
def main(*args):<br>
#Intersection info<br>
lyrPoints = currentLayer()<br>
<br>
#Capas diferentes a la de puntos<br>
lstLayers = []<br>
for capa in currentView().getLayers():<br>
if not capa.name == lyrPoints.name:<br>
lstLayers.append(capa)<br>
<br>
#intersecar puntos<br>
for point in lyrPoints.features():<br>
infoInter(point, lstLayers)<br>
<br>
<div class="moz-cite-prefix">On 25/11/2015 23:04, Jose Manuel Mora
Fallas wrote:<br>
</div>
<blockquote
cite="mid:CAO9+CxJRtGxVOLLhTidthCm-F7pqbbPME7adbnn+kc1yHv9TMA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div>
<div>Buenas, tengo la siguiente consulta, en el lugar en que
trabajo se hacen diferentes tipos de trámites, muchos de
ellos implican saber determinar si uno o varios puntos o
uno o varios polígonos traslapan por ejemplo con cuencas
hidrográficas, áreas protegidas, entre otros.<br>
<br>
</div>
¿existe alguna forma de hacer esto automatizado?<br>
<br>
</div>
Es decir elijo la capa uno la cual puede tener uno o varios
atributos y pedir que se interseque con otras capas y que me
indique cuáles de esos puntos se encuentran dentro de una
cuenca hidrográfica, un área protegida, una provincia, entre
otros.<br>
<br>
</div>
Atentamente, <br clear="all">
<div>
<div>
<div>
<div>
<div><br>
-- <br>
<div class="gmail_signature">_________________________<br>
Jose Manuel Mora Fallas <br>
<a moz-do-not-send="true"
href="http://www.acto.go.cr" target="_blank">www.acto.go.cr</a><br>
<img moz-do-not-send="true"
src="http://qrcode.kaywa.com/img.php?s=8&d=Jose%20Manuel%20Mora%20Fallas%0D%0AEnlace%20TIC%0D%0A%C3%81rea%20de%20Conservaci%C3%B3n%20Tortuguero%0D%0Ahttp%3A%2F%2Fwww.acto.go.cr"
height="162" width="162"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
gvSIG_usuarios mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gvSIG_usuarios@listserv.gva.es">gvSIG_usuarios@listserv.gva.es</a>
Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección:
<a class="moz-txt-link-freetext" href="http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios">http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios</a>
</pre>
</blockquote>
<br>
</body>
</html>