def __doDrawing(self, orientation, scale): print "Extracting points with camera..." drawingCountoursFound = False drawingCountour = [] tryCount = 0 while not drawingCountoursFound: shuffleDistance = 3 try: drawingCountour = self.cam.getDrawingContour() drawingCountoursFound = True except ValueError: print "Failed to extract points from camera! Retrying... with count: " + str(tryCount) if not tryCount % 5: self.robotMover.relativeShuffle(shuffleDistance, -150) elif tryCount % 5 == 1: self.robotMover.relativeShuffle(shuffleDistance, 90) elif tryCount % 5 == 2: self.robotMover.relativeShuffle(shuffleDistance, -30) elif tryCount % 5 == 3: self.robotMover.doRelativeRotation(-10) else: self.robotMover.doRelativeRotation(20) tryCount += 1 points = drawingCountour[0] size = drawingCountour[1] print points print size pointsToDraw = self.imagePointsTransformer.transform(drawingCountour, orientation, scale) SendEvent.send(SendDessin(pointsToDraw)) movedPoints = PointsCloudOperations.move(pointsToDraw, 144.8, 25.5) print "going to first drawing point" self.robotMover.doSnakeMovement(movedPoints[0], 270) print "arrived at first drawing point!" prehensorController = PrehensorController() prehensorController.dropPrehensor() movedPoints.append(movedPoints[0]) # this is to close the figure self.robotMover.doShuffleMovement(movedPoints, 270) prehensorController.raisePrehensor()
import time from python.src.robot.arduino.prehensorcontroller import PrehensorController prehensorController = PrehensorController() prehensorController.dropPrehensor() time.sleep(5) prehensorController.raisePrehensor()