Extract LOD2 Buildings (3D Analyst)

Summary

Creates 3D building models using their polygon footprints and a raster or point cloud based height source.

Illustration

Extract LOD2 Buildings tool illustration
This data is courtesy of the City of Zurich.

Usage

  • The characteristics of the output building models are described by the Levels of Detail (LOD) concept in the CityGML standard. The tool supports the generation of LOD 1.2, LOD 1.3, and LOD 2.0. LOD 1.x models using a flat representation of the roof; LOD 2.x models capture the slope and directional orientation of the roof.

  • The building footprint polygons should be aligned with the elevation profile of the structure in the height source. Misalignments between the footprint and the height source may distort the output features.

  • When using a LAS dataset layer as the height source, the tool will honor any point filters that are applied to the layer. The LAS dataset should have the ground and building points included in the layer filters. Classified lidar is not required, but if points are classified, filtering them out may improve the quality of the result and processing time. Use the Classify LAS Ground tool to classify ground points, and use the Classify LAS Building tool to classify building rooftop points. The resulting LAS dataset can then be filtered for class 2 and 6 to ensure that only the building rooftop and ground elevation data will be used to generate the output buildings.

  • Each building footprint should represent one contiguous structure without any overlapping polygons. Overlapping polygons that belong to the same building and may be used to represent structures on the roof should be excluded from the footprint by running the Dissolve tool.

  • If the input height source has a lot of noise, consider increasing the smoothness level to overcome the distortions that may be introduced in the output 3D buildings.

Parameters

LabelExplanationData Type
Input Height Source

The raster, mosaic dataset. or LAS dataset layer that provides the height information for the buildings being modeled. When the input is a LAS dataset, the layer's filtered points will be processed. It is important to include both the ground and the building points in the LAS dataset's layer filters.

Raster Layer; Mosaic Layer; LAS Dataset Layer
Input Building Footprints

The polygon features that represent the footprint of the buildings that will be extracted.

Feature Layer
Output Multipatch Feature Class

The output multipatch features that will contain the 3D building models.

Feature Class
Level of Detail
(Optional)

Specifies the level of detail that will be used to generate the rooftop in the building models. Each building will extend from the rooftop to the surrounding ground level.

  • LOD1.2The building rooftop will be represented as a flat roof with larger elements being modeled at the median height of the entire building.
  • LOD1.3The building rooftop will be represented as a flat roof with larger elements being modeled at the median height of the element.
  • LOD2.0The slope and directional orientation of the building rooftop and its larger elements will be represented. This is the default.
String
Smoothness Level
(Optional)

A value between 0.0 and 1.0 that impacts the extent to which details in the building will be preserved or generalized. A higher value will result in a more simplified output, and a smaller value will be more likely to extract subelements of a building. A higher value can help minimize the impact of noise in the elevation source provided in the Input Height Source parameter. The default is 0.5.

Double
Extraction Accuracy
(Optional)

Specifies the broader accuracy of the resulting building model.

  • LowA broader tolerance for the resulting 3D models will be used, which may lose some details in the building. This option has the shortest processing time.
  • MediumA balance between building model accuracy and processing time will be used. This is the default.
  • HighThe highest accuracy for the resulting 3D models will be used. This option will extend the overall processing time.
String

arcpy.ddd.ExtractLOD2Buildings(in_height_source, in_features, out_feature_class, {level_of_detail}, {smoothness_level}, {extraction_accuracy})
NameExplanationData Type
in_height_source

The raster, mosaic dataset. or LAS dataset layer that provides the height information for the buildings being modeled. When the input is a LAS dataset, the layer's filtered points will be processed. It is important to include both the ground and the building points in the LAS dataset's layer filters.

Raster Layer; Mosaic Layer; LAS Dataset Layer
in_features

The polygon features that represent the footprint of the buildings that will be extracted.

Feature Layer
out_feature_class

The output multipatch features that will contain the 3D building models.

Feature Class
level_of_detail
(Optional)

Specifies the level of detail that will be used to generate the rooftop in the building models. Each building will extend from the rooftop to the surrounding ground level.

  • LOD1.2The building rooftop will be represented as a flat roof with larger elements being modeled at the median height of the entire building.
  • LOD1.3The building rooftop will be represented as a flat roof with larger elements being modeled at the median height of the element.
  • LOD2.0The slope and directional orientation of the building rooftop and its larger elements will be represented. This is the default.
String
smoothness_level
(Optional)

A value between 0.0 and 1.0 that impacts the extent to which details in the building will be preserved or generalized. A higher value will result in a more simplified output, and a smaller value will be more likely to extract subelements of a building. A higher value can help minimize the impact of noise in the elevation source provided in the in_height_source parameter. The default is 0.5.

Double
extraction_accuracy
(Optional)

Specifies the broader accuracy of the resulting building model.

  • LOWA broader tolerance for the resulting 3D models will be used, which may lose some details in the building. This option has the shortest processing time.
  • MEDIUMA balance between building model accuracy and processing time will be used. This is the default.
  • HIGHThe highest accuracy for the resulting 3D models will be used. This option will extend the overall processing time.
String

Code sample

ExtractLOD2Buildings example (Python window)

The following sample demonstrates the use of this tool in the Python window:


import arcpy
arcpy.env.workspace = "C:/data"
arcpy.ddd.ExtractLOD2Buildings("lidar/dsm_30cm.tif",
                               "city.gdb/building_footprints",
                               "city.gdb/buildings_3D",
                               "LOD1.3",
                               0.7,
                               "MEDIUM")

Licensing information

  • Basic: Requires 3D Analyst
  • Standard: Requires 3D Analyst
  • Advanced: Requires 3D Analyst

Related topics