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
7d24a81b
Commit
7d24a81b
authored
Oct 04, 2024
by
Riegel
Browse files
Add support for BuildingUnit and Storey
parent
8dbd30ce
Pipeline
#10250
passed with stage
in 1 minute and 19 seconds
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/AbstractBuildingSubdivision.java
View file @
7d24a81b
...
...
@@ -31,7 +31,7 @@ public abstract class AbstractBuildingSubdivision extends CityObject{
private
final
List
<
BuildingRoom
>
buildingRooms
=
new
ArrayList
<>();
private
final
List
<
BuildingRoomFurniture
>
buildingRoomFurnitureList
=
new
ArrayList
<>();
pr
ivate
org
.
citygml4j
.
core
.
model
.
building
.
AbstractBuildingSubdivision
abs
;
pr
otected
org
.
citygml4j
.
core
.
model
.
building
.
AbstractBuildingSubdivision
abs
;
/**
* Getter for all boundary surfaces contained in this building.
...
...
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/BuildingUnit.java
0 → 100644
View file @
7d24a81b
package
de.hft.stuttgart.citydoctor2.datastructure
;
import
de.hft.stuttgart.citydoctor2.check.Check
;
import
de.hft.stuttgart.citydoctor2.check.CheckError
;
import
de.hft.stuttgart.citydoctor2.check.CheckId
;
import
de.hft.stuttgart.citydoctor2.parser.ParserConfiguration
;
import
de.hft.stuttgart.citydoctor2.utils.CopyHandler
;
import
de.hft.stuttgart.citydoctor2.utils.Copyable
;
import
org.citygml4j.core.util.geometry.GeometryFactory
;
import
java.io.Serial
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
BuildingUnit
extends
AbstractBuildingSubdivision
{
@Serial
private
static
final
long
serialVersionUID
=
-
2931788311665810322L
;
private
final
List
<
Storey
>
storeys
=
new
ArrayList
<>();
@Override
public
Copyable
createCopyInstance
()
{
return
new
BuildingUnit
();
}
@Override
public
void
unsetGmlGeometries
()
{
super
.
unsetGmlGeometries
();
for
(
Storey
storey
:
storeys
)
{
storey
.
unsetGmlGeometries
();
}
}
@Override
public
void
reCreateGeometries
(
GeometryFactory
factory
,
ParserConfiguration
config
)
{
super
.
reCreateGeometries
(
factory
,
config
);
for
(
Storey
storey
:
storeys
)
{
storey
.
reCreateGeometries
(
factory
,
config
);
}
}
@Override
public
void
accept
(
Check
c
)
{
super
.
accept
(
c
);
for
(
Storey
storey
:
storeys
)
{
storey
.
accept
(
c
);
}
}
@Override
public
void
collectContainedErrors
(
List
<
CheckError
>
errors
)
{
super
.
collectContainedErrors
(
errors
);
for
(
Storey
storey
:
storeys
)
{
storey
.
collectContainedErrors
(
errors
);
}
}
@Override
public
void
clearAllContainedCheckResults
()
{
super
.
clearAllContainedCheckResults
();
for
(
Storey
storey
:
storeys
)
{
storey
.
clearAllContainedCheckResults
();
}
}
@Override
public
boolean
containsError
(
CheckId
checkIdentifier
)
{
boolean
hasError
=
super
.
containsError
(
checkIdentifier
);
if
(
hasError
)
{
return
true
;
}
for
(
Storey
storey
:
storeys
)
{
if
(
storey
.
containsError
(
checkIdentifier
))
{
return
true
;
}
}
return
false
;
}
@Override
public
boolean
containsAnyError
()
{
boolean
hasError
=
super
.
containsAnyError
();
if
(
hasError
)
{
return
true
;
}
for
(
Storey
storey
:
storeys
)
{
if
(
storey
.
containsAnyError
())
{
return
true
;
}
}
return
false
;
}
@Override
public
void
prepareForChecking
()
{
super
.
prepareForChecking
();
for
(
Storey
storey
:
storeys
)
{
storey
.
prepareForChecking
();
}
}
@Override
public
void
clearMetaInformation
()
{
super
.
clearMetaInformation
();
for
(
Storey
storey
:
storeys
)
{
storey
.
clearMetaInformation
();
}
}
@Override
public
void
collectInstances
(
CopyHandler
handler
)
{
super
.
collectInstances
(
handler
);
for
(
Storey
storey
:
storeys
)
{
storey
.
collectInstances
(
handler
);
}
}
@Override
public
void
fillValues
(
Copyable
original
,
CopyHandler
handler
)
{
super
.
fillValues
(
original
,
handler
);
BuildingUnit
originalBu
=
(
BuildingUnit
)
original
;
for
(
Storey
storey
:
originalBu
.
storeys
)
{
storeys
.
add
(
handler
.
getCopyInstance
(
storey
));
}
this
.
abs
=
originalBu
.
abs
;
}
}
CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/datastructure/Storey.java
0 → 100644
View file @
7d24a81b
package
de.hft.stuttgart.citydoctor2.datastructure
;
import
de.hft.stuttgart.citydoctor2.check.Check
;
import
de.hft.stuttgart.citydoctor2.check.CheckError
;
import
de.hft.stuttgart.citydoctor2.check.CheckId
;
import
de.hft.stuttgart.citydoctor2.parser.ParserConfiguration
;
import
de.hft.stuttgart.citydoctor2.utils.CopyHandler
;
import
de.hft.stuttgart.citydoctor2.utils.Copyable
;
import
org.citygml4j.core.util.geometry.GeometryFactory
;
import
java.io.Serial
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
Storey
extends
AbstractBuildingSubdivision
{
@Serial
private
static
final
long
serialVersionUID
=
5162814691642668089L
;
private
final
List
<
BuildingUnit
>
buildingUnits
=
new
ArrayList
<>();
@Override
public
Copyable
createCopyInstance
()
{
return
new
Storey
();
}
@Override
public
void
unsetGmlGeometries
()
{
super
.
unsetGmlGeometries
();
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
unsetGmlGeometries
();
}
}
@Override
public
void
reCreateGeometries
(
GeometryFactory
factory
,
ParserConfiguration
config
)
{
super
.
reCreateGeometries
(
factory
,
config
);
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
reCreateGeometries
(
factory
,
config
);
}
}
@Override
public
void
accept
(
Check
c
)
{
super
.
accept
(
c
);
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
accept
(
c
);
}
}
@Override
public
void
collectContainedErrors
(
List
<
CheckError
>
errors
)
{
super
.
collectContainedErrors
(
errors
);
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
collectContainedErrors
(
errors
);
}
}
@Override
public
void
clearAllContainedCheckResults
()
{
super
.
clearAllContainedCheckResults
();
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
clearAllContainedCheckResults
();
}
}
@Override
public
boolean
containsError
(
CheckId
checkIdentifier
)
{
boolean
hasError
=
super
.
containsError
(
checkIdentifier
);
if
(
hasError
)
{
return
true
;
}
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
if
(
buildingUnit
.
containsError
(
checkIdentifier
))
{
return
true
;
}
}
return
false
;
}
@Override
public
boolean
containsAnyError
()
{
boolean
hasError
=
super
.
containsAnyError
();
if
(
hasError
)
{
return
true
;
}
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
if
(
buildingUnit
.
containsAnyError
())
{
return
true
;
}
}
return
false
;
}
@Override
public
void
prepareForChecking
()
{
super
.
prepareForChecking
();
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
prepareForChecking
();
}
}
@Override
public
void
clearMetaInformation
()
{
super
.
clearMetaInformation
();
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
clearMetaInformation
();
}
}
@Override
public
void
collectInstances
(
CopyHandler
handler
)
{
super
.
collectInstances
(
handler
);
for
(
BuildingUnit
buildingUnit
:
buildingUnits
)
{
buildingUnit
.
collectInstances
(
handler
);
}
}
@Override
public
void
fillValues
(
Copyable
original
,
CopyHandler
handler
)
{
super
.
fillValues
(
original
,
handler
);
Storey
originalSt
=
(
Storey
)
original
;
for
(
BuildingUnit
buildingUnit
:
originalSt
.
buildingUnits
)
{
buildingUnits
.
add
(
handler
.
getCopyInstance
(
buildingUnit
));
}
this
.
abs
=
originalSt
.
abs
;
}
}
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