The IFC import into MassMotion has the advantage that the incoming geometry is automatically categorised into the appropriate type: floor, link, stair, etc. It can do this because the IFC file format includes both geometric data and the metadata from the original model. For example, in a CAD model you would just draw a slab outline with lines, but in a building model the slab object includes properties such as thickness, material type, finishes, and so on. The IFC format preserves this data and MassMotion uses it to map the object types in accordance with the import dialog.
There are three other major factors to consider during the import: orientation, scale, and location.
MassMotion uses the same axis set as Autodesk’s Softimage, in which the Z axis is horizontal (screen depth) and the Y axis is in the vertical direction. Most CAD and building models, on the other hand, have the Z axis vertical. This means that the axes need swapping during the import. To do this set the appropriate selection on the second tab of the import wizard.
CAD and building models can be in any units you choose; MassMotion models are always in metres. This means that the import must convert any coordinates appropriately if your resulting model is to be the right size. The import should automatically detect the units from the IFC file, but if this does not work then you would need to either do a units conversion on export to metres if your originating program allows, or set the original units in the import wizard just like importing from a regular CAD file.
While CAD and building modelling programs are happy at working in large coordinates, analysis programs like MassMotion are not. Thus if your original model is located by a national scale coordinate system, you need to move the geometry to the origin either on export or import. The MassMotion import option allows you to define the point in the original model that will become 0,0,0 in the new, but changing this in Revit tends to give a better result. Note that this coordinate is in both the original units and axis orientation.
Generally the resulting MassMotion model floors will be in one of two basic forms depending on how the building model was defined or exported.
One option is to export the physical slabs and walls, which will result in one large floor per storey divided by barriers. This will also mean that any doors will generally not translate correctly as links as they will only be on one floor; this is nothing to worry about as they are not needed in this case. The downside to this option is that the agents will not be aware of route choices across this floor and only go the shortest route regardless of congestion. You might find it necessary to add some divisions in the floors after import.
The second (and recommended) option is to export the rooms (or spaces), meaning that each will create a separate floor. Doors will now link these floors and give the agents the full route finding options.
Note that it is not recommended to convert both slabs and spaces as floors because this will likely lead to duplicate/overlapping floors. If you have both IfcSpace and IfcFloor objects, convert the IfcSpace by preference as this will enable the IfcDoor / Links to work
Partition walls are often modelled finished floor to the underside of the slab above, but a wall touching the underside of the floor geometry will still register as a barrier. This means that you may need to edit the walls after import to ensure that there is a gap between the wall tops and the underside of the floor. Check the obstruction and approach maps if you are not sure whether this affects your model.
Stairs and Escalators
Revit currently does not export escalators and some stair types to IFC. One option is to make a copy of the Revit model, change all the escalators to stairs, export that, then reset them back in MassMotion. This may apply to other building model programs. Another option is to select the imported escalator/stair object, then select relevant polygons and use those to generate the escalator/stair.
Unless you have created some custom objects in Revit (other building models are available) you will need to add portals, paths, and servers manually in MassMotion
When updating the MassMotion model after the inevitable changes to the original model, either delete all the imported geometry and reimport, or just the changes (if you know what they are).