Commit 2452eacc authored by Matthias Betz's avatar Matthias Betz
Browse files

prepare for more languages

parent a68cdc6b
Pipeline #7621 passed with stages
in 9 seconds
# CityDoctor2
**Entwicklung eines Systems zur automatisierten Reparatur virtueller Stadtmodelle**
CityDoctor2 ist eine Qualitätsprüfungssoftware für 3D Stadtmodelle im CityGML format. CityDoctor kann CityGML 1/2 Dokumente einlesen und seit Version 3.12 kann auch eingeschränkt CityGML 3 gelesen werden. Alle Prüfergebnisse können in xml oder pdf Form ausgegeben werden. Zusätzlich implementiert CityDoctor die [QualityADE](https://transfer.hft-stuttgart.de/gitlab/citydoctor/qualityade) um Prüfergebnisse direkt in CityGML zu speichern.
![examplePicture](img/checked.png)
# Lizenzen / Versionen
### CityDoctorValidation
Der Validierungsteil von CityDoctor ist frei verfügbar und [OpenSource](https://transfer.hft-stuttgart.de/gitlab/citydoctor/citydoctor2)
### CityDoctorGUI
Die grafische Oberfläche ist frei aber nicht OpenSource (siehe [Installation](requiredSoftware.md))
### CityDoctorHealer
Der Teil zuständig für die Reparatur ist nur in Absprache mit uns zu erhalten.
Mail an:
![mail](img/mail.png)
# Projekt
**Projektlaufzeit:** 01.11.2018 - 31.12.2021
## Partner
**Projektverantwortliche:**
Prof. Dr. Margitta Pries
**Verbundpartner:**
Prof. Dr.-Ing. Volker Coors
**Kooperationspartner:**
[3DIS GmbH](https://www.3dis.de/)
[3dpartzz GmbH](https://3dpartzz.com/)
[con terra GmbH](https://conterra.de/)
[Geoplex GIS GmbH](https://www.geoplex.de/)
Mark Wewetzer
[M.O.S.S. Computer Grafik Systeme GmbH](https://www.moss.de/)
[Steinbeis - Transferzentrum](https://www.steinbeis.de/de.html)
[Virtual City Systems](https://www.virtualcitysystems.de/)
**Assoziative Partner:**
[Landesamt für Geoinformation und Landentwicklung Baden-Württemberg](https://www.lgl-bw.de/)
**Mittelgeber:**
[Bundesministerium für Bildung und Forschung](https://www.bmbf.de/)
**Projektträger:**
[VDI Technologiezentrum](https://www.vditz.de/)
![partner](img/partner.png)
# Benötigte Software # Benötigte Software
## Java ## Versionen ab 3.13.0
Vor der CityDoctor Version 3.12.x wird Java 8 entweder als JDK oder als JRE benötigt. Ab der Version 3.12.x wird Java 17 benötigt. Ab Version 3.13.0 wurde ein Repository auf dem Transferportal der Hochschule erstellt, das fortan als Ablageort für fertige Releases verwendet wird:
!!! warning [https://transfer.hft-stuttgart.de/gitlab/citydoctor/citydoctorreleases](https://transfer.hft-stuttgart.de/gitlab/citydoctor/citydoctorreleases)
Es wichtig, dass die installierte Java Version die JavaFX Bibliotheken mit einschließt. Diese werden für die grafische Oberfläche benötigt.
[Die Liberica JRE oder JDK](https://bell-sw.com/libericajdk/) hat sich für einen Einsatz mit CityDoctor bewährt. Die Versionen sind dort unterteilt zwischen CityDoctorValidation und CityDoctorGUI und unter diesen Ordnern gibt es die entsprechenden Versionsordner.
!!! note ### Releaseversionen
Die Liberica Distribution ist zu 100% frei und OpenSource.
!!! note Für jede CityDoctor Variante (CityDoctorValidation oder CityDoctorGUI) werden vier verschiedene Versionen zum Download bereitgestellt.
Für die Entwicklung mit CityDoctor wird eine JDK benötigt. Es werden in verschiedenen Versionen Java Runtimes der Liberica Distribution mitgeliefert.
| Version | Beschreibung |
| ------- | ------------ |
| CityDoctor*-no-runtime.zip | Diese Version beinhaltet keine Runtime für Java. Falls auf Ihrem PC schon ein Java der Version 17 installiert ist (siehe [Java](requiredSoftware.md#java)), dann ist diese Version zu bevorzugen.
| CityDoctor*-win.zip | Beinhaltet eine Windows Java Runtime zum ausführen von CityDoctor, kein Java muss installiert sein. |
| CityDoctor*-lin.zip | Beinhaltet eine Linux Java Runtime zum ausführen von CityDoctor |
| CityDoctor*-mac.zip | Beinhaltet eine Mac Java Runtime zum ausführen von CityDoctor |
## CityDoctor2 ## Versionen bis 3.12.x
CityDoctor kann von verschiedenen Seiten heruntergeladen werden. Die aktuellste Stelle ist ein [gitlab Repository](https://gitlab.com/volkercoors/CiD4Sim/-/tree/master/CityDoctorExtension). Alternativ werden Releases auch auf der [CityDoctor Homepage der BHT](https://projekt.bht-berlin.de/citydoctor2/downloads/) gelistet. Es gibt dabei immer zwei Versionen: CityDoctor kann von verschiedenen Seiten heruntergeladen werden. Die aktuellste Stelle ist ein [gitlab Repository](https://gitlab.com/volkercoors/CiD4Sim/-/tree/master/CityDoctorExtension). Alternativ werden Releases auch auf der [CityDoctor Homepage der BHT](https://projekt.bht-berlin.de/citydoctor2/downloads/) gelistet. Es gibt dabei immer zwei Versionen:
...@@ -23,3 +28,18 @@ CityDoctor kann von verschiedenen Seiten heruntergeladen werden. Die aktuellste ...@@ -23,3 +28,18 @@ CityDoctor kann von verschiedenen Seiten heruntergeladen werden. Die aktuellste
!!! note !!! note
Es gibt manchmal Spezialversionen die Testweise erstellt worden sind um verschiedene Auslieferungsmöglichkeiten zu testen. Bsp: CityDoctorGUI-x.x.x-win.zip beinhaltet die JavaFX Bibliotheken sodass eine Java Umgebung ohne JavaFX auch verwendet werden kann. Es gibt manchmal Spezialversionen die Testweise erstellt worden sind um verschiedene Auslieferungsmöglichkeiten zu testen. Bsp: CityDoctorGUI-x.x.x-win.zip beinhaltet die JavaFX Bibliotheken sodass eine Java Umgebung ohne JavaFX auch verwendet werden kann.
### Java
Vor der CityDoctor Version 3.12.x wird Java 8 entweder als JDK oder als JRE benötigt. Ab der Version 3.12.x wird Java 17 benötigt.
!!! warning
Es wichtig, dass die installierte Java Version die JavaFX Bibliotheken mit einschließt. Diese werden für die grafische Oberfläche benötigt.
[Die Liberica JRE oder JDK](https://bell-sw.com/libericajdk/) hat sich für einen Einsatz mit CityDoctor bewährt.
!!! note
Die Liberica Distribution ist zu 100% frei und OpenSource.
!!! note
Für die Entwicklung mit CityDoctor wird eine JDK benötigt.
\ No newline at end of file
...@@ -15,6 +15,28 @@ In CityDoctor wurde das [XML Validierungssystem Schematron](https://de.wikipedia ...@@ -15,6 +15,28 @@ In CityDoctor wurde das [XML Validierungssystem Schematron](https://de.wikipedia
Hier ist ein Beispiel für eine Schematron Datei die CityDoctor integrieren kann: Hier ist ein Beispiel für eine Schematron Datei die CityDoctor integrieren kann:
### CityDoctor >= 3.13.0
``` xml
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
<ns prefix="gml" uri="http://www.opengis.net/gml"/>
<ns prefix="bldg" uri="http://www.opengis.net/citygml/building/2.0"/>
<pattern>
<rule context="//*:Building">
<assert test="count(descendant::*:lod1Solid) &gt; 0 or count(descendant::*:lod2Solid) &gt; 0 or count(descendant::*:lod3Solid) &gt; 0 or count(descendant::*:lod4Solid) &gt; 0"><value-of select="@gml:id | @id"/>||||SE_ATTRIBUTE_MISSING||any solid</assert>
</rule>
<rule context="//*:BuildingPart">
<assert test="count(*:lod1Solid) = 1 or count(*:lod2Solid) = 1 or count(*:lod3Solid) = 1 or count(*:lod4Solid) = 1"><value-of select="ancestor::*:Building/@*:id"/>||<value-of select="@gml:id | @id"/>||SE_ATTRIBUTE_MISSING||any solid</assert>
</rule>
</pattern>
</schema>
```
### CityDoctor < 3.13.0
``` xml ``` xml
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2"> <schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
...@@ -46,6 +68,9 @@ Die Fehlermeldung besteht aus den folgenden Teilen: ...@@ -46,6 +68,9 @@ Die Fehlermeldung besteht aus den folgenden Teilen:
* Die `parent id` ist die gml id des obersten Elements z.B. Building oder Bridge. * Die `parent id` ist die gml id des obersten Elements z.B. Building oder Bridge.
* Falls der Fehler in einem Unterelement aufgetreten ist so kann diese ID in dem Feld für die `child id` eingetragen werden. * Falls der Fehler in einem Unterelement aufgetreten ist so kann diese ID in dem Feld für die `child id` eingetragen werden.
* Im Feld `error type` ist einer der 3 Fehlertypen einzutragen: `SE_ATTRIBUTE_WRONG_VALUE, SE_ATTRIBUTE_MISSING, SE_ATTRIBUTE_INVALID`. * Im Feld `error type` ist einer der 3 Fehlertypen einzutragen: `SE_ATTRIBUTE_WRONG_VALUE, SE_ATTRIBUTE_MISSING, SE_ATTRIBUTE_INVALID`.
note
Nur in CityDoctor < 3.13.0:
* Um ein generisches Attribut mit dem Namen `measuredHeight` von dem nicht generischen Attribut zu unterscheiden ist im letzten Feld vorgesehen `true` einzutragen wenn es sich um ein generisches Attribut handelt ansonsten `false`. * Um ein generisches Attribut mit dem Namen `measuredHeight` von dem nicht generischen Attribut zu unterscheiden ist im letzten Feld vorgesehen `true` einzutragen wenn es sich um ein generisches Attribut handelt ansonsten `false`.
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment