...@@ -79,7 +79,7 @@ public class GeometryTest { ...@@ -79,7 +79,7 @@ public class GeometryTest {
AbstractConstructionSurface abs = new WallSurface(); AbstractConstructionSurface abs = new WallSurface();
BoundarySurface bs = new BoundarySurface(SurfaceFeatureType.BUILDING, BoundarySurfaceType.WALL, abs); BoundarySurface bs = new BoundarySurface(SurfaceFeatureType.BUILDING, BoundarySurfaceType.WALL, abs);
var gmlBi = new org.citygml4j.core.model.building.BuildingInstallation(); var gmlBi = new org.citygml4j.core.model.building.BuildingInstallation();
BuildingInstallation bi = new BuildingInstallation(); Installation bi = new Installation();
bi.setGmlObject(gmlBi); bi.setGmlObject(gmlBi);
Geometry geom = new Geometry(GeometryType.MULTI_SURFACE, Lod.LOD2); Geometry geom = new Geometry(GeometryType.MULTI_SURFACE, Lod.LOD2);
...@@ -139,7 +139,7 @@ public class GeometryTest { ...@@ -139,7 +139,7 @@ public class GeometryTest {
AbstractConstructionSurface abs = new WallSurface(); AbstractConstructionSurface abs = new WallSurface();
BoundarySurface bs = new BoundarySurface(SurfaceFeatureType.BUILDING, BoundarySurfaceType.WALL, abs); BoundarySurface bs = new BoundarySurface(SurfaceFeatureType.BUILDING, BoundarySurfaceType.WALL, abs);
var gmlBi = new org.citygml4j.core.model.building.BuildingInstallation(); var gmlBi = new org.citygml4j.core.model.building.BuildingInstallation();
BuildingInstallation bi = new BuildingInstallation(); Installation bi = new Installation();
bi.setGmlObject(gmlBi); bi.setGmlObject(gmlBi);
Geometry geom = new Geometry(GeometryType.MULTI_SURFACE, Lod.LOD2); Geometry geom = new Geometry(GeometryType.MULTI_SURFACE, Lod.LOD2);
...@@ -176,7 +176,7 @@ public class GeometryTest { ...@@ -176,7 +176,7 @@ public class GeometryTest {
AbstractConstructionSurface abs = new WallSurface(); AbstractConstructionSurface abs = new WallSurface();
BoundarySurface bs = new BoundarySurface(SurfaceFeatureType.BUILDING, BoundarySurfaceType.WALL, abs); BoundarySurface bs = new BoundarySurface(SurfaceFeatureType.BUILDING, BoundarySurfaceType.WALL, abs);
var gmlBi = new org.citygml4j.core.model.building.BuildingInstallation(); var gmlBi = new org.citygml4j.core.model.building.BuildingInstallation();
BuildingInstallation bi = new BuildingInstallation(); Installation bi = new Installation();
bi.setGmlObject(gmlBi); bi.setGmlObject(gmlBi);
bi.addBoundarySurface(bs); bi.addBoundarySurface(bs);
Geometry geom2 = new Geometry(GeometryType.MULTI_SURFACE, Lod.LOD2); Geometry geom2 = new Geometry(GeometryType.MULTI_SURFACE, Lod.LOD2);
......
<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>de.hft.stuttgart</groupId> <groupId>de.hft.stuttgart</groupId>
<artifactId>CityDoctorParent</artifactId> <artifactId>CityDoctorParent</artifactId>
<version>3.13.0</version> <version>3.13.1</version>
</parent> </parent>
<artifactId>CityDoctorValidation</artifactId> <artifactId>CityDoctorValidation</artifactId>
<name>CityDoctorValidation</name> <name>CityDoctorValidation</name>
...@@ -61,18 +62,10 @@ ...@@ -61,18 +62,10 @@
<artifactId>citygml4j-quality-ade</artifactId> <artifactId>citygml4j-quality-ade</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>name.dmaus.schxslt</groupId>
<artifactId>schxslt</artifactId>
<version>1.9.5</version>
</dependency>
<dependency>
<groupId>net.sf.saxon</groupId> <groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId> <artifactId>Saxon-HE</artifactId>
</dependency> </dependency>
<!--
-->
</dependencies> </dependencies>
<build> <build>
<resources> <resources>
<resource> <resource>
...@@ -88,7 +81,6 @@ ...@@ -88,7 +81,6 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
<profiles> <profiles>
<profile> <profile>
<id>create-binaries</id> <id>create-binaries</id>
...@@ -155,9 +147,9 @@ ...@@ -155,9 +147,9 @@
<phase>install</phase> <phase>install</phase>
<configuration> <configuration>
<target name="unpack"> <target name="unpack">
<untar src="${project.build.directory}/jre/jre-lin/lin-runtime.tar.gz" dest="${project.build.directory}/jre/jre-lin/runtime" compression="gzip" /> <untar src="${project.build.directory}/jre/jre-lin/lin-runtime.tar.gz" dest="${project.build.directory}/jre/jre-lin/runtime" compression="gzip"></untar>
<unzip src="${project.build.directory}/jre/jre-win/win-runtime.zip" dest="${project.build.directory}/jre/jre-win/runtime" /> <unzip src="${project.build.directory}/jre/jre-win/win-runtime.zip" dest="${project.build.directory}/jre/jre-win/runtime"></unzip>
<unzip src="${project.build.directory}/jre/jre-mac/mac-runtime.zip" dest="${project.build.directory}/jre/jre-mac/runtime" /> <unzip src="${project.build.directory}/jre/jre-mac/mac-runtime.zip" dest="${project.build.directory}/jre/jre-mac/runtime"></unzip>
</target> </target>
</configuration> </configuration>
<goals> <goals>
......
...@@ -38,7 +38,7 @@ import de.hft.stuttgart.citydoctor2.datastructure.AbstractBuilding; ...@@ -38,7 +38,7 @@ import de.hft.stuttgart.citydoctor2.datastructure.AbstractBuilding;
import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface; import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface;
import de.hft.stuttgart.citydoctor2.datastructure.BridgeObject; import de.hft.stuttgart.citydoctor2.datastructure.BridgeObject;
import de.hft.stuttgart.citydoctor2.datastructure.Building; import de.hft.stuttgart.citydoctor2.datastructure.Building;
import de.hft.stuttgart.citydoctor2.datastructure.BuildingInstallation; import de.hft.stuttgart.citydoctor2.datastructure.Installation;
import de.hft.stuttgart.citydoctor2.datastructure.BuildingPart; import de.hft.stuttgart.citydoctor2.datastructure.BuildingPart;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject; import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.datastructure.Geometry; import de.hft.stuttgart.citydoctor2.datastructure.Geometry;
...@@ -146,7 +146,7 @@ public class CheckContainer extends Check { ...@@ -146,7 +146,7 @@ public class CheckContainer extends Check {
} }
@Override @Override
public void check(BuildingInstallation bi) { public void check(Installation bi) {
try { try {
check.check(bi); check.check(bi);
} catch (Exception e) { } catch (Exception e) {
......
...@@ -46,6 +46,7 @@ import de.hft.stuttgart.citydoctor2.datastructure.Building; ...@@ -46,6 +46,7 @@ import de.hft.stuttgart.citydoctor2.datastructure.Building;
import de.hft.stuttgart.citydoctor2.datastructure.BuildingPart; import de.hft.stuttgart.citydoctor2.datastructure.BuildingPart;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject; import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.datastructure.Geometry; import de.hft.stuttgart.citydoctor2.datastructure.Geometry;
import de.hft.stuttgart.citydoctor2.datastructure.Installation;
import de.hft.stuttgart.citydoctor2.datastructure.LandObject; import de.hft.stuttgart.citydoctor2.datastructure.LandObject;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.datastructure.Opening; import de.hft.stuttgart.citydoctor2.datastructure.Opening;
...@@ -294,6 +295,17 @@ public class PdfStreamReporter implements StreamReporter { ...@@ -294,6 +295,17 @@ public class PdfStreamReporter implements StreamReporter {
for (BoundarySurface bs : b.getBoundarySurfaces()) { for (BoundarySurface bs : b.getBoundarySurfaces()) {
writeCheckResultForBoundarySurface(bs, bSection); writeCheckResultForBoundarySurface(bs, bSection);
} }
for (Installation bi : b.getBuildingInstallations()) {
writeCheckResultForInstallation(bi, bSection);
}
}
private void writeCheckResultForInstallation(Installation bi, Section root) {
Map<CheckId, CheckResult> results = bi.getAllCheckResults();
writeCheckResults(results.values(), root);
for (BoundarySurface bs : bi.getBoundarySurfaces()) {
writeCheckResultForBoundarySurface(bs, root);
}
} }
private void writeCheckResultForTransportationObject(TransportationObject to, Section root) { private void writeCheckResultForTransportationObject(TransportationObject to, Section root) {
...@@ -380,20 +392,22 @@ public class PdfStreamReporter implements StreamReporter { ...@@ -380,20 +392,22 @@ public class PdfStreamReporter implements StreamReporter {
@Override @Override
public void finishReport() throws CheckReportWriteException { public void finishReport() throws CheckReportWriteException {
for (Section s : buildings.getSubSections()) { if (buildings != null) {
if (!s.hasErrors()) { for (Section s : buildings.getSubSections()) {
numOkBuildings++; if (!s.hasErrors()) {
// building has no errors, no table numOkBuildings++;
continue; // building has no errors, no table
} continue;
numErrorBuildings++; }
Table t = new Table(2); numErrorBuildings++;
t.setTableColumnWidth(75, 25); Table t = new Table(2);
t.setTitle("Error", "Count"); t.setTableColumnWidth(75, 25);
for (Entry<String, AtomicInteger> e : s.getStats().getErrorCounts().entrySet()) { t.setTitle("Error", "Count");
t.addRow(e.getKey(), e.getValue().toString()); for (Entry<String, AtomicInteger> e : s.getStats().getErrorCounts().entrySet()) {
t.addRow(e.getKey(), e.getValue().toString());
}
s.addTable(1, t);
} }
s.addTable(1, t);
} }
int numBuildings = numErrorBuildings + numOkBuildings; int numBuildings = numErrorBuildings + numOkBuildings;
if (numBuildings > 0) { if (numBuildings > 0) {
......
<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>de.hft.stuttgart</groupId> <groupId>de.hft.stuttgart</groupId>
<artifactId>CityDoctorParent</artifactId> <artifactId>CityDoctorParent</artifactId>
<version>3.13.0</version> <version>3.13.1</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<name>CityDoctorParent</name> <name>CityDoctorParent</name>
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>17</maven.compiler.source> <maven.compiler.source>17</maven.compiler.source>
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
<revision>${project.version}</revision> <revision>${project.version}</revision>
<nonMavenLibsPath>${project.baseUri}../non-maven-libs</nonMavenLibsPath> <nonMavenLibsPath>${project.baseUri}../non-maven-libs</nonMavenLibsPath>
</properties> </properties>
<repositories> <repositories>
<repository> <repository>
<id>non-maven-libs</id> <id>non-maven-libs</id>
...@@ -25,7 +24,6 @@ ...@@ -25,7 +24,6 @@
<url>https://oss.sonatype.org/content/repositories/snapshots/</url> <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository> </repository>
</repositories> </repositories>
<build> <build>
<pluginManagement> <pluginManagement>
<plugins> <plugins>
...@@ -40,7 +38,6 @@ ...@@ -40,7 +38,6 @@
</plugins> </plugins>
</pluginManagement> </pluginManagement>
</build> </build>
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
<dependency> <dependency>
...@@ -53,7 +50,6 @@ ...@@ -53,7 +50,6 @@
<artifactId>javafx-fxml</artifactId> <artifactId>javafx-fxml</artifactId>
<version>17.0.2</version> <version>17.0.2</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-swing -->
<dependency> <dependency>
<groupId>org.openjfx</groupId> <groupId>org.openjfx</groupId>
<artifactId>javafx-swing</artifactId> <artifactId>javafx-swing</artifactId>
...@@ -94,13 +90,11 @@ ...@@ -94,13 +90,11 @@
<artifactId>CityDoctorHealer</artifactId> <artifactId>CityDoctorHealer</artifactId>
<version>${revision}</version> <version>${revision}</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/net.sf.saxon/Saxon-HE -->
<dependency> <dependency>
<groupId>net.sf.saxon</groupId> <groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId> <artifactId>Saxon-HE</artifactId>
<version>12.2</version> <version>12.2</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
<dependency> <dependency>
<groupId>org.hibernate</groupId> <groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId> <artifactId>hibernate-core</artifactId>
...@@ -121,38 +115,32 @@ ...@@ -121,38 +115,32 @@
<artifactId>citygml4j-quality-ade</artifactId> <artifactId>citygml4j-quality-ade</artifactId>
<version>3.2.0</version> <version>3.2.0</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.apache.xmlgraphics/fop -->
<dependency> <dependency>
<groupId>org.apache.xmlgraphics</groupId> <groupId>org.apache.xmlgraphics</groupId>
<artifactId>fop</artifactId> <artifactId>fop</artifactId>
<version>2.7</version> <version>2.7</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.jdom/jdom2 -->
<dependency> <dependency>
<groupId>org.jdom</groupId> <groupId>org.jdom</groupId>
<artifactId>jdom2</artifactId> <artifactId>jdom2</artifactId>
<version>2.0.6.1</version> <version>2.0.6.1</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>
<artifactId>junit</artifactId> <artifactId>junit</artifactId>
<version>4.13.2</version> <version>4.13.2</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.jogamp.gluegen/gluegen-rt-main -->
<dependency> <dependency>
<groupId>org.jogamp.gluegen</groupId> <groupId>org.jogamp.gluegen</groupId>
<artifactId>gluegen-rt-main</artifactId> <artifactId>gluegen-rt-main</artifactId>
<version>2.3.2</version> <version>2.3.2</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/gov.nist.math/jama -->
<dependency> <dependency>
<groupId>gov.nist.math</groupId> <groupId>gov.nist.math</groupId>
<artifactId>jama</artifactId> <artifactId>jama</artifactId>
<version>1.0.3</version> <version>1.0.3</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.jogamp.jogl/jogl-all-main -->
<dependency> <dependency>
<groupId>org.jogamp.jogl</groupId> <groupId>org.jogamp.jogl</groupId>
<artifactId>jogl-all-main</artifactId> <artifactId>jogl-all-main</artifactId>
...@@ -163,7 +151,6 @@ ...@@ -163,7 +151,6 @@
<artifactId>log4j-api</artifactId> <artifactId>log4j-api</artifactId>
<version>${log4j.version}</version> <version>${log4j.version}</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
<dependency> <dependency>
<groupId>org.apache.logging.log4j</groupId> <groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId> <artifactId>log4j-core</artifactId>
...@@ -174,7 +161,6 @@ ...@@ -174,7 +161,6 @@
<artifactId>snakeyaml</artifactId> <artifactId>snakeyaml</artifactId>
<version>1.30</version> <version>1.30</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j18-impl -->
<dependency> <dependency>
<groupId>org.apache.logging.log4j</groupId> <groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j18-impl</artifactId> <artifactId>log4j-slf4j18-impl</artifactId>
......