Statistics
| Revision:

gvsig-geoprocess / org.gvsig.geoprocess / trunk / org.gvsig.geoprocess / org.gvsig.geoprocess.app / org.gvsig.geoprocess.app.mainplugin / src / main / resources / help / es / general / batch.html @ 338

History | View | Annotate | Download (14.8 KB)

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2

    
3
<!--Converted with LaTeX2HTML 2002-2-1 (1.71)
4
original version by:  Nikos Drakos, CBLU, University of Leeds
5
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
6
* with significant contributions from:
7
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
8
<HTML>
9
<HEAD>
10
<TITLE>La l?nea de comandos</TITLE>
11
<META NAME="description" CONTENT="La l?nea de comandos">
12
<META NAME="keywords" CONTENT="ManualElementosSEXTANTE">
13
<META NAME="resource-type" CONTENT="document">
14
<META NAME="distribution" CONTENT="global">
15

    
16
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
17
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
18
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
19

    
20
<LINK REL="STYLESHEET" HREF="ManualElementosSEXTANTE.css">
21

    
22
</HEAD>
23

    
24
<BODY >
25
<!--Table of Child-Links-->
26
<A NAME="CHILD_LINKS"><STRONG>Subsecciones</STRONG></A>
27

    
28
<UL CLASS="ChildLinks">
29
<LI><A NAME="tex2html205"
30
  HREF="node7.html#SECTION00710000000000000000">Introducci?n</A>
31
<LI><A NAME="tex2html206"
32
  HREF="node7.html#SECTION00720000000000000000">La interfaz</A>
33
<UL>
34
<LI><A NAME="tex2html207"
35
  HREF="node7.html#SECTION00721000000000000000">Obtener informaci?n sobre los datos</A>
36
</UL>
37
<BR>
38
<LI><A NAME="tex2html208"
39
  HREF="node7.html#SECTION00730000000000000000">Obtener informaci?n sobre los algoritmos de an?lisis geogr?fico</A>
40
<LI><A NAME="tex2html209"
41
  HREF="node7.html#SECTION00740000000000000000">Ejecutando algoritmos</A>
42
<LI><A NAME="tex2html210"
43
  HREF="node7.html#SECTION00750000000000000000">Ajustar las caracter?sticas de la capa raster de salida</A>
44
<LI><A NAME="tex2html211"
45
  HREF="node7.html#SECTION00760000000000000000">Ejecutando modelos</A>
46
<LI><A NAME="tex2html212"
47
  HREF="node7.html#SECTION00770000000000000000">Manejo de capas desde la consola</A>
