Revision 26778 branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/layers/vectorial/InEnvelopeEvaluator.java
InEnvelopeEvaluator.java | ||
---|---|---|
1 | 1 |
package org.gvsig.fmap.mapcontext.layers.vectorial; |
2 | 2 |
|
3 |
import org.cresques.cts.ICoordTrans; |
|
4 | 3 |
import org.cresques.cts.IProjection; |
5 | 4 |
import org.gvsig.fmap.dal.feature.Feature; |
6 | 5 |
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor; |
... | ... | |
28 | 27 |
this.isDefault = featureType.getDefaultGeometryAttributeName().equals( |
29 | 28 |
geomName); |
30 | 29 |
this.envelope = envelope; |
31 |
this.srs = envelopeProjection.getAbrev(); |
|
30 |
// this.srs = envelopeProjection.getAbrev();
|
|
32 | 31 |
// this.projection=CRSFactory.getCRS(fad.getSRS()); |
33 | 32 |
// this.envelopeProjection=envelopeProjection; |
34 |
ICoordTrans ct = null; |
|
35 |
if (!this.srs.equals(fad.getSRS())) { //FIXME comparaci?n
|
|
36 |
ct = envelopeProjection.getCT(fad.getSRS()); |
|
37 |
} |
|
38 |
if (ct != null) { |
|
39 |
this.envelopeTrans = envelope.convert(ct); |
|
40 |
} else { |
|
33 |
// ICoordTrans ct = null;
|
|
34 |
// if (!this.srs.equals(fad.getSRS())) { // FIXME comparaci?n
|
|
35 |
// ct = envelopeProjection.getCT(fad.getSRS());
|
|
36 |
// }
|
|
37 |
// if (ct != null) {
|
|
38 |
// this.envelopeTrans = envelope.convert(ct);
|
|
39 |
// } else {
|
|
41 | 40 |
this.envelopeTrans = envelope; |
42 |
} |
|
43 |
this.geomName = geomName; |
|
41 |
// }
|
|
42 |
// this.geomName = geomName;
|
|
44 | 43 |
|
45 | 44 |
this.getFieldsInfo().addMatchFieldValue(geomName, envelopeTrans); |
46 | 45 |
|
... | ... | |
52 | 51 |
// return new Boolean(envelopeTrans.contains(feature |
53 | 52 |
// .getDefaultEnvelope()) |
54 | 53 |
// || envelopeTrans.intersects(feature.getDefaultEnvelope())); |
55 |
return new Boolean(envelopeTrans.intersects(feature |
|
56 |
.getDefaultEnvelope())); |
|
54 |
System.out.println("== Filter[" + envelopeTrans.getLowerCorner()[0] |
|
55 |
+ "," + envelopeTrans.getLowerCorner()[1] + "] [" |
|
56 |
+ envelopeTrans.getUpperCorner()[0] + "," |
|
57 |
+ envelopeTrans.getUpperCorner()[1] + "]"); |
|
57 | 58 |
|
59 |
Envelope featureEnvelope = feature.getDefaultEnvelope(); |
|
60 |
System.out.println("== Geom [" |
|
61 |
+ featureEnvelope.getLowerCorner()[0] |
|
62 |
+ "," + featureEnvelope.getLowerCorner()[1] + "] [" |
|
63 |
+ featureEnvelope.getUpperCorner()[0] + "," |
|
64 |
+ featureEnvelope.getUpperCorner()[1] + "]"); |
|
65 |
Boolean r = new Boolean(envelopeTrans.intersects(featureEnvelope)); |
|
66 |
System.out.println("==3 "+r); |
|
67 |
return r; |
|
68 |
|
|
58 | 69 |
} else { |
59 | 70 |
Geometry geom = (Geometry) data.getDataValue(geomName); |
60 | 71 |
// return new Boolean(envelopeTrans.contains(geom.getEnvelope()) |
Also available in: Unified diff