Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
CityDoctor
CityDoctor2
Commits
6ebc2949
Commit
6ebc2949
authored
Jun 23, 2025
by
Riegel
Browse files
Feat: Implement selection via buffer in database
parent
47cc6a9f
Changes
1
Hide whitespace changes
Inline
Side-by-side
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/database/DatabaseHandler.java
View file @
6ebc2949
...
...
@@ -121,13 +121,22 @@ public class DatabaseHandler {
public
static
List
<?
extends
CityObject
>
getBufferIntersectingObjects
(
CityObject
co
,
Double
buffersize
)
{
ResultSet
rs
=
null
;
public
static
List
<
CityObject
>
getBufferIntersectingObjects
(
CityObject
co
,
Double
buffersize
)
{
List
<
CityObject
>
intersectingObjects
=
new
ArrayList
<>();
try
(
Connection
con
=
new
ConnectionWrapper
(
H2GISDBFactory
.
openSpatialDataBase
(
DB_NAME
)))
{
try
(
PreparedStatement
ps
=
con
.
prepareStatement
(
"SELECT gmlid, bbox, data, type FROM features AS tab1"
+
" WHERE ST_INTERSECTS(ST_BUFFER(tab1.geom,?), (SELECT GEOM FROM features WHERE gmlid = ?)) AND tab1.gmlid <> ?"
))
{
ps
.
setDouble
(
1
,
buffersize
);
ps
.
setString
(
2
,
co
.
getGmlId
().
toString
());
ps
.
setString
(
3
,
co
.
getGmlId
().
toString
());
ResultSet
rs
=
ps
.
executeQuery
();
intersectingObjects
.
addAll
(
retrieveCityObjects
(
rs
));
}
}
catch
(
SQLException
e
)
{
logger
.
error
(
"Connection to database failed while trying to get buffer intersecting objects!"
);
logger
.
debug
(
e
.
getMessage
());
}
return
Collections
.
emptyList
()
;
return
intersectingObjects
;
}
public
static
List
<
CityObject
>
getBBoxIntersectingObjects
(
CityObject
co
)
{
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment