Skip to content

Commit 1fef0c8

Browse files
authored
Merge pull request #834 from Autodesk/babio/23_4_1_update
IFC 23.4.1 update
2 parents b27a1b9 + 90282fe commit 1fef0c8

26 files changed

+138
-49
lines changed
Binary file not shown.

Install/Program Files to Install/bundle/Contents/Resources/ADSKIFCExporterHelp.htm

+18
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,24 @@ <h3>Support Information</h3>
237237
<h2 id="VersionHistory" name="VersionHistory">Version History</h2>
238238

239239
<div class="versionset">
240+
<div class="version">23.4.1.0</div><div class="versioninfo-bullet">
241+
<br><p>
242+
General:
243+
<ul>
244+
<li>This is the minor update of IFC Exporter for Revit 2023.
245+
</ul>
246+
</p>
247+
<br>
248+
<p>
249+
Improvements:
250+
<ul>
251+
<li>Fixed an unexpected export error using RCE.
252+
<li>Implemented an option that allows to export type properties along with instance properties.
253+
<li>Newtonsoft.Json version updated.
254+
</ul>
255+
</p>
256+
<br>
257+
</div>
240258
<div class="version">23.4.0.0</div><div class="versioninfo-bullet">
241259
<br><p>
242260
General:
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<ApplicationPackage SchemaVersion="1.0" AutodeskProduct="Revit" ProductType="Application" Name="IFC Exporter for Revit" AppVersion="23.4.0.0" Description="This application seamlessly replaces the built-in IFC export capabilities of Revit 2023. " Author="Autodesk" Icon=".\Contents\Resources\IFCExporter.png" AppNameSpace="appstore.exchange.autodesk.com" OnlineDocumentation="http://www.autodesk.com" HelpFile=".\Contents\Resources\ADSKIFCExporterHelp.htm" ProductCode="{40527B9C-60B8-407E-BF56-7AAA67F07ACA}" UpgradeCode="{A27E008E-2278-4F84-BB3B-59C605168900}" SupportedLocales="Enu">
2+
<ApplicationPackage SchemaVersion="1.0" AutodeskProduct="Revit" ProductType="Application" Name="IFC Exporter for Revit" AppVersion="23.4.1.0" Description="This application seamlessly replaces the built-in IFC export capabilities of Revit 2023. " Author="Autodesk" Icon=".\Contents\Resources\IFCExporter.png" AppNameSpace="appstore.exchange.autodesk.com" OnlineDocumentation="http://www.autodesk.com" HelpFile=".\Contents\Resources\ADSKIFCExporterHelp.htm" ProductCode="{40527B9C-60B8-407E-BF56-7AAA67F07ACA}" UpgradeCode="{A27E008E-2278-4F84-BB3B-59C605168900}" SupportedLocales="Enu">
33
<CompanyDetails Name="Autodesk, Inc." Phone=" " Url="http://www.autodesk.com" Email="[email protected]" />
44
<RuntimeRequirements OS="Win64" Platform="Revit" SeriesMin="R2023" SeriesMax="R2023" />
55
<Components Description="2023">
66
<RuntimeRequirements OS="Win64" Platform="Revit" SeriesMin="R2023" SeriesMax="R2023" />
7-
<ComponentEntry AppName="IFC For Revit 2023" Version="23.4.0" ModuleName="./Contents/2023/IFCExporterUIOverride.addin" AppDescription="IFC For Revit 2023" />
8-
<ComponentEntry AppName="IFC For Revit 2023" Version="23.4.0" ModuleName="./Contents/2023/Revit.IFC.addin" AppDescription="IFC For Revit 2023" />
7+
<ComponentEntry AppName="IFC For Revit 2023" Version="23.4.1" ModuleName="./Contents/2023/IFCExporterUIOverride.addin" AppDescription="IFC For Revit 2023" />
8+
<ComponentEntry AppName="IFC For Revit 2023" Version="23.4.1" ModuleName="./Contents/2023/Revit.IFC.addin" AppDescription="IFC For Revit 2023" />
99
</Components>
1010
</ApplicationPackage>

Install/RevitIFCSetupWix/Product.wxs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
33
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
44

5-
<Product Id="1A9C2C21-2340-42D2-0000-992E73C12300" Name="Revit IFC 2023" Language="1033" Version="23.4.0.0" Manufacturer="Autodesk" UpgradeCode="1A9C2C21-23B8-42D2-0000-992E73C11B3F">
5+
<Product Id="1A9C2C21-2341-42D2-0000-992E73C12300" Name="Revit IFC 2023" Language="1033" Version="23.4.1.0" Manufacturer="Autodesk" UpgradeCode="1A9C2C21-23B8-42D2-0000-992E73C11B3F">
66
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
77

