Ejemplo n.º 1
0
 def addFlowRateLine(self):
     "Add flow rate line."
     if not self.repository.addFlowRate.value:
         return
     flowRate = self.repository.flowRateSetting.value
     if self.isBridgeLayer:
         flowRate *= self.repository.bridgeFlowRateMultiplier.value
     if self.isEdgePath:
         flowRate *= self.repository.perimeterFlowRateMultiplier.value
     if self.layerIndex < self.repository.objectFirstLayersLayerAmount.value:
         if self.isEdgePath:
             flowRate *= (
                 (self.repository.
                  objectFirstLayerFlowRatePerimeterMultiplier.value *
                  (self.repository.objectFirstLayersLayerAmount.value -
                   self.layerIndex)) + self.layerIndex
             ) / self.repository.objectFirstLayersLayerAmount.value
         else:
             flowRate *= (
                 (self.repository.objectFirstLayerFlowRateInfillMultiplier.
                  value *
                  (self.repository.objectFirstLayersLayerAmount.value -
                   self.layerIndex)) + self.layerIndex
             ) / self.repository.objectFirstLayersLayerAmount.value
     if self.layerIndex == 0:
         flowRate *= self.repository.bottomLayerFlowRateMultiplier.value
     if flowRate != self.oldFlowRate:
         self.distanceFeedRate.addLine(
             'M108 S' + euclidean.getFourSignificantFigures(flowRate))
     self.oldFlowRate = flowRate
Ejemplo n.º 2
0
 def addFlowRateLine(self):
     "Add flow rate line."
     flowRate = self.flowRepository.flowRate.value
     if flowRate != self.oldFlowRate:
         self.distanceFeedRate.addLine(
             'M108 S' + euclidean.getFourSignificantFigures(flowRate))
     self.oldFlowRate = flowRate
Ejemplo n.º 3
0
 def addFlowRateLineIfDifferent(self, flowRate):
     'Add a line of temperature if different.'
     if flowRate == None or flowRate == self.oldFlowRateInput:
         return
     self.distanceFeedRate.addLine(
         'M108 S' + euclidean.getFourSignificantFigures(flowRate))
     self.oldFlowRateInput = flowRate
Ejemplo n.º 4
0
 def addFlowRateLine(self):
     "Add flow rate line."
     if not self.repository.addFlowRate.value:
         return
     flowRate = self.repository.flowRateSetting.value
     if self.isBridgeLayer:
         flowRate *= self.repository.bridgeFlowRateMultiplier.value
     if self.isEdgePath:
         flowRate *= self.repository.perimeterFlowRateMultiplier.value
     if self.layerIndex < self.repository.objectFirstLayersLayerAmount.value:
         if self.isEdgePath:
             flowRate *= (
                 (
                     self.repository.objectFirstLayerFlowRatePerimeterMultiplier.value
                     * (self.repository.objectFirstLayersLayerAmount.value - self.layerIndex)
                 )
                 + self.layerIndex
             ) / self.repository.objectFirstLayersLayerAmount.value
         else:
             flowRate *= (
                 (
                     self.repository.objectFirstLayerFlowRateInfillMultiplier.value
                     * (self.repository.objectFirstLayersLayerAmount.value - self.layerIndex)
                 )
                 + self.layerIndex
             ) / self.repository.objectFirstLayersLayerAmount.value
     if self.layerIndex == 0:
         flowRate *= self.repository.bottomLayerFlowRateMultiplier.value
     if flowRate != self.oldFlowRate:
         self.distanceFeedRate.addLine("M108 S" + euclidean.getFourSignificantFigures(flowRate))
     self.oldFlowRate = flowRate
Ejemplo n.º 5
0
	def addFlowRateLineIfNecessary( self, flowRate ):
		"Add a line of flow rate if different."
		flowRateString = euclidean.getFourSignificantFigures( flowRate )
		if flowRateString == self.oldFlowRateString:
			return
		if flowRateString != None:
			self.distanceFeedRate.addLine('M108 S' + flowRateString )
		self.oldFlowRateString = flowRateString
