Пример #1
0
 def getCraftedGcode(self, gcodeText, repository):
     'Parse gcode text and store the cool gcode.'
     self.repository = repository
     self.coolEndLines = settings.getAlterationFileLines(
         repository.nameOfCoolEndFile.value)
     self.coolStartLines = settings.getAlterationFileLines(
         repository.nameOfCoolStartFile.value)
     self.halfCorner = complex(repository.minimumOrbitalRadius.value,
                               repository.minimumOrbitalRadius.value)
     self.lines = archive.getTextLines(gcodeText)
     self.minimumArea = 4.0 * repository.minimumOrbitalRadius.value * repository.minimumOrbitalRadius.value
     self.minFeedrate = repository.minimumFeedRate.value * 60
     self.parseInitialization()
     self.boundingRectangle = gcodec.BoundingRectangle().getFromGcodeLines(
         self.lines[self.lineIndex:], 0.5 * self.edgeWidth)
     margin = 0.2 * self.edgeWidth
     halfCornerMargin = self.halfCorner + complex(margin, margin)
     self.boundingRectangle.cornerMaximum -= halfCornerMargin
     self.boundingRectangle.cornerMinimum += halfCornerMargin
     for self.lineIndex in xrange(self.lineIndex, len(self.lines)):
         line = self.lines[self.lineIndex]
         self.parseLine(line)
     if repository.turnFanOffAtEnding.value:
         self.distanceFeedRate.addLine('M107')
     return gcodec.getGcodeWithoutDuplication(
         'M108', self.distanceFeedRate.output.getvalue())
Пример #2
0
 def getCraftedGcode(self, gcodeText, coolRepository):
     "Parse gcode text and store the cool gcode."
     self.coolRepository = coolRepository
     self.coolEndText = settings.getFileInAlterationsOrGivenDirectory(
         os.path.dirname(__file__), 'Cool_End.gcode')
     self.coolEndLines = gcodec.getTextLines(self.coolEndText)
     self.coolStartText = settings.getFileInAlterationsOrGivenDirectory(
         os.path.dirname(__file__), 'Cool_Start.gcode')
     self.coolStartLines = gcodec.getTextLines(self.coolStartText)
     self.halfCorner = complex(coolRepository.minimumOrbitalRadius.value,
                               coolRepository.minimumOrbitalRadius.value)
     self.lines = gcodec.getTextLines(gcodeText)
     self.minimumArea = 4.0 * coolRepository.minimumOrbitalRadius.value * coolRepository.minimumOrbitalRadius.value
     self.parseInitialization()
     self.boundingRectangle = gcodec.BoundingRectangle().getFromGcodeLines(
         self.lines[self.lineIndex:], 0.5 * self.perimeterWidth)
     margin = 0.2 * self.perimeterWidth
     halfCornerMargin = self.halfCorner + complex(margin, margin)
     self.boundingRectangle.cornerMaximum -= halfCornerMargin
     self.boundingRectangle.cornerMinimum += halfCornerMargin
     for self.lineIndex in xrange(self.lineIndex, len(self.lines)):
         line = self.lines[self.lineIndex]
         self.parseLine(line)
     if coolRepository.turnFanOffAtEnding.value:
         self.distanceFeedRate.addLine('M107')
     return self.distanceFeedRate.output.getvalue()
Пример #3
0
	def getCraftedGcode( self, gcodeText, splodgeRepository ):
		"Parse gcode text and store the splodge gcode."
		self.lines = archive.getTextLines(gcodeText)
		self.setRotations()
		self.splodgeRepository = splodgeRepository
		self.parseInitialization( splodgeRepository )
		self.boundingRectangle = gcodec.BoundingRectangle().getFromGcodeLines( self.lines[self.lineIndex :], 0.5 * self.perimeterWidth )
		self.initialSplodgeFeedRateMinute = 60.0 * splodgeRepository.initialSplodgeFeedRate.value
		self.initialStartupDistance = splodgeRepository.initialSplodgeQuantityLength.value * splodgeRepository.initialSplodgeFeedRate.value / self.operatingFeedRatePerSecond
		self.operatingSplodgeFeedRateMinute = 60.0 * splodgeRepository.operatingSplodgeFeedRate.value
		self.operatingStartupDistance = splodgeRepository.operatingSplodgeQuantityLength.value * splodgeRepository.operatingSplodgeFeedRate.value / self.operatingFeedRatePerSecond
		for self.lineIndex in xrange( self.lineIndex, len(self.lines) ):
			line = self.lines[self.lineIndex]
			self.parseLine(line)
		return self.distanceFeedRate.output.getvalue()