88
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />

Install/RevitIFCSetupWix/RevitIFCSetupWix.wixproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<ProductVersion>3.8</ProductVersion>
77
<ProjectGuid>7dfbd495-c588-4c7b-b8f6-5b793adb06f2</ProjectGuid>
88
<SchemaVersion>2.0</SchemaVersion>
9-
<OutputName>IFC for Revit 2023.4.0.0</OutputName>
9+
<OutputName>IFC for Revit 2023.4.1.0</OutputName>
1010
<OutputType>Package</OutputType>
1111
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
1212
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>

Install/RevitIFCSetupWix/buildInstaller.bat

+4-4
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ rem It is necessary to add the Wix bin directory to the system path temporarily
1111
SET PATH=%PATH%;%WixRoot%
1212

1313
candle.exe -dProjectDir=%2 -ext WixUtilExtension %2Product.wxs
14-
light.exe -ext WixUtilExtension -out RevitIFC2023.4.0.msi product.wixobj -ext WixUIExtension
14+
light.exe -ext WixUtilExtension -out RevitIFC2023.4.1.msi product.wixobj -ext WixUIExtension
1515

16-
copy RevitIFC2023.4.0.msi %1..\Releasex64
17-
del RevitIFC2023.4.0.msi
16+
copy RevitIFC2023.4.1.msi %1..\Releasex64
17+
del RevitIFC2023.4.1.msi
1818

19-
echo %1..\Releasex64\RevitIFC2023.4.0.msi
19+
echo %1..\Releasex64\RevitIFC2023.4.1.msi

Source/IFCExporterUIOverride/IFCExportConfiguration.cs

+7
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,11 @@ public KnownERNames ExchangeRequirement
193193
/// </summary>
194194
public string ExportUserDefinedPsetsFileName { get; set; } = "";
195195

196+
/// <summary>
197+
/// Whether or not to include type property to the user defined property sets.
198+
/// </summary>
199+
public bool UseTypePropertiesInInstacePSets { get; set; } = false;
200+
196201
/// <summary>
197202
/// True if the User decides to use the Parameter Mapping Table
198203
/// False if the user decides to ignore it
@@ -434,6 +439,7 @@ public static IFCExportConfiguration CreateBuiltInConfiguration(IFCVersion ifcVe
434439
bool materialPsets,
435440
bool schedulesAsPSets,
436441
bool userDefinedPSets,
442+
bool useTypePropertiesInInstacePSets,
437443
bool userDefinedParameterMapping,
438444
bool PlanElems2D,
439445
bool exportBoundingBox,
@@ -471,6 +477,7 @@ public static IFCExportConfiguration CreateBuiltInConfiguration(IFCVersion ifcVe
471477
configuration.ExportMaterialPsets = materialPsets;
472478
configuration.ExportSchedulesAsPsets = schedulesAsPSets;
473479
configuration.ExportUserDefinedPsets = userDefinedPSets;
480+
configuration.UseTypePropertiesInInstacePSets = useTypePropertiesInInstacePSets;
474481
configuration.ExportUserDefinedPsetsFileName = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\" + configuration.Name + @".txt";
475482
configuration.ExportUserDefinedParameterMapping = userDefinedParameterMapping;
476483

Source/IFCExporterUIOverride/IFCExportConfigurationsMap.cs

+15-11
Original file line numberDiff line numberDiff line change
@@ -75,22 +75,22 @@ public void AddBuiltInConfigurations()
7575
{
7676
// These are the built-in configurations. Provide a more extensible means of storage.
7777
// Order of construction: name, version, space boundaries, QTO, split walls, internal sets, 2d elems, boundingBox
78-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3CV2, 0, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true));
79-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3, 1, false, false, true, false, false, false, false, true, false, false, includeSteelElements: true));
80-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFCCOBIE, 2, true, true, true, false, false, false, false, true, true, false, includeSteelElements: true));
81-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3BFM, 1, true, true, false, false, false, false, false, true, false, false, includeSteelElements: true));
82-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x2, 1, false, false, true, false, false, false, false, false, false, false));
83-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3FM, 1, true, false, false, false, true, true, false, true, true, false, includeSteelElements: true));
84-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4RV, 0, true, false, false, false, false, false, false, false, false, false, includeSteelElements: true,
78+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3CV2, 0, false, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true));
79+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3, 1, false, false, true, false, false, false, false, false, true, false, false, includeSteelElements: true));
80+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFCCOBIE, 2, true, true, true, false, false, false, false, false, true, true, false, includeSteelElements: true));
81+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3BFM, 1, true, true, false, false, false, false, false, false, true, false, false, includeSteelElements: true));
82+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x2, 1, false, false, true, false, false, false, false, false, false, false, false));
83+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC2x3FM, 1, true, false, false, false, true, true, false, false, true, true, false, includeSteelElements: true));
84+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4RV, 0, true, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true,
8585
exchangeRequirement:KnownERNames.Architecture));
86-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4RV, 0, true, false, false, false, false, false, false, false, false, false, includeSteelElements: true,
86+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4RV, 0, true, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true,
8787
exchangeRequirement:KnownERNames.Structural));
88-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4RV, 0, true, false, false, false, false, false, false, false, false, false, includeSteelElements: true,
88+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4RV, 0, true, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true,
8989
exchangeRequirement:KnownERNames.BuildingService));
90-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4DTV, 0, true, false, false, false, false, false, false, false, false, false, includeSteelElements: true));
90+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(IFCVersion.IFC4DTV, 0, true, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true));
9191
//Handling the IFC4x3 format for using the IFC Extension with Revit versions older than 2023.1 which does not support IFC4x3.
9292
if(OptionsUtil.IsIFC4x3Supported())
93-
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(OptionsUtil.GetIFCVersionByName("IFC4x3"), 0, true, false, false, false, false, false, false, false, false, false, includeSteelElements: true));
93+
AddOrReplace(IFCExportConfiguration.CreateBuiltInConfiguration(OptionsUtil.GetIFCVersionByName("IFC4x3"), 0, true, false, false, false, false, false, false, false, false, false, false, includeSteelElements: true));
9494
}
9595

