Revision 1400 org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.impl/src/main/java/org/gvsig/raster/impl/grid/filter/enhancement/EnhancementStretchListManager.java

View differences:

EnhancementStretchListManager.java
114 114
	 */
115 115
	public void addEnhancedStretchFilter(DefaultLinearStretchParams leParams, Statistics stats, int[] renderBands, boolean removeEnds) throws FilterTypeException {
116 116
		try {
117
			if (!leParams.hasTailTrim()) { // En este caso siempre es necesario el mximo y
118
				// mnimo
117
			if (!leParams.hasTailTrim()) { // En este caso siempre es necesario el m?ximo y
118
				// m?nimo
119 119
				if (!stats.isCalculated())
120 120
					try {
121 121
						stats.calculate(RasterLibrary.statisticsScale);
......
471 471
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchInRed") &&
472 472
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
473 473
					leParams.red.stretchIn = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
474

  
475 474
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchInGreen") &&
476 475
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
477 476
					leParams.green.stretchIn = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
478

  
479 477
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchInBlue") &&
480 478
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
481 479
					leParams.blue.stretchIn = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
482

  
483 480
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchOutRed") &&
484 481
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof int[])
485 482
					leParams.red.stretchOut = ((int[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
486

  
487 483
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchOutGreen") &&
488 484
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof int[])
489 485
					leParams.green.stretchOut = ((int[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
490

  
491 486
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchOutBlue") &&
492 487
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof int[])
493 488
					leParams.blue.stretchOut = ((int[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
494 489

  
490
				
495 491
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimRedMin") &&
496 492
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
497 493
					leParams.red.tailTrimMin = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
498

  
499 494
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimRedMax") &&
500 495
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
501 496
					leParams.red.tailTrimMax = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
502

  
503 497
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimGreenMin") &&
504 498
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
505 499
					leParams.green.tailTrimMin = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
506

  
507 500
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimGreenMax") &&
508 501
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
509 502
					leParams.green.tailTrimMax = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
510

  
511 503
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimBlueMin") &&
512 504
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
513 505
					leParams.blue.tailTrimMin = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
514

  
515 506
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimBlueMax") &&
516 507
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
517 508
					leParams.blue.tailTrimMax = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
518 509

  
510
				
519 511
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchRedFunctionType") &&
520 512
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Integer)
521 513
						leParams.red.functionType = ((Integer) ((ParamImpl)params.getParam(i)).getDefaultValue()).intValue();
522

  
523 514
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchRedValueFunction") &&
524 515
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
525 516
						leParams.red.valueFunction = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
526

  
527 517
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchGreenFunctionType") &&
528 518
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Integer)
529 519
						leParams.green.functionType = ((Integer) ((ParamImpl)params.getParam(i)).getDefaultValue()).intValue();
530

  
531 520
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchGreenValueFunction") &&
532 521
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
533 522
						leParams.green.valueFunction = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
534

  
535 523
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchBlueFunctionType") &&
536 524
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Integer)
537 525
						leParams.blue.functionType = ((Integer) ((ParamImpl)params.getParam(i)).getDefaultValue()).intValue();
538

  
539 526
				if (((ParamImpl)params.getParam(i)).getId().equals("StretchBlueValueFunction") &&
540 527
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
541 528
						leParams.blue.valueFunction = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
529
				
530
				
531
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimRedValueMin") &&
532
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
533
						leParams.red.tailTrimValueMin = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
534
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimRedValueMax") &&
535
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
536
						leParams.red.tailTrimValueMax = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
537
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimGreenValueMin") &&
538
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
539
						leParams.green.tailTrimValueMin = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
540
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimGreenValueMax") &&
541
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
542
						leParams.green.tailTrimValueMax = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
543
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimBlueValueMin") &&
544
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
545
						leParams.blue.tailTrimValueMin = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
546
				if (((ParamImpl)params.getParam(i)).getId().equals("TailTrimBlueValueMax") &&
547
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
548
						leParams.blue.tailTrimValueMax = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
549
				
550
				
551
				if (((ParamImpl)params.getParam(i)).getId().equals("RedMaxValue") &&
552
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
553
						leParams.red.maxValue = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
554
				if (((ParamImpl)params.getParam(i)).getId().equals("RedMinValue") &&
555
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
556
						leParams.red.minValue = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
557
				if (((ParamImpl)params.getParam(i)).getId().equals("GreenMaxValue") &&
558
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
559
						leParams.green.maxValue = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
560
				if (((ParamImpl)params.getParam(i)).getId().equals("GreenMinValue") &&
561
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
562
						leParams.green.minValue = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
563
				if (((ParamImpl)params.getParam(i)).getId().equals("BlueMaxValue") &&
564
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
565
						leParams.blue.maxValue = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
566
				if (((ParamImpl)params.getParam(i)).getId().equals("BlueMinValue") &&
567
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof Double)
568
						leParams.blue.minValue = ((Double) ((ParamImpl)params.getParam(i)).getDefaultValue()).doubleValue();
569

  
570
				
571
				if (((ParamImpl)params.getParam(i)).getId().equals("RedOffset") &&
572
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
573
					leParams.red.offset = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
574
				if (((ParamImpl)params.getParam(i)).getId().equals("GreenOffset") &&
575
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
576
					leParams.green.offset = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
577
				if (((ParamImpl)params.getParam(i)).getId().equals("BlueOffset") &&
578
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
579
					leParams.blue.offset = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
580
				if (((ParamImpl)params.getParam(i)).getId().equals("RedScale") &&
581
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
582
					leParams.red.scale = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
583
				if (((ParamImpl)params.getParam(i)).getId().equals("GreenScale") &&
584
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
585
					leParams.green.scale = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
586
				if (((ParamImpl)params.getParam(i)).getId().equals("BlueScale") &&
587
						((ParamImpl)params.getParam(i)).getDefaultValue() instanceof double[])
588
					leParams.blue.scale = ((double[]) ((ParamImpl)params.getParam(i)).getDefaultValue());
542 589
			}
543 590

  
544 591
			addEnhancedStretchFilter(leParams, (Statistics) filterList.getEnvParam("IStatistics"), renderBands, removeEnds);

Also available in: Unified diff