Modeling a neighborhood with Flux Site Extractor, GIS data and Revit

Since my last post, I kept on working on urban development. I particularly think about importing GIS data into our usual authoring tools. My experience with Infraworks was interesting, but it is still difficult to use this data in a Revit model.

The most promising resource out there for creating a context in a Revit model is the Flux Site Extractor. You select an area, add some features to extract and send them to a Flux project.

The Flux Site Extractor interface

After retrieving this data in my Flux Site Project, I use the Flux Dynamo nodes to get the topography as a mesh, extract the vertices of this mesh as points and use these points to create a toposurface in Revit.

Creating a toposurface from the Flux Site Extractor

Building profiles and heights came from OpenStreetMap, and aren’t accurate enough to be used for site analysis. But I am using building profiles to draw on a plan view the footprint of every building retreived with Flux. This will help me futher down the road to align my buildings on the toposurface.

Buildings footprints drawn in a plan view

I found more accurate data on the parisian buildings on the APUR Open Data plateform. I download this data as a shapefile containing every building in Paris.

Obviously, this dataset is too large to be imported as it in Revit. I am using QGIS, an open source GIS application, to extract a subset of this file. To do so, I draw a polygon encompassing the few city blocks I want to retrieve and use the “Clip” function to create a new shapefile containing only the selected buildings.

Isolate the propers city blocks

I am using the DynamoGIS package to import this shapefile into Revit. These nodes allow me to read the file and extract the shapes of the buildings.

The most difficult thing here was to include inner boundaries in a building shape. These boundaries are not taken into account by the Surface.ByPatch node. I manage to split the first surface (the largest) using the inner curve. This allow me to create the hollowed surface.

Highlight of inner boundaries

The DynamoGIS include nodes to query any value associated with shapes. I am using them to retrieve building heights in the dataset and extrude my buildings at their proper height.

Since it is GIS data, I am using a nice tip from LandArch to move my geometry near the project base point, and make it usable in Revit.

I am using the FamilyInstance.ByGeometry node from the great Spring nodes of Dimitar Venkov to create the buildings as mass families.

This Dynamo definition create a mass family for every building in the shapefile, extruded up to its actual height. Combined with the toposurface created with Flux, this look like an actual neighborhood, where you can think about massing and site integration directly in Revit.

Site integration of a project

This process still has a few issues. The buildings aren’t adjusted at the toposurface and aligning them with the toposurface created with the Flux Site Extractor involve some manipulations. I still have some work to do on this process to streamline it, and get a more accurate representation of an existing site.

Another view of the project


5 thoughts on “Modeling a neighborhood with Flux Site Extractor, GIS data and Revit

  1. Interesting post. Last year I played with Infraworks. I f you plug in a more reliable GIS source than the default open street maps, you get some instant joy in very few steps. Although it still needs tweaking afterwards.
    Then you can bring your Revit model into Infraworks, export your with your site and load in Lumion. Beautiful.

  2. Pingback: Best of Revit #6 : TOP Revit content of the week ! - Revit news

  3. Pingback: Weekly Roundup – 2017.07 | The BIMsider - Revit news

  4. Pingback: Building a Forge Web Viewer | BIM 42

  5. Hi Simon,
    Interesting approach. You might want to look into combining the ever more widely available aerial lidar data with 2D souces like OpenStreetMap for more realistic results. You need some specialized software like LAStools to manipulate the raw Point Cloud data, but it has a CLI that you can compile commands for in Dynamo (Well, that I can compile in Dynamo, and you can compile in whatever you like). Interesting times!
    Right now I’m trying to get it to create a small filtered point cloud for every GIS polygon in an OSM, involves creating loops in CLI scripts, bit of a learning curve there. LAStools can spit out 3D shape files, next step will be to hook up DynamoGIS.

Leave a Reply

Your email address will not be published. Required fields are marked *