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 / linea_comandos.html @ 338

History | View | Annotate | Download (13.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

    
26
<H1><A NAME="SECTION00700000000000000000">
27
La l&#237;nea de comandos</A>
28
</H1>
29

    
30
<P>
31

    
32
<H1><A NAME="SECTION00710000000000000000">
33
Introducci&#243;n</A>
34
</H1>
35

    
36
<P>
37
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.
38

    
39
<P>
40

    
41
<H1><A NAME="SECTION00720000000000000000">
42
La interfaz</A>
43
</H1>
44

    
45
<P>
46
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:
47

    
48
<P>
49
<DIV ALIGN="CENTER">
50

    
51

    
52
</DIV>
53

    
54
<P>
55
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. 
56

    
57
<P>
58
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. 
59

    
60
<P>
61
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.
62

    
63
<P>
64
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. 
65

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

    
69
<P>
70

    
71
<H2><A NAME="SECTION00721000000000000000">
72
Obtener informaci&#243;n sobre los datos</A>
73
</H2>
74

    
75
<P>
76
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. 
77

    
78
<P>
79
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:
80

    
81
<P>
82
<PRE>
83
RASTER LAYERS
84
-----------------
85
mdt25.asc
86

    
87
VECTOR LAYERS
88
-----------------
89
Curvas de nivel
90

    
91
TABLES
92
-----------------
93
</PRE>
94

    
95
<P>
96
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.
97

    
98
<P>
99
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.
100

    
101
<P>
102
<PRE>
103
&gt;describe points.shp
104
Type: Vector layer - Point
105
Number of entities: 300
106
Table fields: | ID | X | Y | SAND | SILT | CLAY | SOILTYPE | EXTRAPOLAT |
107

    
108
&gt;describe dem25.asc
109
Type: Raster layer 
110
X min: 262846.525725
111
X max: 277871.525725
112
Y min: 4454025.0
113
Y max: 4464275.0
114
Cellsize X: 25.0
115
Cellsize Y: 0.0
116
Rows: 410
117
Cols: 601
118

    
119
&gt;describe spatialCorrelation.dbf
120
Type: TableNumber of records: 156
121
Table fields: | Distance | I_Moran | c_Geary | Semivariance |
122
</PRE>
123

    
124
<P>
125

    
126
<H1><A NAME="SECTION00730000000000000000">
127
Obtener informaci&#243;n sobre los algoritmos de an&#225;lisis geogr&#225;fico</A>
128
</H1>
129

    
130
<P>
131
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. 
132

    
133
<P>
134
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.
135

    
136
<P>
137
<PRE>
138
bsh % algs();
139
acccost-------------------------------: Accumulated cost(isotropic)
140
acccostanisotropic--------------------: Accumulated cost (anisotropic)
141
acccostcombined-----------------------: Accumulated cost (combined)
142
accflow-------------------------------: Flow accumulation
143
acv-----------------------------------: Anisotropic coefficient of variation
144
addeventtheme-------------------------: Points layer from table
145
aggregate-----------------------------: Aggregate
146
aggregationindex----------------------: Aggregation index
147
ahp-----------------------------------: Analytical Hierarchy Process (AHP)
148
aspect--------------------------------: Aspect
149
buffer--------------------------------: Buffer
150
</PRE>
151

    
152
<P>
153
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.
154

    
155
<P>
156
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).
157

    
158
<P>
159
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: 
160

    
161
<P>
162
<PRE>
163
&gt;describealg("accflow")
164
Usage: accflow(DEM[Raster Layer]
165
               WEIGHTS[Optional Raster Layer]
166
               METHOD[Selection]
167
               CONVERGENCE[Numerical Value]
168
               FLOWACC [output raster layer])
