From bb854f65b793693be97807167e2a43b6074638ee Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Wed, 11 Jan 2012 12:54:40 -0200 Subject: [PATCH] fixed display of Draft offset ghost in OCC mode --- src/Mod/Draft/DraftTools.py | 3 ++- src/Mod/Draft/DraftTrackers.py | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Mod/Draft/DraftTools.py b/src/Mod/Draft/DraftTools.py index fce0992e7..8d2fabcc8 100644 --- a/src/Mod/Draft/DraftTools.py +++ b/src/Mod/Draft/DraftTools.py @@ -2114,7 +2114,8 @@ class Offset(Modifier): v2 = fcgeo.getTangent(self.shape.Edges[dist[1]],point) a = -fcvec.angle(v1,v2) self.dvec = fcvec.rotate(d,a,plane.axis) - self.ghost.update(fcgeo.offsetWire(self.shape,self.dvec,occ=self.ui.occOffset.isChecked())) + occmode = self.ui.occOffset.isChecked() + self.ghost.update(fcgeo.offsetWire(self.shape,self.dvec,occ=occmode),forceclosed=occmode) elif self.mode == "Circle": self.dvec = point.sub(self.center).Length self.ghost.setRadius(self.dvec) diff --git a/src/Mod/Draft/DraftTrackers.py b/src/Mod/Draft/DraftTrackers.py index 7311d23f5..c071f6ef1 100644 --- a/src/Mod/Draft/DraftTrackers.py +++ b/src/Mod/Draft/DraftTrackers.py @@ -505,16 +505,16 @@ class wireTracker(Tracker): self.update(wire) Tracker.__init__(self,children=[self.coords,self.line]) - def update(self,wire): + def update(self,wire,forceclosed=False): if wire: - if self.closed: + if self.closed or forceclosed: self.line.numVertices.setValue(len(wire.Vertexes)+1) else: self.line.numVertices.setValue(len(wire.Vertexes)) for i in range(len(wire.Vertexes)): p=wire.Vertexes[i].Point self.coords.point.set1Value(i,[p.x,p.y,p.z]) - if self.closed: + if self.closed or forceclosed: t = len(wire.Vertexes) p = wire.Vertexes[0].Point self.coords.point.set1Value(t,[p.x,p.y,p.z])