Skip to content
GitLab
Explore
Projects
Groups
Snippets
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
CityDoctor
CityDoctor2
Commits
0b280dc5
Commit
0b280dc5
authored
3 months ago
by
Riegel
Browse files
Options
Download
Email Patches
Plain Diff
Add getTopLevelCityObject method to CityObjects
parent
3dba0e5e
master
dev
dev_gui_features
dev_gui_features_zip_loading
archive/dev_gui_features_zip_loading
2 merge requests
!28
Version 3.17.0 Release
,
!26
Add ZIP-archive support
Changes
29
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractBuilding.java
+2
-0
...stuttgart/citydoctor2/datastructure/AbstractBuilding.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractBuildingSubdivision.java
+15
-1
...itydoctor2/datastructure/AbstractBuildingSubdivision.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractFurniture.java
+5
-0
...tuttgart/citydoctor2/datastructure/AbstractFurniture.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractTunnel.java
+1
-0
...t/stuttgart/citydoctor2/datastructure/AbstractTunnel.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BoundarySurface.java
+5
-0
.../stuttgart/citydoctor2/datastructure/BoundarySurface.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BridgeConstructiveElement.java
+15
-1
.../citydoctor2/datastructure/BridgeConstructiveElement.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BridgeObject.java
+25
-2
...hft/stuttgart/citydoctor2/datastructure/BridgeObject.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BridgeRoom.java
+5
-0
...e/hft/stuttgart/citydoctor2/datastructure/BridgeRoom.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Building.java
+5
-0
.../de/hft/stuttgart/citydoctor2/datastructure/Building.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BuildingPart.java
+5
-0
...hft/stuttgart/citydoctor2/datastructure/BuildingPart.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BuildingRoom.java
+5
-0
...hft/stuttgart/citydoctor2/datastructure/BuildingRoom.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/CityFurniture.java
+5
-0
...ft/stuttgart/citydoctor2/datastructure/CityFurniture.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/CityObject.java
+5
-0
...e/hft/stuttgart/citydoctor2/datastructure/CityObject.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/GenericCityObject.java
+5
-0
...tuttgart/citydoctor2/datastructure/GenericCityObject.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Installation.java
+5
-0
...hft/stuttgart/citydoctor2/datastructure/Installation.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/LandObject.java
+5
-0
...e/hft/stuttgart/citydoctor2/datastructure/LandObject.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Opening.java
+5
-0
...a/de/hft/stuttgart/citydoctor2/datastructure/Opening.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/ReliefObject.java
+5
-0
...hft/stuttgart/citydoctor2/datastructure/ReliefObject.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/TinObject.java
+5
-0
...de/hft/stuttgart/citydoctor2/datastructure/TinObject.java
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/TransportationObject.java
+5
-0
...tgart/citydoctor2/datastructure/TransportationObject.java
with
133 additions
and
4 deletions
+133
-4
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractBuilding.java
+
2
-
0
View file @
0b280dc5
...
...
@@ -374,10 +374,12 @@ public abstract class AbstractBuilding extends CityObject {
public
void
addStorey
(
Storey
storey
)
{
buildingStoreys
.
add
(
storey
);
storey
.
setParent
(
this
);
}
public
void
addBuildingUnit
(
BuildingUnit
buildingUnit
)
{
buildingUnits
.
add
(
buildingUnit
);
buildingUnit
.
setParent
(
this
);
}
public
void
setGmlObject
(
org
.
citygml4j
.
core
.
model
.
building
.
AbstractBuilding
ab
)
{
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractBuildingSubdivision.java
+
15
-
1
View file @
0b280dc5
...
...
@@ -29,8 +29,9 @@ public abstract class AbstractBuildingSubdivision extends CityObject {
private
final
List
<
Installation
>
buildingInstallations
=
new
ArrayList
<>(
2
);
private
final
List
<
BoundarySurface
>
boundarySurfaceList
=
new
ArrayList
<>();
private
final
List
<
BuildingRoom
>
buildingRooms
=
new
ArrayList
<>();
private
final
List
<
BuildingRoomFurniture
>
buildingRoomFurnitureList
=
new
ArrayList
<>();
private
AbstractBuilding
parent
;
protected
org
.
citygml4j
.
core
.
model
.
building
.
AbstractBuildingSubdivision
abs
;
/**
...
...
@@ -52,6 +53,19 @@ public abstract class AbstractBuildingSubdivision extends CityObject {
return
FeatureType
.
BUILDING_SUBDIVISION
;
}
public
void
setParent
(
AbstractBuilding
parent
)
{
this
.
parent
=
parent
;
}
public
AbstractBuilding
getParent
()
{
return
parent
;
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
().
getTopLevelCityObject
();
}
@Override
public
void
unsetGmlGeometries
()
{
abs
.
setLod1Solid
(
null
);
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractFurniture.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -92,6 +92,11 @@ public abstract class AbstractFurniture extends CityObject {
return
af
;
}
@Override
public
CityObject
getTopLevelCityObject
(){
return
parent
;
}
public
void
addBoundarySurface
(
BoundarySurface
boundarySurface
)
{
boundarySurfaceList
.
add
(
boundarySurface
);
boundarySurface
.
setParent
(
this
);
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractTunnel.java
+
1
-
0
View file @
0b280dc5
...
...
@@ -350,6 +350,7 @@ public abstract class AbstractTunnel extends CityObject {
public
void
addTunnelConstructiveElement
(
TunnelConstructiveElement
te
)
{
tunnelConstructiveElements
.
add
(
te
);
te
.
setParent
(
this
);
}
public
void
addTunnelPart
(
TunnelPart
tunnelPart
)
{
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BoundarySurface.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -207,6 +207,11 @@ public class BoundarySurface extends CityObject {
}
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
().
getTopLevelCityObject
();
}
@Override
public
String
toString
()
{
return
"BoundarySurface [type="
+
type
+
", id="
+
getGmlId
()
+
"]"
;
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BridgeConstructiveElement.java
+
15
-
1
View file @
0b280dc5
...
...
@@ -52,12 +52,21 @@ public class BridgeConstructiveElement extends CityObject {
private
final
org
.
citygml4j
.
core
.
model
.
bridge
.
BridgeConstructiveElement
gmlBridgeElement
;
private
final
List
<
BoundarySurface
>
boundarySurfaceList
=
new
ArrayList
<>();
private
BridgeObject
parent
;
public
BridgeConstructiveElement
(
org
.
citygml4j
.
core
.
model
.
bridge
.
BridgeConstructiveElement
gmlObject
)
{
this
.
gmlBridgeElement
=
gmlObject
;
}
public
void
setParent
(
BridgeObject
parent
)
{
this
.
parent
=
parent
;
}
public
BridgeObject
getParent
()
{
return
parent
;
}
@Override
public
Copyable
createCopyInstance
()
{
return
new
BridgeConstructiveElement
(
gmlBridgeElement
);
...
...
@@ -244,6 +253,11 @@ public class BridgeConstructiveElement extends CityObject {
}
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
().
getTopLevelCityObject
();
}
@Override
public
FeatureType
getFeatureType
()
{
return
FeatureType
.
BRIDGE_CONSTRUCTION_ELEMENT
;
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BridgeObject.java
+
25
-
2
View file @
0b280dc5
...
...
@@ -56,10 +56,24 @@ public class BridgeObject extends CityObject {
private
final
List
<
BridgeRoom
>
bridgeRooms
=
new
ArrayList
<>(
2
);
private
AbstractBridge
ab
;
private
BridgeType
type
;
private
BridgeObject
parent
;
public
BridgeObject
(
BridgeType
type
,
AbstractBridge
ab
)
{
public
BridgeObject
(
AbstractBridge
ab
)
{
this
.
ab
=
ab
;
this
.
type
=
BridgeType
.
BRIDGE
;
this
.
parent
=
null
;
}
public
BridgeObject
(
AbstractBridge
ab
,
BridgeObject
parent
)
{
this
.
ab
=
ab
;
this
.
type
=
BridgeType
.
BRIDGE_PART
;
this
.
parent
=
parent
;
}
private
BridgeObject
(
BridgeType
type
,
AbstractBridge
ab
,
BridgeObject
parent
)
{
this
.
ab
=
ab
;
this
.
type
=
type
;
this
.
parent
=
parent
;
}
@Override
...
...
@@ -401,6 +415,14 @@ public class BridgeObject extends CityObject {
}
@Override
public
CityObject
getTopLevelCityObject
()
{
if
(
parent
!=
null
){
return
parent
.
getTopLevelCityObject
();
}
return
this
;
}
@Override
public
String
toString
()
{
return
"BridgeObject [type="
+
type
+
", id="
+
getGmlId
()
+
"]"
;
...
...
@@ -543,11 +565,12 @@ public class BridgeObject extends CityObject {
public
void
addConstructiveElement
(
BridgeConstructiveElement
element
)
{
getConstructiveElements
().
add
(
element
);
element
.
setParent
(
this
);
}
@Override
public
Copyable
createCopyInstance
()
{
return
new
BridgeObject
(
type
,
ab
);
return
new
BridgeObject
(
type
,
ab
,
parent
);
}
public
List
<
BridgeObject
>
getParts
()
{
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BridgeRoom.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -37,6 +37,11 @@ public class BridgeRoom extends AbstractRoom {
parent
=
handler
.
getCopyInstance
(
oRoom
.
getParent
());
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
();
}
@Override
public
void
collectInstances
(
CopyHandler
handler
)
{
super
.
collectInstances
(
handler
);
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Building.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -52,6 +52,11 @@ public class Building extends AbstractBuilding {
}
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
@Override
public
void
accept
(
Check
c
)
{
super
.
accept
(
c
);
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BuildingPart.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -42,6 +42,11 @@ public class BuildingPart extends AbstractBuilding {
return
parent
;
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
().
getTopLevelCityObject
();
}
@Override
public
FeatureType
getFeatureType
()
{
return
FeatureType
.
BUILDING_PART
;
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BuildingRoom.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -50,6 +50,11 @@ public class BuildingRoom extends AbstractRoom {
parent
=
handler
.
getCopyInstance
(
oRoom
.
getParent
());
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
().
getTopLevelCityObject
();
}
@Override
public
void
collectInstances
(
CopyHandler
handler
)
{
super
.
collectInstances
(
handler
);
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/CityFurniture.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -50,6 +50,11 @@ public class CityFurniture extends CityObject {
cgmlCityFurniture
.
getDeprecatedProperties
().
setLod4Geometry
(
null
);
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
@Override
public
void
reCreateGeometries
(
GeometryFactory
factory
,
ParserConfiguration
config
)
{
for
(
Geometry
geom
:
getGeometries
())
{
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/CityObject.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -102,6 +102,11 @@ public abstract class CityObject extends GmlElement {
return
highestLodGeometry
;
}
/**
* Returns the top-level CityObject (like Building or Tunnel) belonging to this object.
*/
public
abstract
CityObject
getTopLevelCityObject
();
public
void
addGenericAttribute
(
GenericAttribute
genericAttribute
)
{
genericAttributeList
.
add
(
genericAttribute
);
}
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/GenericCityObject.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -213,6 +213,11 @@ public class GenericCityObject extends CityObject {
}
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
public
void
setGmlObject
(
org
.
citygml4j
.
core
.
model
.
generics
.
GenericOccupiedSpace
gos
)
{
this
.
cgmlGos
=
gos
;
}
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Installation.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -195,6 +195,11 @@ public class Installation extends CityObject {
}
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
getParent
().
getTopLevelCityObject
();
}
private
void
removeGeometriesFromBridgeInstallation
(
BridgeInstallation
localBi
)
{
localBi
.
getDeprecatedProperties
().
setLod2Geometry
(
null
);
localBi
.
getDeprecatedProperties
().
setLod3Geometry
(
null
);
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/LandObject.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -105,6 +105,11 @@ public class LandObject extends CityObject {
lu
.
getDeprecatedProperties
().
setLod4MultiSurface
(
null
);
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
public
void
setGmlObject
(
LandUse
landUse
)
{
lu
=
landUse
;
}
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Opening.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -135,6 +135,11 @@ public class Opening extends CityObject {
ao
.
getDeprecatedProperties
().
setLod4MultiSurface
(
null
);
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
partOf
.
getTopLevelCityObject
();
}
@Override
public
String
toString
()
{
return
"Opening [type="
+
type
+
", id="
+
getGmlId
()
+
"]"
;
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/ReliefObject.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -146,6 +146,11 @@ public class ReliefObject extends CityObject {
// no geometries
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
@Override
public
FeatureType
getFeatureType
()
{
return
FeatureType
.
LAND
;
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/TinObject.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -91,6 +91,11 @@ public class TinObject extends CityObject {
gmlRelief
.
setTin
(
null
);
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
@Override
public
FeatureType
getFeatureType
()
{
return
FeatureType
.
LAND
;
...
...
This diff is collapsed.
Click to expand it.
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/TransportationObject.java
+
5
-
0
View file @
0b280dc5
...
...
@@ -267,6 +267,11 @@ public class TransportationObject extends CityObject {
}
}
@Override
public
CityObject
getTopLevelCityObject
()
{
return
this
;
}
public
void
setGmlObject
(
AbstractCityObject
tc
)
{
ato
=
tc
;
}
...
...
This diff is collapsed.
Click to expand it.
Prev
1
2
Next
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
Menu
Explore
Projects
Groups
Snippets