本文整理匯總了Python中glfw.KEY_A屬性的典型用法代碼示例。如果您正苦於以下問題:Python glfw.KEY_A屬性的具體用法?Python glfw.KEY_A怎麽用?Python glfw.KEY_A使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類glfw
的用法示例。
在下文中一共展示了glfw.KEY_A屬性的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: _map_keys
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def _map_keys(self):
key_map = self.io.key_map
key_map[imgui.KEY_TAB] = glfw.KEY_TAB
key_map[imgui.KEY_LEFT_ARROW] = glfw.KEY_LEFT
key_map[imgui.KEY_RIGHT_ARROW] = glfw.KEY_RIGHT
key_map[imgui.KEY_UP_ARROW] = glfw.KEY_UP
key_map[imgui.KEY_DOWN_ARROW] = glfw.KEY_DOWN
key_map[imgui.KEY_PAGE_UP] = glfw.KEY_PAGE_UP
key_map[imgui.KEY_PAGE_DOWN] = glfw.KEY_PAGE_DOWN
key_map[imgui.KEY_HOME] = glfw.KEY_HOME
key_map[imgui.KEY_END] = glfw.KEY_END
key_map[imgui.KEY_DELETE] = glfw.KEY_DELETE
key_map[imgui.KEY_BACKSPACE] = glfw.KEY_BACKSPACE
key_map[imgui.KEY_ENTER] = glfw.KEY_ENTER
key_map[imgui.KEY_ESCAPE] = glfw.KEY_ESCAPE
key_map[imgui.KEY_A] = glfw.KEY_A
key_map[imgui.KEY_C] = glfw.KEY_C
key_map[imgui.KEY_V] = glfw.KEY_V
key_map[imgui.KEY_X] = glfw.KEY_X
key_map[imgui.KEY_Y] = glfw.KEY_Y
key_map[imgui.KEY_Z] = glfw.KEY_Z
示例2: key_input_clb
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def key_input_clb(window, key, scancode, action, mode):
global left, right, forward, backward
if key == glfw.KEY_ESCAPE and action == glfw.PRESS:
glfw.set_window_should_close(window, True)
if key == glfw.KEY_W and action == glfw.PRESS:
forward = True
elif key == glfw.KEY_W and action == glfw.RELEASE:
forward = False
if key == glfw.KEY_S and action == glfw.PRESS:
backward = True
elif key == glfw.KEY_S and action == glfw.RELEASE:
backward = False
if key == glfw.KEY_A and action == glfw.PRESS:
left = True
elif key == glfw.KEY_A and action == glfw.RELEASE:
left = False
if key == glfw.KEY_D and action == glfw.PRESS:
right = True
elif key == glfw.KEY_D and action == glfw.RELEASE:
right = False
# do the movement, call this function in the main loop
示例3: on_press
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def on_press(self, window, key, scancode, action, mods):
"""
Key handler for key presses.
"""
# controls for moving position
if key == glfw.KEY_W:
self.pos[0] -= self._pos_step # dec x
elif key == glfw.KEY_S:
self.pos[0] += self._pos_step # inc x
elif key == glfw.KEY_A:
self.pos[1] -= self._pos_step # dec y
elif key == glfw.KEY_D:
self.pos[1] += self._pos_step # inc y
elif key == glfw.KEY_F:
self.pos[2] -= self._pos_step # dec z
elif key == glfw.KEY_R:
self.pos[2] += self._pos_step # inc z
# controls for moving orientation
elif key == glfw.KEY_Z:
drot = rotation_matrix(angle=0.1, direction=[1., 0., 0.])[:3, :3]
self.rotation = self.rotation.dot(drot) # rotates x
elif key == glfw.KEY_X:
drot = rotation_matrix(angle=-0.1, direction=[1., 0., 0.])[:3, :3]
self.rotation = self.rotation.dot(drot) # rotates x
elif key == glfw.KEY_T:
drot = rotation_matrix(angle=0.1, direction=[0., 1., 0.])[:3, :3]
self.rotation = self.rotation.dot(drot) # rotates y
elif key == glfw.KEY_G:
drot = rotation_matrix(angle=-0.1, direction=[0., 1., 0.])[:3, :3]
self.rotation = self.rotation.dot(drot) # rotates y
elif key == glfw.KEY_C:
drot = rotation_matrix(angle=0.1, direction=[0., 0., 1.])[:3, :3]
self.rotation = self.rotation.dot(drot) # rotates z
elif key == glfw.KEY_V:
drot = rotation_matrix(angle=-0.1, direction=[0., 0., 1.])[:3, :3]
self.rotation = self.rotation.dot(drot) # rotates z
示例4: key_callback
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def key_callback(self, window, key, scancode, action, mods):
# Trigger on keyup only:
if action != glfw.RELEASE:
return
if key == glfw.KEY_ESCAPE:
self.env.close()
# Increment experiment seed
elif key == glfw.KEY_N:
self.seed[0] += 1
self.env.seed(self.seed)
self.env_reset()
self.action = self.zero_action(self.env.action_space)
# Decrement experiment trial
elif key == glfw.KEY_P:
self.seed = [max(self.seed[0] - 1, 0)]
self.env.seed(self.seed)
self.env_reset()
self.action = self.zero_action(self.env.action_space)
if key == glfw.KEY_A:
if isinstance(self.env.action_space, Box):
self.action[self.action_mod_index] -= 0.05
elif key == glfw.KEY_Z:
if isinstance(self.env.action_space, Box):
self.action[self.action_mod_index] += 0.05
elif key == glfw.KEY_K:
self.action_mod_index = (self.action_mod_index + 1) % self.num_action
elif key == glfw.KEY_J:
self.action_mod_index = (self.action_mod_index - 1) % self.num_action
super().key_callback(window, key, scancode, action, mods)
示例5: key_input_clb
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def key_input_clb(window, key, scancode, action, mode):
global left, right, forward, backward
if key == glfw.KEY_ESCAPE and action == glfw.PRESS:
glfw.set_window_should_close(window, True)
if key == glfw.KEY_W and action == glfw.PRESS:
forward = True
elif key == glfw.KEY_W and action == glfw.RELEASE:
forward = False
if key == glfw.KEY_S and action == glfw.PRESS:
backward = True
elif key == glfw.KEY_S and action == glfw.RELEASE:
backward = False
if key == glfw.KEY_A and action == glfw.PRESS:
left = True
elif key == glfw.KEY_A and action == glfw.RELEASE:
left = False
if key == glfw.KEY_D and action == glfw.PRESS:
right = True
elif key == glfw.KEY_D and action == glfw.RELEASE:
right = False
# if key in [glfw.KEY_W, glfw.KEY_S, glfw.KEY_D, glfw.KEY_A] and action == glfw.RELEASE:
# left, right, forward, backward = False, False, False, False
# do the movement, call this function in the main loop
示例6: on_press
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def on_press(self, window, key, scancode, action, mods):
"""
Key handler for key presses.
"""
# controls for moving position
if key == glfw.KEY_W:
# move forward
move_camera(env=self.env, direction=[0., 0., -1.], scale=DELTA_POS_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_S:
# move backward
move_camera(env=self.env, direction=[0., 0., 1.], scale=DELTA_POS_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_A:
# move left
move_camera(env=self.env, direction=[-1., 0., 0.], scale=DELTA_POS_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_D:
# move right
move_camera(env=self.env, direction=[1., 0., 0.], scale=DELTA_POS_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_R:
# move up
move_camera(env=self.env, direction=[0., 1., 0.], scale=DELTA_POS_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_F:
# move down
move_camera(env=self.env, direction=[0., -1., 0.], scale=DELTA_POS_KEY_PRESS, camera_id=self.camera_id)
# controls for moving rotation
elif key == glfw.KEY_UP:
# rotate up
rotate_camera(env=self.env, direction=[1., 0., 0.], angle=DELTA_ROT_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_DOWN:
# rotate down
rotate_camera(env=self.env, direction=[-1., 0., 0.], angle=DELTA_ROT_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_LEFT:
# rotate left
rotate_camera(env=self.env, direction=[0., 1., 0.], angle=DELTA_ROT_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_RIGHT:
# rotate right
rotate_camera(env=self.env, direction=[0., -1., 0.], angle=DELTA_ROT_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_PERIOD:
# rotate counterclockwise
rotate_camera(env=self.env, direction=[0., 0., 1.], angle=DELTA_ROT_KEY_PRESS, camera_id=self.camera_id)
elif key == glfw.KEY_SLASH:
# rotate clockwise
rotate_camera(env=self.env, direction=[0., 0., -1.], angle=DELTA_ROT_KEY_PRESS, camera_id=self.camera_id)
示例7: key_callback
# 需要導入模塊: import glfw [as 別名]
# 或者: from glfw import KEY_A [as 別名]
def key_callback(self, window, key, scancode, action, mods):
# Trigger on keyup only:
if action != glfw.RELEASE:
return
if key == glfw.KEY_ESCAPE:
self.env.close()
# Increment experiment seed
elif key == glfw.KEY_N:
self.seed[0] += 1
self.env.seed(self.seed)
self.env_reset()
self.action = self.zero_action(self.env.action_space)
# Decrement experiment trial
elif key == glfw.KEY_P:
self.seed = [max(self.seed[0] - 1, 0)]
self.env.seed(self.seed)
self.env_reset()
self.action = self.zero_action(self.env.action_space)
current_action_space = self.env.action_space.spaces[self.action_types[self.action_type_mod_index]].spaces[0]
if key == glfw.KEY_A:
if isinstance(current_action_space, Box):
self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index][self.action_mod_index] -= 0.05
elif isinstance(current_action_space, Discrete):
self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index] = \
(self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index] - 1) % current_action_space.n
elif isinstance(current_action_space, MultiDiscrete):
self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index][self.action_mod_index] = \
(self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index][self.action_mod_index] - 1) \
% current_action_space.nvec[self.action_mod_index]
elif key == glfw.KEY_Z:
if isinstance(current_action_space, Box):
self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index][self.action_mod_index] += 0.05
elif isinstance(current_action_space, Discrete):
self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index] = \
(self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index] + 1) % current_action_space.n
elif isinstance(current_action_space, MultiDiscrete):
self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index][self.action_mod_index] = \
(self.action[self.action_types[self.action_type_mod_index]][self.agent_mod_index][self.action_mod_index] + 1) \
% current_action_space.nvec[self.action_mod_index]
elif key == glfw.KEY_K:
self.action_mod_index = (self.action_mod_index + 1) % self.num_action[self.action_type_mod_index]
elif key == glfw.KEY_J:
self.action_mod_index = (self.action_mod_index - 1) % self.num_action[self.action_type_mod_index]
elif key == glfw.KEY_Y:
self.agent_mod_index = (self.agent_mod_index + 1) % self.n_agents
elif key == glfw.KEY_U:
self.agent_mod_index = (self.agent_mod_index - 1) % self.n_agents
elif key == glfw.KEY_G:
self.action_type_mod_index = (self.action_type_mod_index + 1) % self.num_action_types
self.action_mod_index = 0
elif key == glfw.KEY_B:
self.action_type_mod_index = (self.action_type_mod_index - 1) % self.num_action_types
self.action_mod_index = 0
super().key_callback(window, key, scancode, action, mods)