change char to key
This commit is contained in:
@@ -40,58 +40,52 @@ class TestController(Node):
|
|||||||
|
|
||||||
def on_press(self, key):
|
def on_press(self, key):
|
||||||
try:
|
try:
|
||||||
char = getattr(key, 'char', None)
|
|
||||||
if isinstance(char, str):
|
|
||||||
# self.get_logger().info('pressed ' + char)
|
# self.get_logger().info('pressed ' + char)
|
||||||
if char == 'w':
|
if key == 'w':
|
||||||
self.get_logger().info('forward')
|
self.get_logger().info('forward')
|
||||||
self.send_request(pitch=-10.0, yaw=0.0,
|
self.send_request(pitch=-10.0, yaw=0.0,
|
||||||
roll=0.0, thrust=0.0)
|
roll=0.0, thrust=0.0)
|
||||||
if char == 's':
|
if key == 's':
|
||||||
self.get_logger().info('backward')
|
self.get_logger().info('backward')
|
||||||
self.send_request(pitch=10.0, yaw=0.0,
|
self.send_request(pitch=10.0, yaw=0.0,
|
||||||
roll=0.0, thrust=0.0)
|
roll=0.0, thrust=0.0)
|
||||||
if char == 'a':
|
if key == 'a':
|
||||||
self.get_logger().info('left')
|
self.get_logger().info('left')
|
||||||
self.send_request(pitch=0.0, yaw=0.0,
|
self.send_request(pitch=0.0, yaw=0.0,
|
||||||
roll=-10.0, thrust=0.0)
|
roll=-10.0, thrust=0.0)
|
||||||
if char == 'd':
|
if key == 'd':
|
||||||
self.get_logger().info('right')
|
self.get_logger().info('right')
|
||||||
self.send_request(pitch=0.0, yaw=0.0,
|
self.send_request(pitch=0.0, yaw=0.0,
|
||||||
roll=10.0, thrust=0.0)
|
roll=10.0, thrust=0.0)
|
||||||
if char == 'q':
|
if key == 'q':
|
||||||
self.get_logger().info('rotate left')
|
self.get_logger().info('rotate left')
|
||||||
self.send_request(pitch=0.0, yaw=-10.0,
|
self.send_request(pitch=0.0, yaw=-10.0,
|
||||||
roll=0.0, thrust=0.0)
|
roll=0.0, thrust=0.0)
|
||||||
if char == 'e':
|
if key == 'e':
|
||||||
self.get_logger().info('rotate right')
|
self.get_logger().info('rotate right')
|
||||||
self.send_request(pitch=0.0, yaw=10.0,
|
self.send_request(pitch=0.0, yaw=10.0,
|
||||||
roll=0.0, thrust=0.0)
|
roll=0.0, thrust=0.0)
|
||||||
else:
|
# else:
|
||||||
try:
|
# try:
|
||||||
# known keys like spacebar, ctrl
|
# # known keys like spacebar, ctrl
|
||||||
name = key.name
|
# name = key.name
|
||||||
vk = key.value.vk
|
# vk = key.value.vk
|
||||||
except AttributeError:
|
# except AttributeError:
|
||||||
# unknown keys like headphones skip song button
|
# # unknown keys like headphones skip song button
|
||||||
name = 'UNKNOWN'
|
# name = 'UNKNOWN'
|
||||||
vk = key.vk
|
# vk = key.vk
|
||||||
# self.get_logger().info('pressed {} ({})'.format(name, vk))
|
# # self.get_logger().info('pressed {} ({})'.format(name, vk))
|
||||||
if vk == 32:
|
# if vk == 32:
|
||||||
self.get_logger().info('up')
|
# self.get_logger().info('up')
|
||||||
self.send_request(pitch=0.0, yaw=0.0, roll=0.0, thrust=0.05)
|
# self.send_request(pitch=0.0, yaw=0.0, roll=0.0, thrust=0.05)
|
||||||
if vk == 65505:
|
# if vk == 65505:
|
||||||
self.get_logger().info('down')
|
# self.get_logger().info('down')
|
||||||
self.send_request(pitch=0.0, yaw=0.0,
|
# self.send_request(pitch=0.0, yaw=0.0,
|
||||||
roll=0.0, thrust=-0.05)
|
# roll=0.0, thrust=-0.05)
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.get_logger().error(str(e))
|
self.get_logger().error(str(e))
|
||||||
raise
|
raise e
|
||||||
|
|
||||||
if key == keyboard.Key.esc:
|
|
||||||
self.get_logger().info('stopping listener')
|
|
||||||
raise keyboard.Listener.StopException
|
|
||||||
|
|
||||||
|
|
||||||
def main(args=None):
|
def main(args=None):
|
||||||
|
|||||||
Reference in New Issue
Block a user