From: daid Date: Wed, 16 May 2012 13:10:30 +0000 (+0200) Subject: Add an extra line on the first jorised line, so we get rid of the gap and create... X-Git-Tag: RC4~14 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=dd8b5b52baddcbfe096454296047eec94de21c77;p=cura.git Add an extra line on the first jorised line, so we get rid of the gap and create a watertight result. --- diff --git a/Cura/cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins/joris.py b/Cura/cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins/joris.py index 8c128d32..64d6bfcb 100644 --- a/Cura/cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins/joris.py +++ b/Cura/cura_sf/skeinforge_application/skeinforge_plugins/craft_plugins/joris.py @@ -101,6 +101,7 @@ class JorisSkein: self.perimeter = None self.oldLocation = None self.doJoris = False + self.firstLayer = True def getCraftedGcode( self, gcodeText, repository ): 'Parse gcode text and store the joris gcode.' @@ -172,13 +173,26 @@ class JorisSkein: p = point #Build the perimeter with an increasing Z over the length. + if self.firstLayer: + #On the first layer, we need to create an extra jorised perimeter, else we create a gap at the end of the perimeter. + print "*************" + p = self.oldLocation.dropAxis() + length = 0; + self.distanceFeedRate.addLine('M101') # Turn extruder on. + for point in self.perimeter: + length += abs( point - p ); + p = point + self.distanceFeedRate.addGcodeMovementZWithFeedRate(self.feedRateMinute, point, self.oldLocation.z - self.layerThickness + self.layerThickness * length / perimeterLength) + self.distanceFeedRate.addLine('M103') # Turn extruder off. + self.firstLayer = False + p = self.oldLocation.dropAxis() - len = 0; + length = 0; self.distanceFeedRate.addLine('M101') # Turn extruder on. for point in self.perimeter: - len += abs( point - p ); + length += abs( point - p ); p = point - self.distanceFeedRate.addGcodeMovementZWithFeedRate(self.feedRateMinute, point, self.oldLocation.z + self.layerThickness * len / perimeterLength) + self.distanceFeedRate.addGcodeMovementZWithFeedRate(self.feedRateMinute, point, self.oldLocation.z + self.layerThickness * length / perimeterLength) self.distanceFeedRate.addLine('M103') # Turn extruder off. self.perimeter = None