9696
/// <summary>
@@ -146,6 +146,9 @@ public void AddSavedConfigurations()
146146
Field fieldExportUserDefinedPsetsFileName = m_OldSchema.GetField(s_setupExportUserDefinedPsetsFileName);
147147
if (fieldExportUserDefinedPsetsFileName != null)
148148
configuration.ExportUserDefinedPsetsFileName = configEntity.Get<string>(s_setupExportUserDefinedPsetsFileName);
149+
Field fieldUseTypePropertiesInInstacePSets = m_OldSchema.GetField(s_setupUseTypePropertiesInInstacePSets);
150+
if (fieldExportUserDefinedPsets != null)
151+
configuration.UseTypePropertiesInInstacePSets = configEntity.Get<bool>(s_setupUseTypePropertiesInInstacePSets);
149152

150153
Field fieldExportUserDefinedParameterMapingTable = m_OldSchema.GetField(s_setupExportUserDefinedParameterMapping);
151154
if (fieldExportUserDefinedParameterMapingTable != null)
@@ -371,6 +374,7 @@ public void AddSavedConfigurations()
371374
private const string s_setupExportUserDefinedPsetsFileName = "ExportUserDefinedPsetsFileName";
372375
private const string s_setupExportUserDefinedParameterMapping = "ExportUserDefinedParameterMapping";
373376
private const string s_setupExportUserDefinedParameterMappingFileName = "ExportUserDefinedParameterMappingFileName";
377+
private const string s_setupUseTypePropertiesInInstacePSets = "UseTypePropertiesInInstacePSets";
374378
private const string s_setupExportLinkedFiles = "ExportLinkedFiles";
375379
private const string s_setupIncludeSiteElevation = "IncludeSiteElevation";
376380
private const string s_setupTessellationLevelOfDetail = "TessellationLevelOfDetail";

Source/IFCExporterUIOverride/IFCExporterUIWindow.xaml

