Currently there is no information about what is the effect of changing the Exchange Requirement when exporting IFC4. Browsing the code the only clues I've found, that if it is Structural, then
/// <summary>
/// Identifies if the host element should be exported as parts.
/// If MVD is older then IFC4 we rely on ExportOptionsCache.ExportParts option.
/// If MVD is IFC4RV and if Exchange type is Structural we need to export Parts if they exist. If number of parts is 1 we need to export it as ShapeAspect and not as Part.
/// </summary>
/// <param name="hostElement">The host element.</param>
/// <param name="layersCount">The number of layers or parts the hostElemnt consists of.</param>
/// <returns>True if host element should be exported as parts, false otherwise.</returns>
public static bool ShouldExportParts(Element hostElement, int layersCount)
{
return hostElement != null && (ExporterCacheManager.ExportOptionsCache.ExportParts ||
(ExporterCacheManager.ExportOptionsCache.ExportAs4ReferenceView &&
ExporterCacheManager.ExportOptionsCache.ExchangeRequirement == KnownERNames.Structural &&
layersCount > 1));
}
Inquiry description
Currently there is no information about what is the effect of changing the Exchange Requirement when exporting IFC4. Browsing the code the only clues I've found, that if it is Structural, then
exports ramps as IFCSlabs: https://github.com/Autodesk/revit-ifc/blob/6498fbdae7f3889708ebded66d90ca829d165f82/Source/Revit.IFC.Export/Exporter/RampExporter.cs#L714
Are there anything else?
Revit Version
2024.0.x
IFC for Revit Addon Version
24.x.x
Windows Version
11 22H2