Revision 2064 trunk/extensions/extWCS/src/com/iver/cit/gvsig/fmap/layers/FLyrWCS.java

View differences:

FLyrWCS.java
161 161

  
162 162
	/**
163 163
	 * Recupera el nom de la capa mostrada al TOC. El text per al nom no ?s el
164
	 * nom de la covertura sin? el texte que apareix al camp de text del wizard,
164
	 * nom de la covertura sin? el text que apareix al camp de text del wizard,
165 165
	 * que es correspon amb la "label" que el servidor especifica per a la
166 166
	 * covertura, i pot ser modificat per l'usuari al wizard per a gastar el que
167 167
	 * dessitge.
......
180 180
	}
181 181

  
182 182
	/**
183
	 * @return
183
	 * Con getParamsPanel tenemos acceso a juego de pesta?as de configuraci?n
184
	 * de la cobertura. Si este panel todav?a no existe (como puede ser cuando
185
	 * recuperamos un proyecto guardado) ?ste se crea autom?ticamente conectando
186
	 * al servidor, recuperando los datos necesarios, rellenando el contenido y
187
	 * dejando seleccionados los valores que estaban seleccionados cuando se
188
	 * guard? el proyecto.
189
	 * 
190
	 * Como para reconstruirse requiere una conexi?n con el servidor esto causa
191
	 * un retardo en la aparici?n en el toc y un error de nullPointer si no
192
	 * hay conexi?n hasta el servidor.
193
	 * 
194
	 * @return WCSParamsPanel
184 195
	 */
