From 783ec34967454766d4cb497aece281dd86746b74 Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Fri, 26 Aug 2016 15:10:33 -0300 Subject: [PATCH] Minor bugfixes in Arch & Draft --- src/Mod/Arch/ArchEquipment.py | 3 +++ src/Mod/Draft/Draft.py | 7 +++++-- src/Mod/Draft/DraftTools.py | 5 +++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/Mod/Arch/ArchEquipment.py b/src/Mod/Arch/ArchEquipment.py index ea1c67edb..6562ce440 100644 --- a/src/Mod/Arch/ArchEquipment.py +++ b/src/Mod/Arch/ArchEquipment.py @@ -299,11 +299,14 @@ class _ViewProviderEquipment(ArchComponent.ViewProviderComponent): sep = coin.SoSeparator() self.coords = coin.SoCoordinate3() sep.addChild(self.coords) + self.coords.point.deleteValues(0) symbol = coin.SoMarkerSet() symbol.markerIndex = coin.SoMarkerSet.CIRCLE_FILLED_5_5 sep.addChild(symbol) rn = vobj.RootNode rn.addChild(sep) + ArchComponent.ViewProviderComponent.attach(self,vobj) + def updateData(self, obj, prop): if prop == "SnapPoints": diff --git a/src/Mod/Draft/Draft.py b/src/Mod/Draft/Draft.py index 505967df1..8d27270de 100644 --- a/src/Mod/Draft/Draft.py +++ b/src/Mod/Draft/Draft.py @@ -4522,8 +4522,11 @@ class _ViewProviderWire(_ViewProviderDraft): self.coords.scaleFactor.setValue((s,s,s)) rn.addChild(self.pt) else: - self.pt.removeChild(self.symbol) - rn.removeChild(self.pt) + if self.symbol: + if self.pt.findChild(self.symbol) != -1: + self.pt.removeChild(self.symbol) + if rn.findChild(self.pt) != -1: + rn.removeChild(self.pt) _ViewProviderDraft.onChanged(self,vobj,prop) return diff --git a/src/Mod/Draft/DraftTools.py b/src/Mod/Draft/DraftTools.py index 44cf592cb..69ff8ed3e 100644 --- a/src/Mod/Draft/DraftTools.py +++ b/src/Mod/Draft/DraftTools.py @@ -4608,8 +4608,9 @@ class Draft_Slope(): if not lp: lp = p else: - z = pc*FreeCAD.Vector(p.x,p.y,lp.z).Length - lp = FreeCAD.Vector(p.x,p.y,z) + v = p.sub(lp) + z = pc*FreeCAD.Vector(v.x,v.y,0).Length + lp = FreeCAD.Vector(p.x,p.y,lp.z+z) np.append(lp) obj.Points = np FreeCAD.ActiveDocument.commitTransaction()