Create Floors from 3D Building Models

13642
15
01-13-2016 07:14 AM
by Anonymous User
Not applicable
27 15 13.6K

3D floor data is vital for Smart Cities, Smart Campuses, the Internet of things (IOT), and 3D intelligent Facilities.

This 3D data is vital for supporting trends and requirements such as the FCC requiring Z elevation values to be collected for 9/11 calls, 3D Land-Use Zoning, Sustainability analysis, resource consumption estimation, and others...

Leveraging Esri's ArcGIS Pro floors can now be extracted from 3D Models via GeoProcessing (GP) Tool.

floor_Splitter.JPG
   Example of Floors Split from PLW Modelworks Buildings.

Instructions:

Download the Facility Tools Here: FacilityTools.zip

For installation instructions please refer to my previous blog post here: Extrude Feature GP tool

Download the Overview Video Here: FloorSlicing.wmv

SplitFloors.JPG

Using the "Split Floors" GP Tool in the "Facility Tools Toolbox" Floors can be extracted leveraging one of two methods.

  1. Precise Range
    • Specify real-world floor ranges that will contain the same Height
      • The end floor specified is the real-world floor number.
  2. Additive Range
    • Specify the number of floors that will contain the same heights
      • The end floor specified is added to the end floor height below.

The resulting floors can be further cleaned leveraging the following GP tools:

  • "Regularize Building Footprint" GP tool will help clean the footprint and remove additional artifacts.
  • "Feature to 3D By Attribute" GP tool can be leveraged to convert the floors back to 3D once cleaned.
    • floorsCleaned.JPG

Using the "extrude" GP Tool in the "Facility Tools Toolbox" you can:

  • Create 3D volumes of each floor level:
  • Create 3D floors for each floor level:

Creating Wall Geometries from the Floor Polygons

  • Use the "Offset Polygon" GP Tool in the "Facility Tools Toolbox" you create walls around floor edges
  • Use the "Extrude Feature" GP Tool in the "Facility Tools Toolbox" to extrude the walls to their actual height.

I will be adding more tools and publishing further blog posts in the coming days/weeks.

All questions concerning these "Facility Tools" are supported through this GeoNET blog.

15 Comments
XanderBakker
Esri Esteemed Contributor

Great post. Thanx for sharing!

YovavZohar1
Occasional Contributor III

Hi Geoff,

Those are excellent tools - Thanks.

Are there any plans to modify the "Split Floors" GP Tool, so it will take its Floor splitting parameters from fields (maybe simplified to 2 fields - Building height and Nomber of floors)?

This will allow running the tools on an entire neighborhood or city for further purposes.

Regards,

JacobSiech
New Contributor III

When I run the tool it will not complete and says that the tool is not licences.  An Ideas why?

Thanks,

Jake

by Anonymous User
Not applicable

Jake,

Make sure that 3D Analyst is licensed in your ArcGIS Pro install.

If you do not own a 3D Analyst License then the tools will not run.

JacobSiech
New Contributor III

I have it on my arcmap do I have to turn it on for arc pro? And if so how?

TimcoToppen
New Contributor

I'm repeatedly getting the error message: Invalid rule package (001557) even after removing the Toolbox and replacing it with a newly downloaded.

Failed to execute (FeaturesFromCityEngineRules).

Failed to execute (SplitFloors).

Any advise?

Thanks!

by Anonymous User
Not applicable

Please ensure that the RPK folder is included next to the "FacilityTools.tbx" file.

Also ensure that the .rpk files are also there

by Anonymous User
Not applicable

You must enable the ArcGIS 3D Analyst extension before you can work with it in ArcGIS Pro. ArcGIS Pro requires that an administrator of an organization assign software licenses and extensions. Once you have been assigned the ArcGIS 3D Analyst extension, you gain access to the 3D Analyst tools.

For more information on ArcGIS Pro licences, see Licensing ArcGIS Pro.

In ArcGIS Online for the Administrator:]

     1. Click on My Organizaition --> Manage Licenses --> Select the User -->Set the Users Extensions.

FranciscoCosta1
Occasional Contributor

Hey Geoff, the split floors tool was changed and now it has an ObjectID, can you update the documentation, because there is nowhere explaining. I used the ObjectID for the building ID field and it does not work can you explain. If you can thanks in advance.

UPDATE: featureID must be a LONG (or else gives type error if layer open).

JacobSiech1
New Contributor III

Hi,

I am having an issue with the tool it says that it is not licences but I have 3D Analyst Extension licensed and it is active as far as I can tell it says Yes and Expires 10/31/2019.  Any help would be great.

Thanks,

~J~S~

BillMacPherson
New Contributor III

Are to tools still available? When I click on the link to it gives me the following message. Box error message

by Anonymous User
Not applicable

Bill,

Thanks for the Heads up. 

The link is now updated above.

Groff

MateusMagarotto
New Contributor

I'm getting the error message:

Traceback (most recent call last):
File "D:\Matosinhos\Matosinhos_3D\Facility\splitFloors.py", line 95, in <module>
arcpy.FeaturesFromCityEngineRules_3d(fC, os.path.join(RPKFolder, "createFloors.rpk"), FFCERMp, "false", "true", "true")
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\ddd.py", line 734, in FeaturesFromCityEngineRules
raise e
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\ddd.py", line 731, in FeaturesFromCityEngineRules
retval = convertArcObjectToPythonObject(gp.FeaturesFromCityEngineRules_3d(*gp_fixargs((in_features, in_rule_package, out_feature_class, in_existing_fields, in_include_reports, in_leaf_shapes), True)))
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\geoprocessing\_base.py", line 512, in <lambda>
return lambda *args: val(*gp_fixargs(args, True))
arcgisscripting.ExecuteError: Failed to execute. Parameters are not valid.
ERROR 001557: Invalid rule package.
Failed to execute (FeaturesFromCityEngineRules).

Can you help me?

Thanks!

Gertvan_Maren1
New Contributor III

Hi,

Unclear why this fails when reading your traceback.

Another option to try is use the 3D basemaps solution. It has a section about creating floors from multipatch buildings.

https://storymaps.arcgis.com/stories/f988bfdb6baa43d49156ba91facb300f

https://doc.arcgis.com/en/arcgis-solutions/latest/reference/use-3d-basemaps.htm#ESRI_SECTION1_E9D384...

Gert

 

MateusMagarotto
New Contributor

Dear Gertvan Maren

 

I tried both ways  with the following parameters:

 

MateusMagarotto_1-1626857032486.png

Can you help me?

 

Best regards

 

Mateus Magarotto