48
</UL>
49
<!--End of Table of Child-Links-->
50
<HR>
51

    
52
<H1><A NAME="SECTION00700000000000000000">
53
La l&#237;nea de comandos</A>
54
</H1>
55

    
56
<P>
57

    
58
<H1><A NAME="SECTION00710000000000000000">
59
Introducci&#243;n</A>
60
</H1>
61

    
62
<P>
63
La <SPAN  CLASS="textit">l&#237;nea de comandos</SPAN> de SEXTANTE permite a los usuarios m&#225;s avanzados hacer un uso mas &#225;gil del programa y automatizar tareas mediante la creaci&#243;n de sencillos scripts.
64

    
65
<P>
66

    
67
<H1><A NAME="SECTION00720000000000000000">
68
La interfaz</A>
69
</H1>
70

    
71
<P>
72
Para empezar a utilizar la l&#237;nea de comandos en SEXTANTE haz clic en el icono correspondiente y podr&#225;s ver lo siguiente:
73

    
74
<P>
75
<DIV ALIGN="CENTER">
76

    
77

    
78
</DIV>
79

    
80
<P>
81
La l&#237;nea de comandos de SEXTANTE est&#225; basada en BeanShell. BeanShell es un interprete de c&#243;digo de Java en modo script que permite ejecutar din&#225;micamente la sintaxis est&#225;ndar de Java y comandos comunes, como los de Perl y JavaScript. 
82

    
83
<P>
84
Si se quiere profundizar y conocer BeanShell puedes visitar tu p&#225;gina web. En este cap&#237;tulo s&#243;lo haremos menci&#243;n a los elementos de BeanShell relacionados con los algoritmos de an&#225;lisis geogr&#225;fico de SEXTANTE. 
85

    
86
<P>
87
SEXTANTE a&#241;ade nuevos comandos que permiten ejecutar los algoritmos y obtener nueva informaci&#243;n geogr&#225;fica de los datos que se est&#233;n usando, entre otras cosas.
88

    
89
<P>
90
Los usuarios de Java pueden crear peque&#241;os scripts y programas combinando los elementos de Java con los comandos de SEXTANTE. Sin embargo, quien no este familiarizado con Java puede usar la l&#237;nea de comandos de SEXTANTE para ejecutar un proceso o un conjunto de ellos, simplemente llamando al correspondiente m&#233;todo del algoritmo. 
91

    
92
<P>
93
En las pr&#243;ximas l&#237;neas se puede encontrar una descripci&#243;n detallada de todos los comandos de SEXTANTE. 
94

    
95
<P>
96

    
97
<H2><A NAME="SECTION00721000000000000000">
98
Obtener informaci&#243;n sobre los datos</A>
99
</H2>
100

    
101
<P>
102
Todos los algoritmos necesitan datos para ser ejecutados con &#233;xito. Las capas geogr&#225;ficas y tablas son identificadas usando el nombre que tienen en la tabla de contenidos de la aplicaci&#243;n SIG que se este usando. 
103

    
104
<P>
105
El comando <TT>data()</TT> escribe una lista de todos los objetos de datos disponibles que pueden ser usados, junto con el nombre particular de cada uno de ellos. Llamando a un dato se obtendr&#225; algo como esto:
106

    
107
<P>
108
<PRE>
109
RASTER LAYERS
110
-----------------
111
mdt25.asc
112

    
113
VECTOR LAYERS
114
-----------------
115
Curvas de nivel
116

    
117
TABLES
118
-----------------
119
</PRE>
120

    
121
<P>
122
Hay que tener en cuenta que algunos SIG permiten tener varias capas de informaci&#243;n (datos) con el mismo nombre. SEXTANTE coger&#225; el primero de esos nombres, por tanto seria conveniente renombrar los datos para cada uno de ellos si tuvieran el mismo nombre.
123

    
124
<P>
125
El comando <TT>describe</TT> (nombre del objeto) permite obtener informaci&#243;n sobre un objeto o dato concreto. Para referirnos a ese objeto, usamos el nombre que tiene en la tabla de contenidos. A continuaci&#243;n se muestra una serie de ejemplos con este comando donde se obtiene informaci&#243;n sobre una capa vectorial, una capa raster y una tabla.
126

    
127
<P>
128
<PRE>
129
&gt;describe points.shp
130
Type: Vector layer - Point
131
Number of entities: 300
132
Table fields: | ID | X | Y | SAND | SILT | CLAY | SOILTYPE | EXTRAPOLAT |
133

    
134
&gt;describe dem25.asc
135
Type: Raster layer 
136
X min: 262846.525725
137
X max: 277871.525725
138
Y min: 4454025.0
139
Y max: 4464275.0
140
Cellsize X: 25.0
141
Cellsize Y: 0.0
142
Rows: 410
143
Cols: 601
144

    
145
&gt;describe spatialCorrelation.dbf
146
Type: TableNumber of records: 156
147
Table fields: | Distance | I_Moran | c_Geary | Semivariance |
148
</PRE>
149

    
150
<P>
151

    
152
<H1><A NAME="SECTION00730000000000000000">
153
Obtener informaci&#243;n sobre los algoritmos de an&#225;lisis geogr&#225;fico</A>
154
</H1>
155

    
156
<P>
157
Una vez descritos los datos vamos a ver a continuaci&#243;n los algoritmos que se pueden usar para extraer el m&#225;ximo provecho posible para el an&#225;lisis. 
158

    
159
<P>
160
Cuando se ejecuta un algoritmo con el gestor de extensiones de SEXTANTE, se usa la ventana de par&#225;metros con varios campos, cada uno de ellos corresponden a un s&#243;lo par&#225;metro. En SEXTANTE cada algoritmo de an&#225;lisis espacial es identificado por un comando. Cuando se usa la l&#237;nea de comandos de SEXTANTE, se debe conocer que par&#225;metros son necesarios, para pasar los valores correctos y usar el m&#233;todo que haga correr el algoritmo. SEXTANTE posee un m&#233;todo para describir en detalle un algoritmo. Pero antes necesitamos conocer el nombre del algoritmo, y para ello utilizamos el comando <TT>algs()</TT>. Se muestra a continuaci&#243;n una parte de los algoritmos de SEXTANTE.
161

    
162
<P>
163
<PRE>
164
bsh % algs();
165
acccost-------------------------------: Accumulated cost(isotropic)
166
acccostanisotropic--------------------: Accumulated cost (anisotropic)
167
acccostcombined-----------------------: Accumulated cost (combined)
168
accflow-------------------------------: Flow accumulation
169
acv-----------------------------------: Anisotropic coefficient of variation
170
addeventtheme-------------------------: Points layer from table
171
aggregate-----------------------------: Aggregate
172
aggregationindex----------------------: Aggregation index
173
ahp-----------------------------------: Analytical Hierarchy Process (AHP)
174
aspect--------------------------------: Aspect
175
buffer--------------------------------: Buffer
176
</PRE>
177

    
178
<P>
179
En la izquierda hay una lista con el nombre de cada algoritmo. Este nombre es el que se tiene que usar para hacer referencia en la l&#237;nea de comandos. En la derecha se puede ver el nombre del algoritmo en el actual lenguaje, el cual es el mismo nombre que identifica el algoritmo en el Gestor de extensiones. Sin embargo, el nombre no es el mismo ya que depende del lenguaje actual en la aplicaci&#243;n SIG, y por lo tanto puede ser usado para llamar al algoritmo.
180

    
181
<P>
182
A continuaci&#243;n vamos a ver como obtener una lista de par&#225;metros que un algoritmo necesita para que se ejecute con &#233;xito. Para ver la descripci&#243;n de los par&#225;metros que requiere un algoritmo usa el comando <TT>describealg(nombre_del_algoritmo)</TT>. Recordar que se debe usar el nombre del algoritmo (lado izquierdo), no la descripci&#243;n del algoritmo (lado derecho).
183

    
184
<P>
185
Por ejemplo, si queremos calcular la acumulaci&#243;n de flujo desde un MDE, necesitamos ejecutar el correspondiente modulo, el cual, de acuerdo a la lista de algoritmos <TT>ags()</TT>, es identifacado como <TT>accflow</TT>. Una descripci&#243;n de las entradas y salidas de dicho algoritmo podemos ver a continuaci&#243;n: 
186

    
187
<P>
188
<PRE>
189
&gt;describealg("accflow")
190
Usage: accflow(DEM[Raster Layer]
191
               WEIGHTS[Optional Raster Layer]
192
               METHOD[Selection]
193
               CONVERGENCE[Numerical Value]
194
               FLOWACC [output raster layer])
