def run(self): # * Set visual system buffers and send intent self.visSys.setBuffer('weights', self.featureWeights) self.visSys.setBuffer('intent', 'find') # * Run vision manager and ocular motion system runner = InputRunner(self.visMan) self.context.resetTime() while runner.update(): # should update context time if not self.update(): break runner.cleanUp()
self.move(np.int_([-offset[0], -offset[1]])) # move back to center def enableEventLogging(self, filename_prefix="ocular-events", rpc_export=False, start_server=False): eventFilename = "logs/{}_{}.log".format(filename_prefix, time.strftime(EventLogger.timestamp_format, time.localtime(time.time()))) self.eventLogger = EventLogger(eventFilename, rpc_export=rpc_export, start_server=start_server) self.logEvents = True def getFocusPoint(self): return self.projector.focusPoint def getFocusOffset(self): return (self.projector.focusPoint[0] - self.projector.screenSize[0] / 2, self.projector.focusPoint[1] - self.projector.screenSize[1] / 2) def getVelocity(self): return self.v # Testing if __name__ == "__main__": context = Context.createInstance(description="Ocular motion testing") projector = Projector() ocular = EmulatedOcularMotionSystem(projector) runner = InputRunner(projector) while runner.update(): ocular.update(context.timeNow) if not ocular.isMoving: ocular.move(np.int_([np.random.uniform(-100, 100), np.random.uniform(-100, 100)])) runner.cleanUp()