Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • 3 3D-Stadtmodelle
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Jobs
  • Commits
Collapse sidebar
  • Volker Coors
  • 3D-Stadtmodelle
  • Wiki
  • En
  • Citygml tutorial
  • Extras

Extras · Changes

Page history
Update Extras authored Dec 21, 2022 by Rushikesh Padsala's avatar Rushikesh Padsala
Hide whitespace changes
Inline Side-by-side
EN/CityGML-Tutorial/Extras.md
View page @ 189cc212
......@@ -24,7 +24,7 @@ The output CityGML file will contain the schematic attribute for year of constru
**Method 2: Using database joiner and attribute manager**
In this method, instead of adding another reader database joiner, transformer is used to connect datasets based on gml_id or any primary key. Here you connect the port from "CityGML Building" to the input port of database joiner transformer. Inside the transformer you select your database (here: CSV), select the CSV table and then map your gml_id from the CityGML file to gml_id from the CSV file. Under "Fields to Add", the field containing year of construction values is selected (here: construction ). Also make sure to set cardinality to either 1:1 or 1:0..1. This will prevent unmatched gml_id from giving you an error and terminating the workbench. Next connect the joined port of database joiner to attribute manager input port. Inside attribute manager, in front of the "citygml_year_of_construction" assign value "construction ". Join the output port to the writer port of "CityGML Building" and run the workbench.
In this method, instead of adding another reader database joiner, transformer is used to connect datasets based on gml_id or any primary key. Here you connect the port from "CityGML Building" to the input port of database joiner transformer. Inside the transformer you select your database (here: CSV), select the CSV table and then map your gml_id from the CityGML file to gml_id from the CSV file. Under "Fields to Add", the field containing year of construction values is selected (here: construction ). Also, make sure to set cardinality to 1:0..1. This will prevent unmatched gml_id from giving you an error and terminating the workbench. Next connect the joined port of database joiner to attribute manager input port. Inside attribute manager, in front of the "citygml_year_of_construction" assign value "construction ". Join the output port to the writer port of "CityGML Building" and run the workbench.
An example workbench is available [here](https://transfer.hft-stuttgart.de/gitlab/coors/3d-stadtmodelle/-/blob/master/FME_Workbenches/citygml_yoc_method2.zip).
......@@ -48,7 +48,7 @@ The output CityGML file will contain the schematic attribute for year of constru
In this example, we will add a generic attribute (here: specific space heating demand) to an existing CityGML document using FME. The same method can be used for adding any generic attribute(s) by attribute join to any CityGML CityObjects irrespective of its Level Of Detail. For example purpose here, CityGML 2.0 building dataset for HFT campus in LOD2 is used. For adding generic attribute of Specific space heating demand to HFT CityGML file, SimStadt simulated heating energy demand result is used. Database joiner method is used in this example as explained above.
First, we connect the port from "CityGML Building" to the input port of database joiner transformer. Inside the transformer you select your database (here: CSV), select the CSV table and then map your gml_id from the CityGML file to GMLId from the CSV file. Under "Fields to Add", the field containing specific space heating demand values is selected (here: Specific space heating demand ). Also make sure to set cardinality to either 1:1 or 1:0..1. This will prevent unmatched gml_id from giving you an error and terminating the workbench. Next we will join the output port to the writer port of "CityGML Building". At this point, the new attribute of Specific space heating demand must be added to the attribute list of CityGML building. To access the existing attribute list of CityGML building, click on wheel icon ![image](uploads/e8c6d598e3c71cd4dda645d2d7bc4528/image.png). Next, select the User Attributes tab and manually add the new attribute Specific space heating demand with xml_real64 type. Now save and run the workbench.
First, we connect the port from "CityGML Building" to the input port of database joiner transformer. Inside the transformer you select your database (here: CSV), select the CSV table and then map your gml_id from the CityGML file to GMLId from the CSV file. Under "Fields to Add", the field containing specific space heating demand values is selected (here: Specific space heating demand ). Also make sure to set cardinality to 1:0..1. This will prevent unmatched gml_id from giving you an error and terminating the workbench. Next we will join the output port to the writer port of "CityGML Building". At this point, the new attribute of Specific space heating demand must be added to the attribute list of CityGML building. To access the existing attribute list of CityGML building, click on wheel icon ![image](uploads/e8c6d598e3c71cd4dda645d2d7bc4528/image.png). Next, select the User Attributes tab and manually add the new attribute Specific space heating demand with xml_real64 type. Now save and run the workbench.
>An easier way to define new generic attributes would be to switch "Attribute Definition" from Manual to Automatic. This will reduce time to manually add all the new generic attributes to the CityGML attribute list but for all the newly added generic attributes FME will define their type based on their data type defined in the input database (e.g. excel, CSV, Postgres etc.). To manually change a data type, switch back to Manuall attribute definition.
......
Clone repository
  • DE
    • Buch 3D Stadtmodelle
    • Buch 3D Stadtmodelle
      • Kap 4: Objektmodell
      • Kap 5: Digitales Geländemodell
      • Kap 6: Die Bodenbedeckung
      • Kap 7: Gebäudemodell
      • Kap 8: Vegetation
    • Konferenzen
    • Open Data
    • Vorlesung 3D Stadtmodelle
    • Vorlesung 3D Stadtmodelle
      • Kap 2.1 Teil 1 Gebäudemodell Lod 1
      • Kap 2.1 Teil 2 Gebäudemodell Lod 1 mit Attributen
      • Kap 2.2 Gebäudemodell LoD 2
      • Kap 3 ArcGIS CityEngine
      • weiteres
  • EN
    • CityGML Tutorial
View All Pages

Dies ist die Gitlab-Instanz des Transferportals der Hochschule für Technik Stuttgart. Hier geht es zurück zum Portal