195
</PRE>              
196

    
197
<P>
198

    
199
<H1><A NAME="SECTION00740000000000000000">
200
Ejecutando algoritmos</A>
201
</H1>
202

    
203
<P>
204
Para ejecutar los algoritmos utilizamos el comando <TT>runalg</TT>. La sintaxis es la siguiente:
205

    
206
<P>
207
<PRE>
208
&gt; runalg{name_of_the_algorithm, param1, param2, ..., paramN)
209
</PRE>
210

    
211
<P>
212
La lista de par&#225;metros para a&#241;adir depende del algoritmo que quieras ejecutar. Para ver una lista de par&#225;metro debemos utilizar el comando <TT>describealg</TT>.
213

    
214
<P>
215
Los valores se introducen de manera diferente, dependiendo del tipo de par&#225;metro. Veamos los diferentes tipos de par&#225;metros y c&#243;mo deben introducirse sus valores correspondientes para ejecutar con &#233;xito el algoritmo.
216

    
217
<P>
218
Si se quiere utilizar un valor por defecto de un par&#225;metro de entrada hay que escribir una almohadilla (#). En los par&#225;metros opcionales, el uso del valor por defecto es equivalente a no utilizar entrada alguna.
219

    
220
<P>
221

    
222
<UL>
223
<LI>Raster Layer,  Vector Layer o Table. Simplemente introduce el nombre que identifica el objeto a usar. Si la entrada es opcional y no se quiere a&#241;adir ning&#250;n objeto, escribir ``#''. 
224
</LI>
225
<LI>Numerical value. Valor num&#233;rico. 
226
</LI>
227
<LI>Selection. Escribe el n&#250;mero correspondiente a la opci&#243;n deseada, como muestra el comando <TT>options</TT>.
228
</LI>
229
<LI>String. Cadena de texto.
230
</LI>
231
<LI>Boolean. Escribe cualquier de los dos valores true o false (incluidas comillas). 
232
</LI>
233
<LI>Multiple selection - tipo_datos. Se necesita un grupo de objetos como par&#225;metro para ejecutar el modulo, separados por comas y encerrados entre comillas.
234

    
235
<P>
236
Por ejemplo, para el algoritmo <TT>maxvaluegrid</TT>:
237

    
238
<P>
239
<PRE>
240

    
241
Usage: runalg("maxvaluegrid",
242
                   INPUT[Multiple Input - Raster Layer]
243
                   NODATA[Boolean],
244
                   RESULT[Output raster layer])
