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];

http://dive4elements.wald.intevation.org