Mercurial > dive4elements > gnv-client
comparison geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java @ 879:9bcc423d8d76
Added Support for SpatialQueries using LineString as Geometry of Interest.
geo-backend/trunk@790 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Tue, 16 Mar 2010 14:07:18 +0000 |
parents | 825781a39c70 |
children | 12f88239fb33 |
comparison
equal
deleted
inserted
replaced
878:203f95af5b2c | 879:9bcc423d8d76 |
---|---|
1 package de.intevation.gnv.geobackend.sde.datasources; | 1 package de.intevation.gnv.geobackend.sde.datasources; |
2 | |
3 import java.sql.Connection; | |
4 import java.sql.ResultSet; | |
5 import java.sql.SQLException; | |
6 import java.sql.SQLWarning; | |
7 import java.sql.Statement; | |
8 | |
9 import org.apache.log4j.Logger; | |
2 | 10 |
3 import com.esri.sde.sdk.client.SDEPoint; | 11 import com.esri.sde.sdk.client.SDEPoint; |
4 import com.esri.sde.sdk.client.SeColumnDefinition; | 12 import com.esri.sde.sdk.client.SeColumnDefinition; |
5 import com.esri.sde.sdk.client.SeConnection; | 13 import com.esri.sde.sdk.client.SeConnection; |
6 import com.esri.sde.sdk.client.SeException; | 14 import com.esri.sde.sdk.client.SeException; |
16 import com.esri.sde.sdk.client.SeRasterTile; | 24 import com.esri.sde.sdk.client.SeRasterTile; |
17 import com.esri.sde.sdk.client.SeRow; | 25 import com.esri.sde.sdk.client.SeRow; |
18 import com.esri.sde.sdk.client.SeShape; | 26 import com.esri.sde.sdk.client.SeShape; |
19 import com.esri.sde.sdk.client.SeShapeFilter; | 27 import com.esri.sde.sdk.client.SeShapeFilter; |
20 import com.esri.sde.sdk.client.SeSqlConstruct; | 28 import com.esri.sde.sdk.client.SeSqlConstruct; |
21 | |
22 import com.vividsolutions.jts.geom.Geometry; | 29 import com.vividsolutions.jts.geom.Geometry; |
30 import com.vividsolutions.jts.geom.LineString; | |
23 import com.vividsolutions.jts.geom.Point; | 31 import com.vividsolutions.jts.geom.Point; |
24 import com.vividsolutions.jts.geom.Polygon; | 32 import com.vividsolutions.jts.geom.Polygon; |
25 | |
26 import com.vividsolutions.jts.io.WKTReader; | 33 import com.vividsolutions.jts.io.WKTReader; |
27 | 34 |
28 import de.intevation.gnv.geobackend.util.RedundancyRemover; | 35 import de.intevation.gnv.geobackend.util.RedundancyRemover; |
29 | |
30 import java.sql.Connection; | |
31 import java.sql.ResultSet; | |
32 import java.sql.SQLException; | |
33 import java.sql.SQLWarning; | |
34 import java.sql.Statement; | |
35 | |
36 import org.apache.log4j.Logger; | |
37 | 36 |
38 /** | 37 /** |
39 * @author Tim Englich (tim.englich@intevation.de) | 38 * @author Tim Englich (tim.englich@intevation.de) |
40 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) | 39 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) |
41 */ | 40 */ |
232 if (g instanceof Polygon){ | 231 if (g instanceof Polygon){ |
233 shape.generatePolygon(lPoints.length, 1, null, lPoints); | 232 shape.generatePolygon(lPoints.length, 1, null, lPoints); |
234 }else if (g instanceof Point){ | 233 }else if (g instanceof Point){ |
235 shape.generatePoint(1, lPoints); | 234 shape.generatePoint(1, lPoints); |
236 searchMode = SeFilter.METHOD_PC; | 235 searchMode = SeFilter.METHOD_PC; |
236 }else if (g instanceof LineString){ | |
237 shape.generateLine(lPoints.length, 1, null, lPoints); | |
238 searchMode = SeFilter.METHOD_LCROSS; | |
237 } | 239 } |
238 | 240 |
239 SeShapeFilter filter = new SeShapeFilter(pLayername[0], | 241 SeShapeFilter filter = new SeShapeFilter(pLayername[0], |
240 pSpatialColumnName, shape,searchMode); | 242 pSpatialColumnName, shape,searchMode); |
241 filters = new SeShapeFilter[1]; | 243 filters = new SeShapeFilter[1]; |