The excellent and open-source IFC extension for Revit (previously known as IFC Exporter) has been updated. Please see below for download links and update details.

Download links:
16.6 for Revit 2016

17.3 for Revit 2017

Readme details for the latest release:

General:

– Minor improvements to the Importer class to make it easier for developers to create a custom Importer.
– We now support the IFC4 Addendum 2 schema.  Specific improvements based on that will be listed below.  For this update, you will have to manually add the IFC4_Add2.exp file (included with this package), to the EDM subfolder of your Revit Program folder.  We will automate this in a future update.

New Export Functionality:

– Allow overriding material names on export by using IfcName shared parameter.
– Expand the use of types for many elements that didn’t export types before, including beams (IfcBeamType), curtain walls (IfcCurtainWallType, and types for mullions and panels), and footings (IfcFootingType).
– Improved ability to export some geometry as IfcSweptSolid.
– Try to use axis information, if it exists, when exporting beams and members in addition to columns.
– (IFC4) Better support beam, column, and member base quantities, including weight.
– (IFC4) Collect material information for profiles for beams and columns.
– (IFC4) Expand use of FootPrint representations to columns and slabs.
– (IFC4) Expand use of IfcMaterialLayerSetUsage if the entity has a compound structure in Revit, as allowed by IFC.
– (IFC4) No longer create StandardCase IFC entities, as these have been deprecated (including IfcWallStandardCase).
– (IFC4) Support IfcMaterialConstituent and IfcMaterialProfileSet for a number of elements.
– (IFC4) Use Built-in parameter “Structural_Bend_Dir_Angle” to get “Roll” property for PSet_BeamCommon and PSet_ColumnCommon.
– (IFCAdd2) Support IfcPolygonalFaceSet.

Export Bug Fixes:
– Allow exporting to IFC while using Collaboration for Revit where the default directory isn’t local.
– Better support for MEP type entities, that didn’t always export correctly.
– Correct the parameters of the directrix of some IfcSweptSolids.
– Fix correct mapping of IfcBurnerType/IfcGasTerminalType and IfcElectricHeaterType/IfcSpaceHeaterType.
– Fix creation of types for sub-entities of IfcDistributionControlElement.
– Fix offset problem when using the “Export Linked Files as Separate IFCs” option in locales where the decimal mark is not a point.
– (IFC4) Correct names of IFC4 entity quantity sets.
– (IFC4) Fix the name of IfcCommunicationsApplianceType.

New Import Functionality:

– Add support for IfcDerivedProfileDef.
– Support IfcRelClassification.
– (IFC4) Support IfcMaterialProfile, IfcMaterialProfileSet, and IfcMaterialProfileSetUsage.
– (IFC4) Support IfcMaterialConstituent and IfcMaterialConstituentSet.
– (IFC4) Support IfcTessellatedFaceSet and IfcPolygonalFaceSet.
– (IFC4) Improve mapping from Roll parameter to structural bend direction angle.
– (API only) Allow for two new options, CreateDuplicateZoneGeometry and CreateDuplicateContainerGeometry, that disable the duplication of geometry for zone elements and containers, respectively.

Import Bug Fixes:
– Better reporting when importing an IFC file with invalid rectangular or circular profiles (e.g., a 0 radius profile).
– Don’t show the void geometry when subtracting a void from an empty solid as a result of an IfcBooleanResult calculation.
– Ensure that IFC2x schema files can still be imported.
– Fix import of some IfcSurfaceCurveSweptAreaSolids.

via email:
IFC for Revit 2015 (v15.3.0.1):
http://apps.exchange.autodesk.com/RVT/en/Detail/Index?id=appstore.exchange.autodesk.com%3aifc2015_windows32and64%3aen

IFC Exporter for Revit 2014 (v3.13):
http://apps.exchange.autodesk.com/RVT/en/Detail/Index?id=appstore.exchange.autodesk.com%3aifcexporterforrevit2014%3aen

IFC Export Alternate UI for Revit 2014 (v2.13.0.1):
http://apps.exchange.autodesk.com/RVT/en/Detail/Index?id=appstore.exchange.autodesk.com%3arevitifcexportalternateui2014%3aen

What’s new for IFC for Revit 2015 v15.3.0.1:

New Export Functionality:

