FME Version
Introduction
This example uses FME Workbench to convert 2D rooms from a CAD floor plan to 3D Spaces in IFC.
Source Data
The source data is an AutoCAD DWG dataset representing a building floor plan.
The floor plan polygons are elevated to the proper floor height. They possess attributes for the room number (Name), purpose (LongName), and ceiling height (Height).
Workspace
There are four main parts to the workspace:
Creating the Building Story Parent Feature
The source features are on a layer corresponding to their building story. The Sampler transformer groups by this layer (using the autocad_layer attribute) to extract a single feature for each story. The AttributeCreator creates and sets the attributes to fme_feature_type, which represents the AutoCAD layer name. These features are used to create IfcBuildingStorey features to contain the spaces from that story.
Creating the Space Geometry
The 2D room boundaries are extruded by the Height attribute to create 3D solids. The general properties are set on the feature and converted to geometry traits using the GeometryPropertySetter. In the following GeometryPropertySetter, the geometry name is set to ‘Body’, to set the Representation type. This will later combine with Property Sets to make up the IfcSpace feature type.
Creating the Space Property Sets
The geometry is removed from a copy of each room, then two copies are used to create the property sets Pset_SpaceCommon and Identity Data. The properties for each set, along with ifc_property_set_name, are created as attributes then converted to geometry traits. The geometry name is then set to ‘IfcPropertySet’.
The Space geometry and property sets are aggregated together and the link to the parent IfcBuildingStorey is set using the AttributeCreator before writing to the IfcSpace feature type.
Creating the Property Set Definitions
A single feature from the source data is extracted by the Sampler transformer. The geometry is removed and two copies are used to create the two property set definitions for Pset_SpaceCommon and Identity Data using two separate IFCPropertySetDefinitionCreators. The definition for Pset_SpaceCommon is not really required, since this property set is pre-defined in FME.
Results in IFC
In order to view results in the Data Inspector, add the dataset with the output file. Before you press okay, go into the Parameters, under Geometry, and set ‘Read IfcSpace Geometries’ to ‘Yes’ in order to display the space geometry in the Viewer.
The result displayed in the Data Inspector.
When we open the output file in an IFC viewer like DDS-CAD or Solibri, we can see that the Spaces have their geometry, general properties and property sets all written correctly.
When using DDS-CAD to view IFC Spaces, you will need to turn on the visibility of IfcSpace in the IFC File Object Types tab. By default when loading the file into the viewer, the visibility for IfcSpace will be off.
Data Attribution
Data was obtained from an Autodesk Revit sample and converted using FME.
Comments
0 comments
Please sign in to leave a comment.