<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p>Buenas,</p>
<p><br>
</p>
<p>Los algortimos gvSIG-* funcionan de manera algo diferente. Por
ahora, siempre que ejecutes uno de estos algoritmos tienes que
especificar el path que quieres usar. En gvpy se especifica
añadiendo un parámetro PATH. Para esto ya teníamos una función
preparada en gvSIG llamada getTempFile("nombre", "extension",
"carpeta destino"), siendo el último parámetro opcional. Esto
imita el funcionamiento que tienen el resto de geoprocesos.</p>
<p><br>
</p>
<p>También ten en cuenta que este geoproceso reproject especifica y
crea tres capas de salida, aunque luego solo vayas a usar una, hay
que indicar los paths.</p>
<p><br>
</p>
<p>Te adjunto un ejemplo de todo esto.</p>
<p><br>
</p>
<p>Espero te sirva de ayuda, cualquier cosa nos comentas.</p>
<p><br>
</p>
<p>Saludos</p>
<p><br>
</p>
<p><a class="moz-txt-link-freetext" href="https://gist.github.com/oscar9/43523df6c76056cbde97f4a23f967ffe">https://gist.github.com/oscar9/43523df6c76056cbde97f4a23f967ffe</a></p>
<p><br>
</p>
<pre># encoding: utf-8</pre>
<pre>
import gvsig</pre>
<pre>from gvsig import *</pre>
<pre>from gvsig.libs import gvpy</pre>
<pre>reload(gvpy)</pre>
<pre>import os</pre>
<pre>
def main(*args):</pre>
<pre> </pre>
<pre> gvpy.algHelp("gvSIG-reproject")</pre>
<pre> """</pre>
<pre> * Algorithm help: Reproyección</pre>
<pre> * Usage: runalg( "gvSIG-reproject",</pre>
<pre> LAYER[Vector Layer],</pre>
<pre> SELECTED_GEOM[Boolean],</pre>
<pre> DST_PROJECTION[String],</pre>
<pre> RESULT_POL[output vector layer],</pre>
<pre> RESULT_LINE[output vector layer],</pre>
<pre> RESULT_POINT[output vector layer],</pre>
<pre> );</pre>
<pre> """</pre>
<pre> #Funtion tempfile</pre>
<pre> n1 = getTempFile("new", ".shp")</pre>
<pre> print n1</pre>
<pre> #C:\Users\Versus\AppData\Local\Temp\/tmp-andami\new-58d51c6267b.shp</pre>
<pre> </pre>
<pre> n2 = getTempFile("new", ".shp", r"C:\resultados")</pre>
<pre> print n2</pre>
<pre> #C:\resultados\new-58d51c62686.shp</pre>
<pre> </pre>
<pre> # Ejemplo</pre>
<pre> shp1 = gvpy.runalg("randomvector",10,0)</pre>
<pre> shp2 = gvpy.runalg("gvSIG-reproject", shp1, "false", "EPSG:25829", PATH=[getTempFile("new1", ".shp"),getTempFile("new2", ".shp"),getTempFile("new3", ".shp")])</pre>
<pre> print shp2</pre>
<pre> </pre>
<pre> # Salida multiple en forma de lista: [new1-58d51c7f20ed, new2-58d51c7f20ed, new3-58d51c7f20ed]</pre>
<pre> print shp2[0].getGeometryType().getName()</pre>
<pre> print shp2[1].getGeometryType().getName()</pre>
<pre> print shp2[2].getGeometryType().getName()</pre>
<pre> pass</pre>
<br>
<br>
<div class="moz-cite-prefix">El 24/03/2017 a las 13:00, Ovidio
Ribeira escribió:<br>
</div>
<blockquote
cite="mid:AM5PR0202MB2692CF4B812D6AA5F01BC8C4D73E0@AM5PR0202MB2692.eurprd02.prod.outlook.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper"
style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif;"
dir="ltr">
<div id="divtagdefaultwrapper" style="color: rgb(0, 0, 0);
font-family: Calibri,Arial,Helvetica,sans-serif; font-size:
12pt;" dir="ltr">
<p><span>Hola, usando la libreria gvpy en un script y
al ejecutarlo la segunda vez me da el error de que el
fichero de salida existe, utilizando el siguente comando:</span></p>
<p><span>gvpy.runalg("gvSIG-reproject", "Area", "false",
"EPSG:25829", "#", "#", "#",)</span></p>
<p><span>Con esta outra linea funciona sin problemas creando
varios ficheros temporales:
<span>gvpy.runalg("randomvector",10,0),</span></span></p>
<p><span><span>Tambien necesito ayuda para capturar solo la
capa de polígonos del geoproceso gvsig-reproject.</span></span></p>
<p><span><span>Gracias y saludos.</span></span></p>
<p><br>
</p>
</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="https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios">https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios</a>
</pre>
</blockquote>
<br>
</body>
</html>