From fe0c92347d7ad4f777ed761577f0cacb26ed5cdb Mon Sep 17 00:00:00 2001 From: jhdempsey86 <67244422+jhdempsey86@users.noreply.github.com> Date: Wed, 24 Jul 2024 09:00:18 +0100 Subject: [PATCH] Fix: AppliedAssembly.AdjustedElevation error, and Single Point Featureline error (#3578) * Code now defaults AppliedAssembly.AdjustedElevation to double.MinValue if accessing that property throws an error. Adjusted FeatureLineToSpeckle so it only works on featurelines with more than 2 points, otherwise accessing he spline throws an error * Switched back to double.NaN * AdjustedElevation is now a double? type * Update ConverterAutocadCivil.Civil.cs --------- Co-authored-by: Claire Kuang --- .../ConverterAutocadCivil.Civil.cs | 13 ++++++++++++- .../BuiltElements/Civil/CivilAppliedAssembly.cs | 4 ++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/Objects/Converters/ConverterAutocadCivil/ConverterAutocadCivilShared/ConverterAutocadCivil.Civil.cs b/Objects/Converters/ConverterAutocadCivil/ConverterAutocadCivilShared/ConverterAutocadCivil.Civil.cs index 3459ea1499..4f2b16454f 100644 --- a/Objects/Converters/ConverterAutocadCivil/ConverterAutocadCivilShared/ConverterAutocadCivil.Civil.cs +++ b/Objects/Converters/ConverterAutocadCivil/ConverterAutocadCivilShared/ConverterAutocadCivil.Civil.cs @@ -1169,7 +1169,18 @@ private CivilAppliedAssembly AppliedAssemblyToSpeckle(AppliedAssembly appliedAss speckleSubassemblies.Add(speckleSubassembly); } - CivilAppliedAssembly speckleAppliedAssembly = new(speckleSubassemblies, appliedAssembly.AdjustedElevation, ModelUnits); + double? adjustedElevation = null; + try + { + adjustedElevation = appliedAssembly.AdjustedElevation; + } + catch (ArgumentException e) when (!e.IsFatal()) + { + // Do nothing. Leave the value as null. + } + + CivilAppliedAssembly speckleAppliedAssembly = new(speckleSubassemblies, adjustedElevation, ModelUnits); + return speckleAppliedAssembly; } diff --git a/Objects/Objects/BuiltElements/Civil/CivilAppliedAssembly.cs b/Objects/Objects/BuiltElements/Civil/CivilAppliedAssembly.cs index f490c643de..be99041904 100644 --- a/Objects/Objects/BuiltElements/Civil/CivilAppliedAssembly.cs +++ b/Objects/Objects/BuiltElements/Civil/CivilAppliedAssembly.cs @@ -9,7 +9,7 @@ public CivilAppliedAssembly() { } public CivilAppliedAssembly( List appliedSubassemblies, - double adjustedElevation, + double? adjustedElevation, string units ) { @@ -20,7 +20,7 @@ string units public List appliedSubassemblies { get; set; } - public double adjustedElevation { get; set; } + public double? adjustedElevation { get; set; } public string units { get; set; } }