– Allow IfcLongName to override the “LongName” attribute for levels.
– Rooms can now be exported from 3D views even when exporting only elements visible in view.  If the option is chosen to export rooms, then all rooms inside or bordering the bounding box of the section box will be exported.  If the section box isn’t active, all rooms will be exported.
– Work in progress: users can now opt to export files according to the IFC4 Reference View MVD.  This will result in IFC4 files that use IfcTriangulatedFaceSet instead of IfcFacetedBRep, resulting in significantly smaller IFC files.  There are still some cases where IfcFacetedBReps show up in these files, and there are some cases where the tessellation isn’t optimized for the reference view; this will be improved in upcoming releases.

Export Bug Fixes:

– Fix export of files with a project north value different than true north that would cause a slight shift in elevation.
– Fix export of some IfcCurveBoundedPlanes with more outer loops than inner loops.
– Fix the location of some assemblies on export.
– Fix the base quantities export for walls and columns when they are split by level.
– Improve splitting of walls in some cases when they are split by level on export.
– Improved the export of some entities with extruded surface geometry with clippings and openings where some clippings and openings were not being exported.
– Properly scale the volume of columns when base quantities are exported for non-imperial projects.
– Update the French resources file that prevented IFC export from working on computers with a French OS.

New Import Functionality:

– Add ElevationWithFlooring and InteriorOrExteriorSpace/PredefinedType for IfcSpaces.
– Add IfcContainedInHost parameter for doors and windows to contain the name of the hosting wall.
– Add IfcElevation parameter for Levels.
– Add IfcElementAssembly parameter for elements inside assemblies.
– Add IfcSystem parameter for elements inside systems.
– Add material thickness to the IfcMaterial parameter for elements who have an associated IfcMaterialLayerSetUsage.
– Better handing of nameless grid lines.
– Heal some curves with short curve segments, small gaps between segments, and vertices that are too close and better log file error reporting of the above problems.
– IFC4: Import IfcTriangulatedFaceSets, generally created for the IFC4 Reference View MVD.
– Import Box (i.e., the bounding box) representation for elements that have it, but only if they have no Body representation or it contains no visible geometry.
– Import IfcAssemblies.
– Import Construction Type and Operation Type for IfcDoorStyles.
– Import IfcPorts.
– Import IfcSystems.
– Import IfcZones.

Import Bug Fixes:

– Accept “Profile” as an alternate name for “FootPrint” when reading in entity representations.
– Force some entities to have a default name if Revit requires them to, even if there is no name in the IFC file.
– Improve processing of faceted BReps with gaps and short edges.
– Improve processing of walls and slabs whose geometry is defined by IfcMaterialLayerSetUsage.
– Properly scale IfcCompositeCurveSegment trim parameter for non-imperial files.
– Use gray, not black, as the default material color for materials with no color assigned.

What’s new for IFC Exporter for Revit 2014 v3.13:

New Export Functionality:

– Allow IfcLongName to override the “LongName” attribute for levels.
– Rooms can now be exported from 3D views even when exporting only elements visible in view.  If the option is chosen to export rooms, then all rooms inside or bordering the bounding box of the section box will be exported.  If the section box isn’t active, all rooms will be exported.
– Work in progress: users can now opt to export files according to the IFC4 Reference View MVD.  This will result in IFC4 files that use IfcTriangulatedFaceSet instead of IfcFacetedBRep, resulting in significantly smaller IFC files.  There are still some cases where IfcFacetedBReps show up in these files, and there are some cases where the tessellation isn’t optimized for the reference view; this will be improved in upcoming releases.

Export Bug Fixes:

– Fix export of files with a project north value different than true north that would cause a slight shift in elevation.
– Fix export of some IfcCurveBoundedPlanes with more outer loops than inner loops.
– Fix the location of some assemblies on export.
– Fix the base quantities export for walls and columns when they are split by level.
– Improve splitting of walls in some cases when they are split by level on export.
– Improved the export of some entities with extruded surface geometry with clippings and openings where some clippings and openings were not being exported.
– Properly scale the volume of columns when base quantities are exported for non-imperial projects.

What’s new for IFC Export Alternate UI for Revit 2014 v2.13.0.1:

New Export Functionality:

– Rooms can now be exported from 3D views even when exporting only elements visible in view.  If the option is chosen to export rooms, then all rooms inside or bordering the bounding box of the section box will be exported.  If the section box isn’t active, all rooms will be exported.
– Work in progress: users can now opt to export files according to the IFC4 Reference View MVD.  This will result in IFC4 files that use IfcTriangulatedFaceSet instead of IfcFacetedBRep, resulting in significantly smaller IFC files.  There are still some cases where IfcFacetedBReps show up in these files, and there are some cases where the tessellation isn’t optimized for the reference view; this will be improved in upcoming releases.

Export Bug Fixes:

– Update the French resources file that prevented IFC export from working on computers with a French OS.

