def getFeedrateV(self, feedrateS = None): if feedrateS == None: feedrateS = self.feedrateS assert(feedrateS) if self.eOnly: move_seconds = vectorLength(self.extrusion_displacement_raw) / feedrateS return VVector([0.0, 0.0, 0.0] + vectorMul(self.extrusion_displacement_raw, 2 * [1.0 / move_seconds])) else: # move_seconds = self.distance / feedrateS move_seconds = vectorLength(self.displacement_vector3) / feedrateS return self.displacement_vector_raw().scale(1.0 / move_seconds)
def getHomePos(self): # Get additional z-offset from eeprom add_homeing_z = self.printer.getAddHomeing_z() assert((add_homeing_z <= 0) and (add_homeing_z >= -35)) print "add_homeing_z from eeprom: ", add_homeing_z # Virtuelle position des druckkopfes falls 'gehomed' homePosMM = util.MyPoint( X = self.X_HOME_POS, Y = self.Y_HOME_POS, Z = self.Z_HOME_POS + add_homeing_z, ) # Diese stepper position wird gesetzt falls der drucker 'gehomed' ist homePosStepped = vectorMul(homePosMM.vector(), PrinterProfile.getStepsPerMMVector()) return (homePosMM, homePosStepped)
def scale(self, scale): return VVector(vectorMul(self.vv, 5*[scale]))