From a0347ebc52fd7b0489d9841dfb687835b5f95df2 Mon Sep 17 00:00:00 2001 From: Lars Brubaker Date: Thu, 10 Jun 2021 11:34:25 -0700 Subject: [PATCH] Make sheets case insensitive --- MatterControlLib/DesignTools/Sheets/SheetData.cs | 10 +++++----- MatterControlLib/DesignTools/Sheets/SheetObject3D.cs | 9 +++++++-- Submodules/MatterSlice | 2 +- Submodules/agg-sharp | 2 +- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/MatterControlLib/DesignTools/Sheets/SheetData.cs b/MatterControlLib/DesignTools/Sheets/SheetData.cs index 5129b6a75..9d64a6224 100644 --- a/MatterControlLib/DesignTools/Sheets/SheetData.cs +++ b/MatterControlLib/DesignTools/Sheets/SheetData.cs @@ -63,7 +63,7 @@ namespace MatterHackers.MatterControl.DesignTools { expression = expression.Substring(1); } - var evaluator = new Expression(expression); + var evaluator = new Expression(expression.ToLower()); AddConstants(evaluator); var value = evaluator.calculate(); @@ -256,7 +256,7 @@ namespace MatterHackers.MatterControl.DesignTools { expression = "0" + expression; } - var evaluator = new Expression(expression); + var evaluator = new Expression(expression.ToLower()); AddConstants(evaluator); var value = evaluator.calculate(); if (double.IsNaN(value) @@ -265,10 +265,10 @@ namespace MatterHackers.MatterControl.DesignTools value = 0; } - constants.Add(CellId(xyc.x, xyc.y), value); - if (!string.IsNullOrEmpty(xyc.cell.Name)) + constants.Add(CellId(xyc.x, xyc.y).ToLower(), value); + if (!string.IsNullOrEmpty(xyc.cell.Name?.ToLower())) { - constants.Add(xyc.cell.Name, value); + constants.Add(xyc.cell.Name.ToLower(), value); } } diff --git a/MatterControlLib/DesignTools/Sheets/SheetObject3D.cs b/MatterControlLib/DesignTools/Sheets/SheetObject3D.cs index fe0a2fd1a..6c3b50748 100644 --- a/MatterControlLib/DesignTools/Sheets/SheetObject3D.cs +++ b/MatterControlLib/DesignTools/Sheets/SheetObject3D.cs @@ -67,7 +67,8 @@ namespace MatterHackers.MatterControl.DesignTools { get { - if (this.Children.Where(i => i.Mesh == null).Any()) + if (this.Children.Count == 0 + || this.Children.Where(i => i.Mesh == null).Any()) { this.Children.Modify((list) => { @@ -144,6 +145,10 @@ namespace MatterHackers.MatterControl.DesignTools AddItemsToList(sibling, updateItems, 0); } } + if (updateItems.Count == 0) + { + return; + } // sort them updateItems.Sort((a, b) => a.depth.CompareTo(b.depth)); @@ -276,7 +281,7 @@ namespace MatterHackers.MatterControl.DesignTools } // could not find a sheet, try to evaluate the expression directly - var evaluator = new Expression(inputExpression); + var evaluator = new Expression(inputExpression.ToLower()); return CastResult(evaluator.calculate().ToString(), inputExpression); } diff --git a/Submodules/MatterSlice b/Submodules/MatterSlice index 4f3afb009..d6c59b6bf 160000 --- a/Submodules/MatterSlice +++ b/Submodules/MatterSlice @@ -1 +1 @@ -Subproject commit 4f3afb00997203e206eebef6e1dfc5858b0a2fe1 +Subproject commit d6c59b6bf47221b485e96a13d25c85cdbec4bef6 diff --git a/Submodules/agg-sharp b/Submodules/agg-sharp index 0b4c79769..7e34c611d 160000 --- a/Submodules/agg-sharp +++ b/Submodules/agg-sharp @@ -1 +1 @@ -Subproject commit 0b4c79769aa23a62df17f10ec771c0bb95cdb352 +Subproject commit 7e34c611d8759b78e4336504b4eb7befcdab1bf0