3D Printing a Revit Toposurface using AutoCAD


An Architect wants to print the Toposurface around a house that has been designed in Revit. Revit does not export the topography as a solid to STL format so AutoCAD is used to transform the Topography into a Solid object that can be exported to STL. The house is printed independently to the topography and then glued to the topography later. AutoCAD is used since it is available in Autodesk’s Building Design Suite Premium, although users who have Building Design Suite Ultimate could also use Inventor (as an alternative) for the same purpose. The Makerbot brand of 3D printer is the target of the solid created. It is able to print a honeycomb extrusion within voids and for the sake of saving filament material, the Toposurface is transformed into a solid shell.

Export Toposurface As Dwg

For conceptual purposes a Toposurface is generated using a .csv file (comma delimited text file). Thereafter a building pad is added to represent a void that the printed model would later be glued into.

Export Toposurface As Dwg

graded regionA graded region is created from the existing Toposurface. <Massing & Site><Modify Site><Graded Region>

editing graded region

editing graded region 2

Export the geometry to a DWG file. <Application Menu><Export><CAD Formats><DWG>

Note that there are DWG export settings that can be set if required, although we are simply using the default settings.

DWG Export

Of interest to those that 3D print is the option to export solids as Polymeshes or ACIS Solids.

modify dwg export setup

Create Toposurface Solid In Autocad

Open the DWG file in AutoCAD Change the workspace to 3D Modeling.

Create Toposurface Solid In Autocad

The Polymeshes have been placed on the layer C-TOPO. Differentiate the graded region by placing it on a layer created for it (Graded_Region).

graded region2

graded region3

Create a layer for the Toposolid (Toposolid) and set it as the current layer.


Isolate the Toposolid and Graded_Region layers.


Work in the top view and create a polyline tracing the edge of the graded region. Offset this polyline some small distance inwards (500mm in this case)

polyline tracing

Offset this polyline some small distance inwards (500mm, for illustration purposes, in this case, although a 0.001mm offset also worked for this topography)

polyline tracing 2

View the drawing in isometric. Extrude the inner polyline to extend beyond the vertical extents of the graded region using the Extrude and Presspull commands.

Extrude and Presspull commands

Convert the polyface mesh object to a surface object:

  • Type FACETERSMOOTHELEV into the command line and press Enter.
  • Set the system variable to 0 and press Enter.
  • Type SMOOTHMESHCONVERT into the command line and press Enter.
  • Set the system variable to 2 and press Enter.
  • Type CONVTOMESH into the command line and press Enter. Then select the objects (polymesh) and press Enter. If a warning pops up, create the mesh.

smooth mesh

  • Type CONVTOSURFACE into the command line and press Enter. Select the objects (mesh) and press Enter.

Select Surface as the sub-command when slicing the extruded solid using the surface.

surface sub command

surface sub command 2

Keep the base and discard the top. Change the view to shaded to see the solid.

surface sub command 3

Make all the layers except “Toposurface” and “Graded_Region” visible, then create a layer called void and make it current.


Set the UCS properties so that it always displays at the origin.

UCS properties

Set the UCS to the top of the building pad and create a polyline on the perimeter.

create a polyline

toposurface 2

Extrude this polyline to extend beyond the surface.

extrude polyline

Copy the void solid and place it some way off. Create a shell of about 300mm (if the topography is printed at 1:100 then real thickness of the printed shell will be 3mm while the inside of the shell will be filled with a honeycomb extrusion). Starting with the void form we just copied, copy it in place again and then extrude the side and base faces of one of the voids forms by 300mm (we could change the color of one of the forms to magenta to differentiate the two).

topo 3d view

Shown here are the two void shapes that will form a shell. Boolean subtract the blue rectangular prism from the magenta rectangular prism.

Boolean subtract

The resultant shell shown in shaded view style. Move it back into place (so it surrounds the original Void).

resultant shellresultant shell 2

Isolate the Toposolid layer and switch to wireframe view style. Offset the Polyline that defines the base profile by 800 mm.

Toposolid layer

Use the .z point filter object snap command to move the polyline on to the base of the Toposurface. When prompted, select any point of the offset polyline as the first point of displacement, then when prompted where to select the second point of displacement, select the .z point filter and click anywhere on the base of the Toposurface, and then type in @0,0,0.

z point filter

Next move the polyline 300mm above the base of the Toposurface. When prompted to select the first point of displacement, select any point on the polyline, then type @0,0,300 for the second point of displacement. Now extrude this polyline beyond the top of the Toposolid (shown in red).

extruding polyline

Switch on the Graded_Region layer and copy the surface down 500mm from its current position (the copied surface shown in green).

First point of displacement: anywhere on the surface

Second point of displacement: @0,0,-500

graded region 4

Slice the red extrusion using the green surface and keep the base. Switch off the Graded_Region layer. Boolean subtract the red solid from the yellow solid and change the resulting solid to yellow.

graded region layer

graded region layer 2

Isolate the Void and Graded_Region layers.

isolate void and graded region

Slice the Magenta void shell using the purple surface and keep the base.

Void and Toposolid layers

Isolate the Void and Toposolid layers. Boolean subtract the blue Void from the yellow Toposolid.

Boolean subtract2

Boolean add the magenta void shell to the yellow Toposolid.


This is now a solid shell that can be printed by exporting it as an STL file. Change the UCS back to World Coordinates.

world coordinates

Export the file as an STL file.

export stl fileexport stl file 2

Select the Toposolid to export when prompted.

Download and install Autodesk MeshMixer to view the STL file in.

autodesk mesh mixer

The Makerbot printer can now fill the solid shell with a honeycomb extrusion (providing structural rigidity and saving on printing filament)