245
</PRE>
246

    
247
<P>
248
La siguiente l&#237;nea muestra un ejemplo de uso:
249

    
250
<P>
251
<PRE>
252
&gt; runalg("maxvaluegrid", "lyr1, lyr2, lyr3", "false", "#")
253
</PRE>
254

    
255
<P>
256
Por supuesto, lyr1, lyr2, lyr3 deben ser una capas raster v&#225;lidas ya cargadas. En el caso de [<TT>Multiple Input - Band</TT>] (m&#250;ltiples bandas), cada par&#225;metro es definido por un par de valores (<SPAN  CLASS="textit">capa, banda</SPAN>). Por ejemplo, para el algoritmo <TT>cluster</TT>.
257

    
258
<P>
259
<PRE>
260
Usage: runalg( "cluster",
261
               INPUT[Multiple Input - Band],
262
               NUMCLASS[Numerical Value],
263
               RESULTLAYER[output raster layer],
264
               RESULTTABLE[output table],
265
               );
266
</PRE>
267

    
268
<P>
269
Un ejemplo v&#225;lido es la siguiente l&#237;nea:
270

    
271
<P>
272
<PRE>
273
&gt; runalg("cluster, "lyr1, 1, lyr1, 2, lyr2, 2", 5, "#", "#")
274
</PRE>
275

    
276
<P>
277
El algoritmo usar&#225; 3 bandas, dos de ellas de lyr1 (bandas 1 y 2), y una de lyr2 (banda 2).
278

    
279
<P>
280
</LI>
281
<LI>Table Field from XXX . Escribe el nombre del campo de una capa vectorial o una tabla. 
282
</LI>
283
<LI>Fixed Table  Tabla fija. Simplemente introduce todos los valores de las celdas de la tabla, separados por comas y entre comillas. Primero los valores de la fila superior, de izquierda a derecha, luego los de la segunda, y as&#237; sucesivamente. La siguiente l&#237;nea muestra un ejemplo de uso de tabla fija con la extensi&#243;n <SPAN  CLASS="textit">Filtro 3 X 3 definido por el usuario</SPAN>:
284

    
285
<P>
286
<PRE>
287
runalg("kernelfilter", mdt25.asc, "-1, -1, -1, -1, 9, -1, -1, -1, -1", "#")
288
</PRE>
289

    
290
<P>
291
</LI>
292
<LI>Point . Las dos coordenadas de un punto deben estar separadas por comas y encerradas entre comillas. Ejemplo: ``220345, 4453616'' 
293

    
294
<P>
295
</LI>
296
</UL>
297

    
298
<P>
299
Los par&#225;metros de entrada como las cadenas de texto o los valores num&#233;ricos tiene valores por defecto. Para usar estos, escribir ``#'' en la entrada correspondiente en lugar del valor de expresi&#243;n.
300

    
301
<P>
302
Los objetos de salida, como la ruta de salida, pueden ser salvadas a un fichero temporal usando el signo ``#''.  Si lo que quieres es salvar la capa de salida a un fichero permanente, escribe el nombre del fichero de salida.
303

    
304
<P>
305

    
306
<H1><A NAME="SECTION00750000000000000000">
307
Ajustar las caracter&#237;sticas de la capa raster de salida</A>
308
</H1>
309

    
310
<P>
311
Si intentas ejecutar cualquier algoritmo que genere nuevas capas raster, las crear&#225; con un tama&#241;o de celda y una extensi&#243;n autom&#225;tica calculada a partir de la capa raster de entrada. Este funcionamiento puede ser modificado usando el comando <TT>autoextent</TT>.
312

    
313
<P>
314
<PRE>
315
&gt; autoextent("true"/"false)
316
</PRE>
317

    
318
<P>
319
Por defecto, tiene valor verdadero (<TT>true</TT>). Sin embargo, si quieres definir una extensi&#243;n y tama&#241;o de celda en particular para todas las capas raster de salida, debes usar el comando <TT>extent</TT>.
320

    
321
<P>
322
<PRE>
323
Usage: extent(raster layer[string])
324
       extent(vector layer[string], cellsize[double])
325
       extent(x min[double], y min[double],
326
              x max[double], y max[double], 
327
              cell size[double])
328
Type "autoextent" to use automatic extent fitting when possible
329
</PRE>
330

    
331
<P>
332
Al establecer una extensi&#243;n fija, autom&#225;ticamente se desactiva el ajuste autom&#225;tico (es decir, como si ejecutaras un comando <TT>autoextent false</TT>).
333

    
334
<P>
335

    
336
<H1><A NAME="SECTION00760000000000000000">
337
Ejecutando modelos</A>
338
</H1>
339

    
340
<P>
341
Para ejecutar un modelo desde la l&#237;nea de comandos debe utilizarse el comando <TT>model</TT>, con una sintaxis similar al comando <TT>runalg</TT>. En este caso, en lugar del nombre del algoritmo como primer par&#225;metro, debe introducirse el nombre del fichero donde est&#225; almacenado el modelo, que obligatoriamente debe encontrarse en la carpeta de modelos establecida en la configuraci&#243;n de SEXTANTE. Los restantes par&#225;metros son los correspondientes en cada caso al propio modelo, del mismo modo que en el caso de ejecutar un algoritmo con el comando <TT>runalg</TT>;
342

    
343
<P>
344

    
345
<H1><A NAME="SECTION00770000000000000000">
346
Manejo de capas desde la consola</A>
347
</H1>
348

    
349
<P>
350
Puedes realizar algunas operaciones de gesti&#243;n de capas desde la interfaz en l&#237;nea de comandos, como por ejemplo:
351

    
352
<P>
353

    
354
<UL>
355
<LI>Cerrar una capa. Utiliza el comando <TT>close(nombre_capa)</TT>
356
</LI>
357
<LI>Cambiar el valor de sin datos de una capa raster. Utiliza el comando <TT>setnodata(nombre_capa, nuevo_valor)</TT>
358
</LI>
359
<LI>Cambiar el nombre de una capa. Utiliza el comando <TT>rename(nombre_capa,nuevo_nombre_capa)</TT>
360
</LI>
361
</UL>
362

    
363
<P>
364
<BR><HR>
365
<ADDRESS>
366
Victor Olaya
367
2010-02-18
368
</ADDRESS>
369
</BODY>
370
</HTML>