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
ee31573f
Commit
ee31573f
authored
Apr 27, 2026
by
Luna Riegel
Browse files
Perf: Add intermediate clean up of Geometries
parent
3311849f
Changes
1
Hide whitespace changes
Inline
Side-by-side
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/mapper/citygml3/Citygml3FeatureMapper.java
View file @
ee31573f
...
...
@@ -318,6 +318,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
}
BuildingPart
part
=
new
BuildingPart
(
cdBuilding
);
mapAbstractBuilding
(
bpProp
.
getObject
(),
part
);
finishCityObjectConstruction
(
part
);
cdBuilding
.
addBuildingPart
(
part
);
}
finishFeatureConstruction
(
cdBuilding
);
...
...
@@ -408,6 +409,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
relief
.
getTin
().
getObject
().
accept
(
tinMapper
);
Geometry
geom
=
new
Geometry
(
GeometryType
.
MULTI_SURFACE
,
reliefLod
,
Orientation
.
OUTWARD
);
tinMapper
.
getPolygons
().
forEach
(
geom:
:
addPolygon
);
finishCityObjectConstruction
(
reliefObject
);
to
.
addGeometry
(
geom
);
}
...
...
@@ -483,6 +485,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
}
BridgeObjectPart
bPart
=
new
BridgeObjectPart
(
gmlPart
);
mapAbstractBridge
(
gmlPart
,
bPart
);
finishCityObjectConstruction
(
bPart
);
bo
.
addBridgePart
(
bPart
);
}
finishFeatureConstruction
(
bo
);
...
...
@@ -518,6 +521,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
BridgeConstructiveElement
cdEle
=
parseBridgeConstructiveElement
(
gmlBce
);
finishCityObjectConstruction
(
cdEle
);
elements
.
add
(
cdEle
);
}
return
elements
;
...
...
@@ -531,6 +535,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
Installation
inst
=
parseBridgeInstallation
(
gmlBce
);
finishCityObjectConstruction
(
inst
);
installations
.
add
(
inst
);
}
return
installations
;
...
...
@@ -544,6 +549,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
BridgeRoom
room
=
parseBridgeRoom
(
gmlRoom
);
finishCityObjectConstruction
(
room
);
rooms
.
add
(
room
);
}
return
rooms
;
...
...
@@ -557,6 +563,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
BridgeRoomFurniture
furn
=
parseBridgeFurniture
(
gmlFurn
);
finishCityObjectConstruction
(
furn
);
rooms
.
add
(
furn
);
}
return
rooms
;
...
...
@@ -629,9 +636,9 @@ public class Citygml3FeatureMapper extends ObjectWalker {
TunnelPart
cdTunnelPart
=
new
TunnelPart
();
cdTunnelPart
.
setParent
(
cdTunnel
);
mapAbstractTunnel
(
gmlTunnelpart
,
cdTunnelPart
);
finishCityObjectConstruction
(
cdTunnelPart
);
cdTunnel
.
addTunnelPart
(
cdTunnelPart
);
}
finishFeatureConstruction
(
cdTunnel
);
model
.
addTunnel
(
cdTunnel
);
...
...
@@ -667,6 +674,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
TunnelConstructiveElement
tc
=
parseTunnelConstructiveElement
(
gmlTc
);
finishCityObjectConstruction
(
tc
);
elements
.
add
(
tc
);
}
return
elements
;
...
...
@@ -680,6 +688,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
TunnelFurniture
tf
=
parseTunnelFurniture
(
gmlTf
);
finishCityObjectConstruction
(
tf
);
furniture
.
add
(
tf
);
}
return
furniture
;
...
...
@@ -693,6 +702,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
TunnelHollow
br
=
parseTunnelHollow
(
gmlTh
);
finishCityObjectConstruction
(
br
);
hollows
.
add
(
br
);
}
return
hollows
;
...
...
@@ -707,6 +717,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
Installation
ti
=
parseTunnelInstallation
(
gmlTi
);
finishCityObjectConstruction
(
ti
);
installations
.
add
(
ti
);
}
return
installations
;
...
...
@@ -889,12 +900,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
private
void
finishFeatureConstruction
(
CityObject
co
)
{
resolveAndClearReferences
(
co
);
co
.
accept
(
new
CheckableUtilsVisitor
()
{
@Override
public
void
check
(
CityObject
co
)
{
finishCityObjectConstruction
(
co
);
}
});
finishCityObjectConstruction
(
co
);
co
.
setBbox
(
BoundingBox
.
of
(
co
));
}
...
...
@@ -912,6 +918,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
if
(
tsp
.
isSetObject
())
{
TrafficSpaceObject
tso
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
TRAFFIC_SPACE
);
mapTrafficSpace
(
tsp
.
getObject
(),
tso
);
finishFeatureConstruction
(
tso
);
trsp
.
addTrafficSpace
(
tso
);
}
}
...
...
@@ -919,6 +926,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
if
(
atsp
.
isSetObject
())
{
TrafficSpaceObject
atso
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
AUXILIARY_TRAFFIC_SPACE
);
mapAuxiliaryTrafficSpace
(
atsp
.
getObject
(),
atso
);
finishFeatureConstruction
(
atso
);
trsp
.
addAuxTrafficSpace
(
atso
);
}
}
...
...
@@ -955,6 +963,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
TrafficArea
area
=
(
TrafficArea
)
boundary
.
getObject
();
TrafficAreaObject
tao
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
TRAFFIC_AREA
);
mapTrafficArea
(
area
,
tao
);
finishFeatureConstruction
(
tao
);
tso
.
addTrafficArea
(
tao
);
}
}
...
...
@@ -968,6 +977,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
AuxiliaryTrafficArea
area
=
(
AuxiliaryTrafficArea
)
boundary
.
getObject
();
TrafficAreaObject
tao
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
AUXILIARY_TRAFFIC_AREA
);
mapAuxiliaryTrafficArea
(
area
,
tao
);
finishFeatureConstruction
(
tao
);
tso
.
addTrafficArea
(
tao
);
}
}
...
...
@@ -1164,6 +1174,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
BuildingRoomFurniture
bf
=
parseBuildingFurniture
(
gmlBf
);
finishCityObjectConstruction
(
bf
);
furnitureList
.
add
(
bf
);
}
return
furnitureList
;
...
...
@@ -1241,6 +1252,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
}
else
{
cdBce
=
parseBuildingConstructiveElement
(
gmlBce
);
}
finishCityObjectConstruction
(
cdBce
);
abs
.
addConstructiveElement
(
cdBce
);
}
for
(
BuildingRoomProperty
brProp:
gmlObject
.
getBuildingRooms
())
{
...
...
@@ -1254,8 +1266,10 @@ public class Citygml3FeatureMapper extends ObjectWalker {
}
else
{
cdBr
=
parseBuildingRoom
(
gmlBR
);
}
finishCityObjectConstruction
(
cdBr
);
abs
.
addRoom
(
cdBr
);
}
finishCityObjectConstruction
(
abs
);
}
}
...
...
@@ -1268,6 +1282,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
}
de
.
hft
.
stuttgart
.
citydoctor2
.
datastructure
.
BuildingConstructiveElement
cdBce
=
parseBuildingConstructiveElement
(
gmlBCE
);
finishCityObjectConstruction
(
cdBce
);
elements
.
add
(
cdBce
);
}
return
elements
;
...
...
@@ -1290,6 +1305,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
BuildingRoom
br
=
parseBuildingRoom
(
gmlBr
);
finishCityObjectConstruction
(
br
);
rooms
.
add
(
br
);
}
return
rooms
;
...
...
@@ -1304,6 +1320,7 @@ public class Citygml3FeatureMapper extends ObjectWalker {
continue
;
}
Installation
bi
=
parseBuildingInstallation
(
gmlBi
);
finishCityObjectConstruction
(
bi
);
installations
.
add
(
bi
);
}
return
installations
;
...
...
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