+6-5
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,12 @@
5656
<CheckBox Content="{x:Static p:Resources.ExportSchedulesAsPropertySets}" Margin="10,91,0,0" x:Name="checkboxExportSchedulesAsPsets" VerticalAlignment="Top" Checked="checkboxExportSchedulesAsPsets_Checked" Unchecked="checkboxExportSchedulesAsPsets_Checked" Height="16" HorizontalAlignment="Left" Width="588" Grid.ColumnSpan="2" />
5757
<CheckBox Content="{x:Static p:Resources.ExportSpecificSchedules}" Margin="30,112,0,0" x:Name="checkBoxExportSpecificSchedules" VerticalAlignment="Top" Checked="checkBoxExportSpecificSchedules_Checked" Unchecked="checkBoxExportSpecificSchedules_Checked" Height="16" HorizontalAlignment="Left" Width="568" Grid.ColumnSpan="2" />
5858
<CheckBox Content="{x:Static p:Resources.ExportUserDefinedPropertySets}" Margin="10,141,0,0" Height="16" x:Name="checkboxExportUserDefinedPset" VerticalAlignment="Top" Checked="checkboxExportUserDefinedPset_Checked" Unchecked="checkboxExportUserDefinedPset_Checked" HorizontalAlignment="Left" Width="588" Grid.ColumnSpan="2"/>
59-
<TextBox Height="23" Margin="30,162,0,0" x:Name="userDefinedPropertySetFileName" VerticalAlignment="Top" HorizontalAlignment="Left" Width="436" Grid.ColumnSpan="2" />
60-
<Button Content="{x:Static p:Resources.Browse}" x:Name="buttonBrowse" Width="107" IsDefault="True" Click="buttonBrowse_Click" Height="23" VerticalAlignment="Top" Margin="0,162,20,0" HorizontalAlignment="Right" Grid.Column="1"/>
61-
<CheckBox Content="{x:Static p:Resources.ExportUserDefinedParameterMappingTable}" Height="16" Margin="10,201,0,0" x:Name="checkBoxExportUserDefinedParameterMapping" VerticalAlignment="Top" Checked="checkBoxExportUserDefinedParameterMapping_Checked" Unchecked="checkBoxExportUserDefinedParameterMapping_Checked" HorizontalAlignment="Left" Width="588" Grid.ColumnSpan="2"/>
62-
<TextBox Height="23" Margin="30,222,0,0" x:Name="userDefinedParameterMappingTable" VerticalAlignment="Top" HorizontalAlignment="Left" Width="436" Grid.ColumnSpan="2"/>
63-
<Button Content="{x:Static p:Resources.Browse}" Margin="0,222,20,0" x:Name="buttonParameterMappingBrowse" Click="buttonParameterMappingBrowse_Click" Width="107" IsDefault="True" Height="23" VerticalAlignment="Top" HorizontalAlignment="Right" Grid.Column="1"/>
59+
<CheckBox Content="{x:Static p:Resources.UseTypePropertiesInInstacePSets}" Margin="30,162,0,0" x:Name="checkboxUseTypePropertiesInInstacePSets" VerticalAlignment="Top" Checked="checkboxUseTypePropertiesInInstacePSets_Checked" Unchecked="checkboxUseTypePropertiesInInstacePSets_Checked" HorizontalAlignment="Left" Width="568" Height="16" />
60+
<TextBox Height="23" Margin="30,183,0,0" x:Name="userDefinedPropertySetFileName" VerticalAlignment="Top" HorizontalAlignment="Left" Width="436" Grid.ColumnSpan="2" />
61+
<Button Content="{x:Static p:Resources.Browse}" x:Name="buttonBrowse" Width="107" IsDefault="True" Click="buttonBrowse_Click" Height="23" VerticalAlignment="Top" Margin="0,183,20,0" HorizontalAlignment="Right" Grid.Column="1"/>
62+
<CheckBox Content="{x:Static p:Resources.ExportUserDefinedParameterMappingTable}" Height="16" Margin="10,222,0,0" x:Name="checkBoxExportUserDefinedParameterMapping" VerticalAlignment="Top" Checked="checkBoxExportUserDefinedParameterMapping_Checked" Unchecked="checkBoxExportUserDefinedParameterMapping_Checked" HorizontalAlignment="Left" Width="588" Grid.ColumnSpan="2"/>
63+
<TextBox Height="23" Margin="30,243,0,0" x:Name="userDefinedParameterMappingTable" VerticalAlignment="Top" HorizontalAlignment="Left" Width="436" Grid.ColumnSpan="2"/>
64+
<Button Content="{x:Static p:Resources.Browse}" Margin="0,243,20,0" x:Name="buttonParameterMappingBrowse" Click="buttonParameterMappingBrowse_Click" Width="107" IsDefault="True" Height="23" VerticalAlignment="Top" HorizontalAlignment="Right" Grid.Column="1"/>
6465
<Button Content="{x:Static p:Resources.Classification}" Margin="10,0,0,10" Name="classificationButton" Click="buttonClassification_Click" Height="23" VerticalAlignment="Bottom" HorizontalAlignment="Left" Width="231"/>
6566
</Grid>
6667
</TabItem>

0 commit comments

Comments
 (0)