It hasn’t shown up on Exchange yet, but it is already available for download on the Sourceforge page. There is an update to IFC 2015 (the one that is really robust, fast and accurate for Import and Export), and also some updates to 2014 IFC addins.

Direct link to the MSI installer for Revit 2015

Some of my testing:
30% file size reduction in RVT when using Link IFC on 85mb steel model from Tekla v16.1
v15.1.0 = 297mb
v15.2.0 = 210mb

66% file size increase in IFC when using export IFC to all proxies:
v15.1.0 = 288mb
v15.2.0 = 478mb

Some key Export improvements from the readme (I’ve underlined points of interest):
The functionality for creating and using user-defined property sets has been greatly enhanced. This includes:
– Added a “DefaultUserDefinedParameterSets.txt” file to allow a user to create user-defined property sets for any setup, including the in-session setup.
– Added the “IFC2x3 Extended FM Handover View.txt” user-defined property sets file to the installation. This also fixes a typo in the original version.
– Allow the user to specify any file as a user-defined property set file, instead of being forced to use the default name and location.
– Increased the types of fields that can be used from the original 4. The full list is detailed in the DefaultUserDefinedParameterSets.txt file.
– The Setup dialog for the export alternate UI has been split into 3 tabbed pages to make it easier to find and understand the export options.

– Significantly improve performance when trying to export a highly-tessellated geometry.

New Import Functionality:

– Add an “IfcMaterial” field that contains the material name(s) associated with the element.
– Add an “IfcSpatialContainer” field that contains the name of the project, building, building story or space that contains the element.
– Create multiple layers for simple cases of elements where IfcMateralLayerSetUsage is defined.
Import IfcGrids. There are some fundamental differences between IFC and Revit Grids, most notably that IFC grids are per-view, and Revit Grids are per-model. As such, there may be cases where some grid lines show up in more views than initially designated in the IFC file.
– Improve healing and logging of imported solid data that is slightly dirty. This should result in fewer missing objects.

Import Bug Fixes:
Fix “missing” faces when elements were cut by openings and the IfcOpeningElement sub-category had its visibility turned off.
– Handle unbound circles used for profile definitions in certain cases.

Heads-up https://twitter.com/digiacomoemma/status/517072219739291648

An interesting discussion has been brewing over on LinkedIn about IFC Export from Revit. In my personal experience, the most predictable results come from deleting the IfcExportAs parameter and using the IFC mapping files to force the export result. However, this may not be the best path for data longevity and roundtripping.

Here is one little excerpt from Wawan Solihin:
The use of IfcExportAs is more suited for mapping detailed subtype or predefined type of MEP components that are mostly defined by families and often they do not correspond 1-1 nicely with IFC definitions. So instead of getting a generic IfcBuildingElementProxy for a family type that does not have clear mapping to the IFC entity, one can use IfcExporAs to define the IFC type it is intended to be plus its subtype for example IfcSensorType.CO2SENSOR that will create IFC entity IfcDistributionControlElement with type IfcSensorType and predefinedtype=’CO2SESNSOR’ in IFC2x3 (or entity IfcSensor in IFC4). This is just one example. There are other entities in IFC that must have mandatory attribute set, e.g. IfcReinforcingMesh which has several mandatory attributes such as LongitudinalBarNominalDiameter. Unless those attributes are set and Revit IfcExporter knows where to get the relevant information, you will get invalid entity information in IFC.

Read the whole thread:
http://www.linkedin.com/groups/Revit-IFC-Exports-3690870%2ES%2E5891816567016034308

Heads up via @theoryshaw

IFC Exporter for Revit 2014 (v3.11):
http://apps.exchange.autodesk.com/RVT/en/Detail/Index?id=appstore.exchange.autodesk.com%3aifcexporterforrevit2014%3aen

IFC Export Alternate UI for Revit 2014 (v2.11):
http://apps.exchange.autodesk.com/RVT/en/Detail/Index?id=appstore.exchange.autodesk.com%3arevitifcexportalternateui2014%3aen

IFC for Revit 2015 (v15.1):
http://apps.exchange.autodesk.com/RVT/en/Detail/Index?id=appstore.exchange.autodesk.com%3aifc2015_windows32and64%3aen

Updates from the previous version are listed below.  Please upgrade to the newest version!

If you do not wish to receive upgrade notices, please reply and I will remove you from the mailing list.

NOTES:
1.       IFC Exporter for Revit 2013 will no longer be getting regular updates.  IFC Exporter for Revit 2014 will continue to do so for the next year

via email from Angel Velez