169
</PRE>              
170

    
171
<P>
172

    
173
<H1><A NAME="SECTION00740000000000000000">
174
Ejecutando algoritmos</A>
175
</H1>
176

    
177
<P>
178
Para ejecutar los algoritmos utilizamos el comando <TT>runalg</TT>. La sintaxis es la siguiente:
179

    
180
<P>
181
<PRE>
182
&gt; runalg{name_of_the_algorithm, param1, param2, ..., paramN)
183
</PRE>
184

    
185
<P>
186
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>.
187

    
188
<P>
189
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.
190

    
191
<P>
192
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.
193

    
194
<P>
195

    
196
<UL>
197
<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 ``#''. 
198
</LI>
199
<LI>Numerical value. Valor num&#233;rico. 
200
</LI>
201
<LI>Selection. Escribe el n&#250;mero correspondiente a la opci&#243;n deseada, como muestra el comando <TT>options</TT>.
202
</LI>
203
<LI>String. Cadena de texto.
204
</LI>
205
<LI>Boolean. Escribe cualquier de los dos valores true o false (incluidas comillas). 
206
</LI>
207
<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.
208

    
209
<P>
210
Por ejemplo, para el algoritmo <TT>maxvaluegrid</TT>:
211

    
212
<P>
213
<PRE>
214

    
215
Usage: runalg("maxvaluegrid",
216
                   INPUT[Multiple Input - Raster Layer]
217
                   NODATA[Boolean],
218
                   RESULT[Output raster layer])
219
</PRE>
220

    
221
<P>
222
La siguiente l&#237;nea muestra un ejemplo de uso:
223

    
224
<P>
225
<PRE>
226
&gt; runalg("maxvaluegrid", "lyr1, lyr2, lyr3", "false", "#")
227
</PRE>
228

    
229
<P>
230
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>.
231

    
232
<P>
233
<PRE>
234
Usage: runalg( "cluster",
235
               INPUT[Multiple Input - Band],
236
               NUMCLASS[Numerical Value],
237
               RESULTLAYER[output raster layer],
238
               RESULTTABLE[output table],
239
               );
240
</PRE>
241

    
242
<P>
243
Un ejemplo v&#225;lido es la siguiente l&#237;nea:
244

    
245
<P>
246
<PRE>
247
&gt; runalg("cluster, "lyr1, 1, lyr1, 2, lyr2, 2", 5, "#", "#")
248
</PRE>
249

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

    
253
<P>
254
</LI>
255
<LI>Table Field from XXX . Escribe el nombre del campo de una capa vectorial o una tabla. 
256
</LI>
257
<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>:
258

    
259
<P>
260
<PRE>
261
runalg("kernelfilter", mdt25.asc, "-1, -1, -1, -1, 9, -1, -1, -1, -1", "#")
262
</PRE>
263

    
264
<P>
265
</LI>
266
<LI>Point . Las dos coordenadas de un punto deben estar separadas por comas y encerradas entre comillas. Ejemplo: ``220345, 4453616'' 
267

    
268
<P>
269
</LI>
270
</UL>
271

    
272
<P>
273
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.
274

    
275
<P>
276
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.
277

    
278
<P>
279

    
280
<H1><A NAME="SECTION00750000000000000000">
281
Ajustar las caracter&#237;sticas de la capa raster de salida</A>
282
</H1>
283

    
284
<P>
285
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>.
286

    
287
<P>
288
<PRE>
289
&gt; autoextent("true"/"false)
290
</PRE>
291

    
292
<P>
293
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>.
294

    
295
<P>
296
<PRE>
297
Usage: extent(raster layer[string])
298
       extent(vector layer[string], cellsize[double])
299
       extent(x min[double], y min[double],
300
              x max[double], y max[double], 
301
              cell size[double])
302
Type "autoextent" to use automatic extent fitting when possible
303
</PRE>
304

    
305
<P>
306
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>).
307

    
308
<P>
309

    
310
<H1><A NAME="SECTION00760000000000000000">
311
Ejecutando modelos</A>
312
</H1>
313

    
314
<P>
315
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>;
316

    
317
<P>
318

    
319
<H1><A NAME="SECTION00770000000000000000">
320
Manejo de capas desde la consola</A>
321
</H1>
322

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

    
326
<P>
327

    
328
<UL>
329
<LI>Cerrar una capa. Utiliza el comando <TT>close(nombre_capa)</TT>
330
</LI>
331
<LI>Cambiar el valor de sin datos de una capa raster. Utiliza el comando <TT>setnodata(nombre_capa, nuevo_valor)</TT>
332
</LI>
333
<LI>Cambiar el nombre de una capa. Utiliza el comando <TT>rename(nombre_capa,nuevo_nombre_capa)</TT>
334
</LI>
335
</UL>
336

    
337
<P>
338
<BR><HR>
339
<ADDRESS>
340
volaya
341
2009-06-04
342
</ADDRESS>
343
</BODY>
344
</HTML>