def getCraftedGcode( self, prefaceRepository, gcodeText ): "Parse gcode text and store the bevel gcode." self.prefaceRepository = prefaceRepository self.svgReader.parseSVG('', gcodeText ) self.distanceFeedRate.decimalPlacesCarried = int( self.svgReader.sliceDictionary['decimalPlacesCarried'] ) self.addInitializationToOutput() for rotatedBoundaryLayerIndex, rotatedBoundaryLayer in enumerate(self.svgReader.rotatedLoopLayers): settings.printProgressByNumber(rotatedBoundaryLayerIndex, len(self.svgReader.rotatedLoopLayers), 'preface') self.addPreface( rotatedBoundaryLayer ) self.addShutdownToOutput() return self.distanceFeedRate.output.getvalue()
def getCraftedGcode( self, repository, gcodeText ): "Parse gcode text and store the bevel gcode." self.repository = repository self.svgReader.parseSVG('', gcodeText) if self.svgReader.sliceDictionary == None: print('Warning, nothing will be done because the sliceDictionary could not be found getCraftedGcode in preface.') return '' self.distanceFeedRate.decimalPlacesCarried = int(self.svgReader.sliceDictionary['decimalPlacesCarried']) self.addInitializationToOutput() for loopLayerIndex, loopLayer in enumerate(self.svgReader.loopLayers): settings.printProgressByNumber(loopLayerIndex, len(self.svgReader.loopLayers), 'preface') self.addPreface( loopLayer ) self.addShutdownToOutput() return self.distanceFeedRate.output.getvalue()
def getCraftedGcode(self, prefaceRepository, gcodeText): "Parse gcode text and store the bevel gcode." self.prefaceRepository = prefaceRepository self.svgReader.parseSVG('', gcodeText) self.distanceFeedRate.decimalPlacesCarried = int( self.svgReader.sliceDictionary['decimalPlacesCarried']) self.addInitializationToOutput() for rotatedBoundaryLayerIndex, rotatedBoundaryLayer in enumerate( self.svgReader.rotatedLoopLayers): settings.printProgressByNumber( rotatedBoundaryLayerIndex, len(self.svgReader.rotatedLoopLayers), 'preface') self.addPreface(rotatedBoundaryLayer) self.addShutdownToOutput() return self.distanceFeedRate.output.getvalue()
def addCoilLayers(self): "Add the coil layers." numberOfLayersFloat = round(self.perimeterWidth / self.layerThickness) numberOfLayers = int(numberOfLayersFloat) halfLayerThickness = 0.5 * self.layerThickness startOutset = self.repository.minimumToolDistance.value + halfLayerThickness startZ = self.boundaryLayers[0].z + halfLayerThickness zRange = self.boundaryLayers[-1].z - self.boundaryLayers[0].z zIncrement = 0.0 if zRange >= 0.0: zIncrement = zRange / numberOfLayersFloat for layerIndex in xrange(numberOfLayers): settings.printProgressByNumber(layerIndex, numberOfLayers, "coil") boundaryLayers = self.boundaryLayers if layerIndex % 2 == 1: boundaryLayers = self.boundaryReverseLayers radius = startOutset + layerIndex * self.layerThickness z = startZ + layerIndex * zIncrement self.addCoilLayer(boundaryLayers, radius, z)
def addCoilLayers(self): "Add the coil layers." numberOfLayersFloat = round(self.edgeWidth / self.layerHeight) numberOfLayers = int(numberOfLayersFloat) halfLayerThickness = 0.5 * self.layerHeight startOutset = self.repository.minimumToolDistance.value + halfLayerThickness startZ = self.boundaryLayers[0].z + halfLayerThickness zRange = self.boundaryLayers[-1].z - self.boundaryLayers[0].z zIncrement = 0.0 if zRange >= 0.0: zIncrement = zRange / numberOfLayersFloat for layerIndex in xrange(numberOfLayers): settings.printProgressByNumber(layerIndex, numberOfLayers, 'coil') boundaryLayers = self.boundaryLayers if layerIndex % 2 == 1: boundaryLayers = self.boundaryReverseLayers radius = startOutset + layerIndex * self.layerHeight z = startZ + layerIndex * zIncrement self.addCoilLayer(boundaryLayers, radius, z)
def getLoopLayerAppend(loopLayers, layerCount, z): 'Get next z and add extruder loops.' settings.printProgressByNumber(len(loopLayers), layerCount, 'slice') loopLayer = euclidean.LoopLayer(z) loopLayers.append(loopLayer) return loopLayer