IFC Exporter for Revit 2014 (v3.10):
IFC for Revit 2015 (v15.0.2):

direct for 2015

(note – the 15 part of the versioning now matches the Revit version ie. 2015)

via email

Its already across the Twitterverse, but in case you missed it:

2013:
IFC Exporter for Revit 2013 (v2.16):
IFC Export Alternate UI for Revit 2013 (v1.16):
2014:
IFC Exporter for Revit 2014 (v3.8):
IFC Export Alternate UI for Revit 2014 (v2.8):

2013:
IFC Exporter 2013 (v2.15.1):
http://apps.exchange.autodesk.com/RVT/Detail/Index?id=appstore.exchange.autodesk.com%3aifcexporterforrevit%3aen

IFC Export Alternate UI for Revit 2013 (v1.13):
http://apps.exchange.autodesk.com/RVT/Detail/Index?id=appstore.exchange.autodesk.com%3arevitifcexportalternateui%3aen

2014:
IFC Exporter 2014 (v3.7.1):
http://apps.exchange.autodesk.com/RVT/Detail/Index?id=appstore.exchange.autodesk.com%3aifcexporterforrevit2014%3aen

IFC Export Alternate UI for Revit 2014 (v2.5):
http://apps.exchange.autodesk.com/RVT/Detail/Index?id=appstore.exchange.autodesk.com%3arevitifcexportalternateui2014%3aen

via email

2013:
IFC Exporter for Revit 2013 (v2.13): *NEW*
IFC Export Alternate UI for Revit 2013 (v1.12):
2014:
IFC Exporter for Revit 2014 (v3.6): *NEW*
IFC Export Alternate UI for Revit 2014 (v2.5): *Hotfix for installer crash*
2013:
IFC Exporter for Revit 2013 (v2.13):
IFC Export Alternate UI for Revit 2013 (v1.13):
2014:
IFC Exporter for Revit 2014 (v3.5):
IFC Export Alternate UI for Revit 2014 (v2.5):
What’s new for IFC Exporter for Revit v2.13/v3.5:
General
– Initialize GUIDOptions so that GUIDUtil.CreateGUID(element) can be used outside of the exporter code.
– Remove filterView argument from many functions; used cached value instead.
– Various minor optimizations to slightly improve the time to export.
New Functionality
– (R2014 only) IFC4: Allow export of 0 thickness material layers.
– (R2014 only) IFC4: Export IfcFootingType (IFC2x3: use IfcTypeObject instead) for wall-based footings only.
– Allow export schedules as custom property sets.  The name of the schedule is the property set name; the column names are the IFC parameter names.
– Allow export of solid models, which allow for mixing Brep and extrusion geometries for an entity.  This can result in smaller IFC files.
– Export IfcCurtainWallType (IFC2x2: use IfcTypeObject instead).
– Export the currently selected non-primary design option when exporting in current view only mode.
– Use the base level parameter of an element to determine which level to associate the element to; use geometric containment only for cases where this is no base level.
Bug Fixes
– Don’t export some extraneous local placements.
– Don’t export type if instance isn’t exported for family.
– Fix Pset_CoveringCommon: Thickness -> TotalThickness
– Generic rework of how instance and type properties are assigned to IFC entities.  If an exported entity has a related type object, then the entity will have the instance properties assigned, and the type object the type properties.  If there is no type object, the exported entity will contain both instance and type properties.  This should also remove any repetition of exported property sets.
– Look at all “ZoneName X” shared parameters for a room even if some have no value.  This still assumes that they are sequential (i.e., if there is no “ZoneName 4” shared parameter at all, “ZoneName 5” will not be processed).
– Prevent export of IfcPolyLoops with less than 3 vertices.
– Properly scale all known Revit parameter types to the units specified for the IFC file.  Note that there are potentially many Revit parameter types that map to one unit type (e.g., PipeSize, WireSize, and Length are both length parameters); we do not create different units for each of these, but instead use the main unit type.
– Respect visibility options of curtain wall panels and mullions when exporting in current view only mode.
– Use category id as default for IfcCoverings for ceilings, floors, and roofs.
What’s new for IFC Export Alternate UI for Revit v1.13/v2.5:
New Functionality
– Add UI version number to title of the IFC Export dialog box.
– Add option to export schedules as custom property sets.  The name of the schedule is the property set name; the column names are the IFC parameter names.
– Add option to export solid models, which allow for mixing BRep and extrusion geometries for an entity.  This can result in smaller IFC files.
– Remove option to disable surface styles on export.
– Remove option to export advanced swept solids.

via email