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 len5(self): return vectorLength(self.vv)
def len3(self): return vectorLength(self.vv[:3])