185 196
	public WCSParamsPanel getParamsPanel() {
186 197
		if (toc == null) {
......
241 252
		return toc;
242 253
	}
243 254
	
255
	/**
256
	 * Obtiene el nombre de la cobertura
257
	 * @return String
258
	 */
244 259
	public String getCoverageName() {
245 260
		return wcs.getCoverageName();
246 261
	}
247 262
	
263
	/**
264
	 * Obtiene el formato en que la cobertura est? codificado
265
	 * @return String
266
	 */
248 267
	public String getFormat() {
249 268
		return wcs.getFormat();
250 269
	}
251 270
	
271
	/**
272
	 * Obtiene la direcci?n URL del servidor WCS
273
	 * 
274
	 * @return String
275
	 */
252 276
	public String getHost() {
253 277
		return wcs.getHost();
254 278
	}
255 279
	
280
	/**
281
	 * Obtiene el valor del par?metro
282
	 * @return String
283
	 */
256 284
	public String getParameter() {
257 285
		return wcs.getParameter();
258 286
	}
259 287
	
288
	/**
289
	 * Obtiene el SRS dela cobertura
290
	 * @return String
291
	 */
260 292
	public String getSRS() {
261 293
		return wcs.getSRS();
262 294
	}
263 295
	
296
	/**
297
	 * Obtiene el valor para TIME en la consulta WCS
298
	 * @return String
299
	 */
264 300
	public String getTime() {
265 301
		return wcs.getTime();
266 302
	}
267 303
	
304
	/**
305
	 * Establece el formato en que se pide la cobertura WCS
306
	 * @param format
307
	 */
268 308
	public void setFormat(String format) {
269 309
		wcs.setFormat(format);
270 310
	}
271 311
	
312
	/**
313
	 * Establece la direcci?n URL del servidor WCS
314
	 * @param host
315
	 */
272 316
	public void setHost(String host) {
273 317
		if (wcs == null) {
274 318
			wcs = new FMapWCSAdaptor();
......
276 320
		}
277 321
		wcs.setHost(host);
278 322
	}
323
	
324
	/**
325
	 * Establece el nombre y el valor (lista de valores separados por comas)
326
	 * del par?metro de la consulta WCS
327
	 * @param parameter
328
	 */
279 329
	public void setParameter(String parameter) {
280 330
		wcs.setParameter(parameter);
281 331
	}
332
	
333
	/**
334
	 * Establece el SRS de la consulta WCS
335
	 * @param srs
336
	 */
282 337
	public void setSRS(String srs) {
283 338
		wcs.setSRS(srs);
284 339
	}
340
	
341
	/**
342
	 * Establece el par?metro TIME de la consulta WCS
343
	 * @param time
344
	 */
285 345
	public void setTime(String time) {
286 346
		/*if (time.matches("TIME=*"))
287 347
			wcs.setTime(time.split("=")[1]);
288 348
		else*/ wcs.setTime(time);
289 349
	}
350
	
351
	/**
352
	 * Establece el par?metro COVERAGE de la consulta WCS
353
	 * @param coverageName
354
	 */
290 355
	public void setCoverageName(String coverageName) {
291 356
		wcs.setCoverageName(coverageName);
292 357
	}
293 358
	
359
	/**
360
	 * Obtiene la resoluci?n m?xima soportada por la cobertura. La petici?n
361
	 * de una resoluci?n superior a la soportada no provoca ning?n error, aunque
362
	 * la informaci?n obtenida s?lo es una mera interpolaci?n de informaci?n. 
363
	 * 
364
	 * A cambio de obtener un archivo mayor y sin informaci?n adicional, podemos
365
	 * f?cilmente acoplarlo a la vista.
366
	 * 
367
	 * @return double
368
	 */
294 369
	public double getMaxResolution(){
295 370
		return wcs.getMaxResolution();
296 371
	}
297 372
	
373
	/**
374
	 * Establece la resoluci?n M?XIMA que soporta la cobertura.
375
	 * 
376
	 * La resoluci?n m?xima viene fijada por el servidor dentro documento
377
	 * DescribeCoverage en la secci?n SpatialDomain.
378
	 * 
379
	 * Use este m?todo ?nicamente para cargar el valor para la resoluci?n m?xima
380
	 * desde all? o desde un proyecto guardado en anterioridad, puesto que un
381
	 * valor incorrecto reportar? (conllevar?) errores de c?lculo cuando se haga
382
	 * un "zoom a la resoluci?n del r?ster".
383
	 * 
384
	 * @param res
385
	 */
298 386
	public void setMaxResolution(double res){
299 387
		wcs.setMaxResolution(res);
300 388
	}
301 389
	
302 390
	/**
303
	*Obtiene el adaptor
391
	* Obtiene el adaptor
304 392
	*/
305 393
	public FMapWCSAdaptor getWCSAdaptor(){
306 394
		return wcs;
307 395
	}
308 396
	
397
	/**
398
	 * Establece el adaptador.
399
	 * @deprecated
400
	 * @param wcs
401
	 */
309 402
	public void setWCSAdaptor(FMapWCSAdaptor wcs){
310 403
		this.wcs = wcs;
311 404
	}
312 405
	
313
	public Rectangle2D getBbox() {
406
	/**
407
	 * Obtiene la Bounding Box sobre la que se est? operando
408
	 * @return Rectangle2D
409
	 */
410
	private Rectangle2D getBbox() {
314 411
		return wcs.getBbox();
315 412
	}
316 413
	
......
318 415
	 * obtiene la resoluci?n actual para la cobertura de la vista
319 416
	 * @return
320 417
	 */
321
	public double getRes() {
418
	private double getRes() {
322 419
		return wcs.getRes();
323 420
	}
324 421
	
325 422
	/**
326
	 * Establece la resoluci?n actual para la cobertura de la vista
423
	 * Establece la resoluci?n actual para la cobertura de la vista.
424
	 * Este valor es calculado autom?ticamente por gvSIG. ?ste m?todo deber?a
425
	 * ser usado ?nicamente para recuperar este valor de un proyecto
426
	 * anteriormente guardado. 
327 427
	 * @param res
328 428
	 */
329
	public void setRes(double res) {
429
	private void setRes(double res) {
330 430
		wcs.setRes(res);
331 431
	}
332 432
	
433
	/**
434
	 * Establece el ?rea de la cobertura a pedir.
435
	 * Este valor es calculado autom?ticamente por gvSIG. ?ste m?todo deber?a
436
	 * ser usado ?nicamente para recuperar el valor de un proyecto anteriormente
437
	 * guardado.
438
	 * 
439
	 * @param rect
440
	 */
333 441
	public void setBBox(Rectangle2D rect) {
334 442
		wcs.setBBox(rect);
335 443
	}
444
	/**
445
	 * Inicializa una cobertura a partir de una URL GetCoverage completa
446
	 * TODO Por completar y probar
447
	 * @param queryString
448
	 */
449
	public void initFromQueryString(String queryString){
336 450

  
337
	/**
338
	 * Usada para hacer el Zoom a la resoluci?n del raster.
339
	 * Fuerza que se realice una consulta para la resoluci?n m?xima.
340
	 * 
341
	 * Se usa en WCSZoomToPixel.java
342
	 * 
343
	 * @param bbox
344
	 *
345
	public void doZoomToPixel(Rectangle2D bbox) {
346
		wcs.doZoomToPixel(bbox);
451
		String host = queryString.substring(0, queryString.indexOf('?'));
452
		String[] params = queryString.substring(queryString.indexOf('?')+1, queryString.length()).split("=");
453
		setHost(host);
454
		for (int i = 0; i < params.length; i++) {
455
			String[] par_nombreValor = params[i].split("=");
456
			String nombre = par_nombreValor[0].toUpperCase();
457
			String valor = par_nombreValor[1];
458
			if (nombre.equals("COVERAGE"))			setCoverageName(valor);
459
			else if (nombre.equals("TIME"))			setTime(valor);
460
			else if (nombre.equals("FORMAT"))		setFormat(valor);
461
			else if (nombre.equals("CRS"))			setSRS(valor);
462
			else if (nombre.equals("EXCEPTIONS"))	continue;
463
			else if (nombre.equals("RESX"))			continue;
464
			else if (nombre.equals("RESY"))			continue;
465
			else if (nombre.equals("RESZ"))			continue;
466
			else if (nombre.equals("WIDTH"))		continue;
467
			else if (nombre.equals("HEIGHT"))		continue;
468
			else if (nombre.equals("DEPTH"))		continue;
469
			else if (nombre.equals("BBOX"))			continue;
470
			else if (nombre.equals("RESPONSE_CRS"))	continue;
471
			else									setParameter(nombre+"="+valor);
472
		}
347 473
	}
348
	*/
349 474
}

Also available in: Unified diff