Ejemplo n.º 6
0
	def getFlowRateString(self):
		"Get the flow rate string."
		if not self.repository.addFlowRate.value:
			return None
		flowRate = self.repository.flowRateSetting.value
		if self.isBridgeLayer:
			flowRate *= self.repository.bridgeFlowRateMultiplier.value
		if self.isPerimeter:
			flowRate *= self.repository.perimeterFlowRateOverOperatingFlowRate.value
		return euclidean.getFourSignificantFigures( flowRate )
Ejemplo n.º 7
0
 def getFlowRateString(self):
     "Get the flow rate string."
     if not self.repository.addFlowRate.value:
         return None
     flowRate = self.repository.flowRateSetting.value
     if self.isBridgeLayer:
         flowRate *= self.repository.bridgeFlowRateMultiplier.value
     if self.isPerimeter:
         flowRate *= self.repository.perimeterFlowRateOverOperatingFlowRate.value
     return euclidean.getFourSignificantFigures(flowRate)
Ejemplo n.º 8
0
	def getFlowRateString(self):
		"""Get the flow rate string."""
		if not self.repository.addFlowRate.value:
			return None
		flowRate = self.repository.flowRateSettingScaler.value * self.mainFeed
		if self.isBridgeLayer:
			flowRate *= self.repository.bridgeFlowRateScaler.value * self.repository.bridgeFeedRateMultiplier.value
		if self.isPerimeterPath:
			flowRate = self.repository.perimeterFlowRateScaler.value * self.repository.perimeterFeedRate.value
		return euclidean.getFourSignificantFigures( flowRate )
Ejemplo n.º 9
0
	def getAccelerationRateString(self):
		"Get the Acceleration rate string."

		if not self.repository.addAccelerationRate.value:
			return None
		AccelerationRate = self.repository.AccelerationRateSetting.value
		if self.isBridgeLayer:
			AccelerationRate = self.repository.bridgeAccelerationRate.value
		if self.isPerimeterPath:
			AccelerationRate = self.repository.perimeterAccelerationRate.value
		return euclidean.getFourSignificantFigures( AccelerationRate )
Ejemplo n.º 10
0
    def getAccelerationRateString(self):
        "Get the Acceleration rate string."

        if not self.repository.addAccelerationRate.value:
            return None
        AccelerationRate = self.repository.AccelerationRateSetting.value
        if self.isBridgeLayer:
            AccelerationRate = self.repository.bridgeAccelerationRate.value
        if self.isPerimeterPath:
            AccelerationRate = self.repository.perimeterAccelerationRate.value
        return euclidean.getFourSignificantFigures(AccelerationRate)
Ejemplo n.º 11
0
	def addFlowRateLine(self):
		"Add flow rate line."
		if not self.repository.addFlowRate.value:
			return
		flowRate = self.repository.flowRateSetting.value
		if self.isBridgeLayer:
			flowRate *= self.repository.bridgeFlowRateMultiplier.value
		if self.isPerimeterPath:
			flowRate *= self.repository.perimeterFlowRateOverOperatingFlowRate.value
		if flowRate != self.oldFlowRate:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
		self.oldFlowRate = flowRate
Ejemplo n.º 12
0
	def addAccelerationRateLine(self):
		"Add Accelerationrate line."
		if not self.repository.addAccelerationRate.value:
			return
		accelerationRate = self.repository.accelerationRate.value
		if self.isBridgeLayer:
			accelerationRate = self.repository.bridgeAccelerationRate.value * self.repository.perimeterAccelerationRate.value
		if self.isPerimeterPath:
			accelerationRate = self.repository.perimeterAccelerationRate.value
		if accelerationRate != self.oldAccelerationRate:
			self.distanceFeedRate.addLine('M201 E' + euclidean.getFourSignificantFigures(accelerationRate))
		self.oldAccelerationRate = accelerationRate
Ejemplo n.º 13
0
 def addFlowRateLine(self):
     "Add flow rate line."
     if not self.repository.addFlowRate.value:
         return
     flowRate = self.repository.flowRateSetting.value
     if self.isBridgeLayer:
         flowRate *= self.repository.bridgeFlowRateMultiplier.value
     if self.isPerimeterPath:
         flowRate *= self.repository.perimeterFlowRateOverOperatingFlowRate.value
     if flowRate != self.oldFlowRate:
         self.distanceFeedRate.addLine(
             'M108 S' + euclidean.getFourSignificantFigures(flowRate))
     self.oldFlowRate = flowRate
Ejemplo n.º 14
0
	def getFlowRateString(self):
		"Get the flow rate string."
		nozzleXsection = (self.nozzleDiameter/2) ** 2 * math.pi
		extrusionXsection = ((self.absolutePerimeterWidth + self.layerThickness)/4) ** 2 * math.pi#todo transfer to inset
		#print('Nozzle' ,self.layerThickness ,'pw', self.absolutePerimeterWidth )
		#print('LH' ,nozzleXsection ,'xtr', extrusionXsection )
		if not self.repository.addFlowRate.value:
			return None
		flowRate = self.repository.flowRateSetting.value * self.feedRatePerSecond
		if self.isBridgeLayer:
			flowRate = (self.repository.bridgeFlowRateMultiplier.value * self.repository.bridgeFeedRateMultiplier.value) * (self.repository.perimeterFlowRateOverOperatingFlowRate.value * self.repository.perimeterFeedRateOverOperatingFeedRate.value) * (nozzleXsection / extrusionXsection)
		if self.isPerimeterPath:
			flowRate = self.repository.perimeterFlowRateOverOperatingFlowRate.value * self.repository.perimeterFeedRateOverOperatingFeedRate.value
		return euclidean.getFourSignificantFigures( flowRate )
Ejemplo n.º 15
0
	def getFlowRateString(self):
		"Get the flow rate string."
		nozzleXsection = (self.nozzleDiameter/2) ** 2 * math.pi
		extrusionXsection = ((self.absolutePerimeterWidth + self.layerThickness)/4) ** 2 * math.pi#todo transfer to inset
		#print('Nozzle' ,self.layerThickness ,'pw', self.absolutePerimeterWidth )
		#print('LH' ,nozzleXsection ,'xtr', extrusionXsection )
		if not self.repository.addFlowRate.value:
			return None
		flowRate = self.repository.flowRateSetting.value * self.feedRatePerSecond
		if self.isBridgeLayer:
			flowRate = (self.repository.bridgeFlowRateMultiplier.value * self.repository.bridgeFeedRateMultiplier.value) * (self.repository.perimeterFlowRateOverOperatingFlowRate.value * self.repository.perimeterFeedRateOverOperatingFeedRate.value) * (nozzleXsection / extrusionXsection)
		if self.isPerimeterPath:
			flowRate = self.repository.perimeterFlowRateOverOperatingFlowRate.value * self.repository.perimeterFeedRateOverOperatingFeedRate.value
		return euclidean.getFourSignificantFigures( flowRate )
Ejemplo n.º 16
0
	def addFlowRateLine(self):
		"Add flow rate line."
		if not self.repository.addFlowRate.value:
			return
		flowRate = self.repository.flowRateSetting.value
		self.nozzleXsection = (self.nozzleDiameter/2) ** 2 * math.pi
		extrusionXsection = ((self.absoluteEdgeWidth + self.layerHeight)/4) ** 2 * math.pi#todo transfer to inset
		if self.isBridgeLayer:
			flowRate = self.repository.bridgeFlowRateMultiplier.value * self.repository.edgeFlowRateMultiplier.value

		if self.isEdgePath:
			flowRate = self.repository.edgeFlowRateMultiplier.value
		if self.layerIndex == 0:
			if self.isEdgePath:
				flowRate *= self.repository.objectFirstLayerFlowRateEdgeMultiplier.value
			else:
				flowRate *= self.repository.objectFirstLayerFlowRateInfillMultiplier.value
		if flowRate != self.oldFlowRate:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
		self.oldFlowRate = flowRate
Ejemplo n.º 17
0
	def addFlowRateLine(self):
		"Add flow rate line."
		if not self.repository.addFlowRate.value:
			return
		#flowRate = self.repository.flowRateSetting.value
		flowRate = self.repository.flowRateSetting.value*self.repository.feedRatePerSecond.value
		if self.isBridgeLayer:
			flowRate *= self.repository.bridgeFlowRateMultiplier.value
		if self.isEdgePath:
			flowRate *= self.repository.perimeterFlowRateMultiplier.value
		else:
			flowRate *= self.repository.infillFlowRateMultiplier.value
		if self.layerIndex == 0:
			if self.isEdgePath:
				flowRate *= self.repository.objectFirstLayerFlowRatePerimeterMultiplier.value
			else:
				flowRate *= self.repository.objectFirstLayerFlowRateInfillMultiplier.value
		if flowRate != self.oldFlowRate:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
		self.oldFlowRate = flowRate
Ejemplo n.º 18
0
	def addFlowRateLine(self):
		"Add flow rate line."
		if not self.repository.addFlowRate.value:
			return
		flowRate = self.repository.flowRateSetting.value
		self.nozzleXsection = (self.nozzleDiameter/2) ** 2 * math.pi
		extrusionXsection = ((self.absolutePerimeterWidth + self.layerThickness)/4) ** 2 * math.pi#todo transfer to inset
		if self.isBridgeLayer:
			flowRate = self.repository.bridgeFlowRateMultiplier.value * self.repository.perimeterFlowRateMultiplier.value
#			flowRate = self.repository.bridgeFlowRateMultiplier.value * self.repository.perimeterFlowRateMultiplier.value * (self.nozzleXsection / extrusionXsection)

		if self.isPerimeterPath:
			flowRate = self.repository.perimeterFlowRateMultiplier.value
		if self.layerIndex == 0:
			if self.isPerimeterPath:
				flowRate *= self.repository.objectFirstLayerFlowRatePerimeterMultiplier.value
			else:
				flowRate *= self.repository.objectFirstLayerFlowRateInfillMultiplier.value
		if flowRate != self.oldFlowRate:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
		self.oldFlowRate = flowRate
Ejemplo n.º 19
0
Archivo: cool.py Proyecto: Ademan/Cura
	def addFlowRate(self, flowRate):
		'Add a multipled line of flow rate if different.'
		if flowRate != None:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 20
0
 def addFlowRate(self, flowRate):
     'Add a line of temperature if different.'
     if flowRate != None:
         self.distanceFeedRate.addLine(
             'M108 S' + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 21
0
Archivo: skirt.py Proyecto: Aeva/SFACT
	def addFlowRate(self, flowRate):
		'Add a line of temperature if different.'
		if flowRate is not None:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 22
0
 def addFlowRateLine(self, flowRate):
     'Add a flow rate line.'
     self.output.write('M108 S%s\n' %
                       euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 23
0
 def addFlowRate(self, flowRate):
     "Add a line of temperature if different."
     if flowRate != None:
         self.distanceFeedRate.addLine("M108 S" + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 24
0
	def addFlowRate(self, flowRate):
		'Add a multipled line of flow rate if different.'
		self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 25
0
	def addFlowRateLineIfDifferent(self, flowRate):
		'Add a line of temperature if different.'
		if flowRate == None or flowRate == self.oldFlowRateInput:
			return
		self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
		self.oldFlowRateInput = flowRate
Ejemplo n.º 26
0
	def addFlowRateLine(self, flowRate):
		'Add a flow rate line.'
		self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 27
0
	def addFlowRateLine(self, flowRate):
		'Add a flow rate line.'
		self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 28
0
 def addFlowRate(self, flowRate):
     "Add a multipled line of flow rate if different."
     self.distanceFeedRate.addLine("M108 S" + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 29
0
	def addFlowRateLine(self):
		"Add flow rate line."
		flowRate = self.flowRepository.flowRate.value
		if flowRate != self.oldFlowRate:
			self.distanceFeedRate.addLine('M108 S' + euclidean.getFourSignificantFigures(flowRate))
		self.oldFlowRate = flowRate
Ejemplo n.º 30
0
 def addFlowRateLine(self, flowRate):
     "Add a flow rate line."
     if flowRate != None:
         self.distanceFeedRate.addLine("M108 S" + euclidean.getFourSignificantFigures(flowRate))
Ejemplo n.º 31
0
	def addFlowRateLine(self, flowRate):
		'Add a flow rate line.'
		self.output.write('M108 S%s\n' % euclidean.getFourSignificantFigures(flowRate))