Revision 26778 branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/layers/vectorial/FLyrVect.java

View differences:

FLyrVect.java
371 371
		}
372 372
		boolean containsAll = false;
373 373
		Envelope viewPortEnvelope =viewPort.getAdjustedExtent();
374
		Envelope viewPortEnvelopeInMyProj = viewPortEnvelope;
375
		Envelope viewPortEnvelopeInMyProj2 = viewPortEnvelope;
376
		// FIXME
377
		if (this.getCoordTrans() != null) {
378
			ICoordTrans myCt = getCoordTrans().getPDest().getCT(
379
					getCoordTrans().getPOrig());
380
			viewPortEnvelopeInMyProj = viewPortEnvelope
381
					.convert(myCt);
382
			viewPortEnvelopeInMyProj2 = viewPortEnvelopeInMyProj
383
					.convert(getCoordTrans());
384

  
385

  
386
		}
387
		System.out.println("=XX viewPortEnvelope["
388
				+ viewPortEnvelope.getLowerCorner()[0]
389
				+ "," + viewPortEnvelope.getLowerCorner()[1] + "] ["
390
				+ viewPortEnvelope.getUpperCorner()[0] + ","
391
				+ viewPortEnvelope.getUpperCorner()[1] + "]");
392

  
393
		System.out.println("=XX viewPortEnvelopeInMyProj["
394
				+ viewPortEnvelopeInMyProj.getLowerCorner()[0] + ","
395
				+ viewPortEnvelopeInMyProj.getLowerCorner()[1] + "] ["
396
				+ viewPortEnvelopeInMyProj.getUpperCorner()[0] + ","
397
				+ viewPortEnvelopeInMyProj.getUpperCorner()[1] + "]");
398

  
399
		System.out.println("=XX viewPortEnvelopeInMyProj2["
400
				+ viewPortEnvelopeInMyProj2.getLowerCorner()[0] + ","
401
				+ viewPortEnvelopeInMyProj2.getLowerCorner()[1] + "] ["
402
				+ viewPortEnvelopeInMyProj2.getUpperCorner()[0] + ","
403
				+ viewPortEnvelopeInMyProj2.getUpperCorner()[1] + "]");
404

  
405

  
374 406
		Envelope myEnvelope = this.getFullEnvelope();
407

  
408
		System.out.println("=XX myEnvelope[" + myEnvelope.getLowerCorner()[0]
409
				+ "," + myEnvelope.getLowerCorner()[1] + "] ["
410
				+ myEnvelope.getUpperCorner()[0] + ","
411
				+ myEnvelope.getUpperCorner()[1] + "]");
412

  
413

  
414
		Envelope rAux = null;
415
		try {
416
			rAux = getFeatureStore().getEnvelope();
417
		} catch (DataException e1) {
418
			e1.printStackTrace();
419
		}
420

  
421
		if (rAux != null) {
422
		System.out.println("=XX DSEnv [" + rAux.getLowerCorner()[0] + ","
423
				+ rAux.getLowerCorner()[1] + "] [" + rAux.getUpperCorner()[0]
424
				+ "," + rAux.getUpperCorner()[1] + "]");
425
		}
426

  
375 427
		if (!viewPortEnvelope.contains(myEnvelope)){
376 428
			if (!viewPortEnvelope.intersects(myEnvelope)){
377 429
				return;
......
379 431
		} else {
380 432
			containsAll = true;
381 433
		}
434
		System.out.println("=XX containsAll=" + containsAll);
382 435
		double dpi = MapContext.getScreenDPI();
383 436
		DrawOperationContext doc=new DrawOperationContext();
384 437
		doc.setViewPort(viewPort);
......
426 479
				featureQuery.setAttributeNames(fieldNames);
427 480
				if (!containsAll) {
428 481
					InEnvelopeEvaluator iee = new InEnvelopeEvaluator(
429
							viewPortEnvelope,
430
							viewPort.getProjection(),
482
							viewPortEnvelopeInMyProj, getProjection(),
431 483
							featureStore.getDefaultFeatureType(),
432 484
							featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName());
433 485
					featureQuery.setFilter(iee);
......
468 520
				}
469 521
				// -- end visual FX stuff
470 522

  
523
				// FIXME geometry reproject temporaly patch
524
				// FeatureAttributeDescriptor attrGeom =
525
				// featureStore.getDefaultFeatureType().getAttributeDescriptor(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeIndex());
526
				// ICoordTrans myct = null;
527
				// if (!viewPort.getProjection().equals(attrGeom.getSRS())) {
528
				// myct = viewPort.getProjection().getCT(attrGeom.getSRS());
529
				// }
530

  
531

  
471 532
				// Iteration over each feature
472 533
				while (it.hasNext()) {
473 534
					if (cancel.isCanceled()) {
......
476 537
					Feature feat = (Feature) it.next();
477 538

  
478 539
					Geometry geom = feat.getDefaultGeometry();
540
					System.out.println("*" + geom.getBounds());
479 541

  
542
					if (this.getCoordTrans() != null) {
543
						geom = geom.cloneGeometry();
544
						geom.reProject(this.getCoordTrans());
545
						System.out.println("**" + geom.getBounds());
546
					}
547

  
480 548
					if (cacheFeatures) {
481 549
						if (cache.getMaxFeatures() >= cache.size()) {
482 550
							// already reprojected

Also available in: Unified diff