+ self._oneAtATime = True
+
+ # update the physical machine dimensions
+ def updateMachineDimensions(self):
+ self._machineSize = numpy.array([profile.getMachineSettingFloat('machine_width'), profile.getMachineSettingFloat('machine_depth'), profile.getMachineSettingFloat('machine_height')])
+ self._machinePolygons = profile.getMachineSizePolygons()
+ self.setHeadSize(profile.getMachineSettingFloat('extruder_head_size_min_x'), profile.getMachineSettingFloat('extruder_head_size_max_x'), profile.getMachineSettingFloat('extruder_head_size_min_y'), profile.getMachineSettingFloat('extruder_head_size_max_y'), profile.getMachineSettingFloat('extruder_head_size_height'))
+
+ # Size offsets are offsets caused by brim, skirt, etc.
+ def updateSizeOffsets(self, force=False):
+ newOffsets = numpy.array(profile.calculateObjectSizeOffsets(), numpy.float32)
+ minExtruderCount = profile.minimalExtruderCount()
+ if not force and numpy.array_equal(self._sizeOffsets, newOffsets) and self._minExtruderCount == minExtruderCount:
+ return
+ self._sizeOffsets = newOffsets
+ self._minExtruderCount = minExtruderCount