From 039cacbfde2d080cf54cd1e442f9e7a5f3c37093 Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Sun, 9 Nov 2014 17:27:37 -0200 Subject: [PATCH] Arch: fixed encoding problem in Survey tool - fixes #1821 --- src/Mod/Arch/ArchCommands.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Mod/Arch/ArchCommands.py b/src/Mod/Arch/ArchCommands.py index bd4992b7c8..64521c179c 100644 --- a/src/Mod/Arch/ArchCommands.py +++ b/src/Mod/Arch/ArchCommands.py @@ -712,18 +712,19 @@ def survey(callback=False): if o.Object.Shape.Solids: t = FreeCAD.Units.Quantity(o.Object.Shape.Volume,FreeCAD.Units.Volume) t = t.getUserPreferred()[0] - t = t.replace("^3","³") + t = t.encode("utf8").replace("^3","³") anno.LabelText = "v " + t FreeCAD.Console.PrintMessage("Object: " + n + ", Element: Whole, Volume: " + t.decode("utf8") + "\n") elif o.Object.Shape.Faces: t = FreeCAD.Units.Quantity(o.Object.Shape.Area,FreeCAD.Units.Area) t = t.getUserPreferred()[0] - t = t.replace("^2","²") + t = t.encode("utf8").replace("^2","²") anno.LabelText = "a " + t FreeCAD.Console.PrintMessage("Object: " + n + ", Element: Whole, Area: " + t.decode("utf8") + "\n") else: t = FreeCAD.Units.Quantity(o.Object.Shape.Length,FreeCAD.Units.Length) t = t.getUserPreferred()[0] + t = t.encode("utf8") anno.LabelText = "l " + t FreeCAD.Console.PrintMessage("Object: " + n + ", Element: Whole, Length: " + t + "\n") if FreeCAD.GuiUp and t: @@ -745,17 +746,18 @@ def survey(callback=False): if "Face" in el: t = FreeCAD.Units.Quantity(e.Area,FreeCAD.Units.Area) t = t.getUserPreferred()[0] - t = t.replace("^2","²") + t = t.encode("utf8").replace("^2","²") anno.LabelText = "a " + t FreeCAD.Console.PrintMessage("Object: " + n + ", Element: " + el + ", Area: "+ t.decode("utf8") + "\n") elif "Edge" in el: t = FreeCAD.Units.Quantity(e.Length,FreeCAD.Units.Length) - t = t.getUserPreferred()[0] + t = t.encode("utf8").getUserPreferred()[0] anno.LabelText = "l " + t FreeCAD.Console.PrintMessage("Object: " + n + ", Element: " + el + ", Length: " + t + "\n") elif "Vertex" in el: t = FreeCAD.Units.Quantity(e.Z,FreeCAD.Units.Length) t = t.getUserPreferred()[0] + t = t.encode("utf8") anno.LabelText = "z " + t FreeCAD.Console.PrintMessage("Object: " + n + ", Element: " + el + ", Zcoord: " + t + "\n") if FreeCAD.GuiUp and t: