Key input example

keys.py
 1# © 2024 Autodesk, Inc. All rights reserved.
 2
 3# Shows some multiple key allocation.
 4
 5newScene()
 6
 7print("Executing keys script!")
 8
 9# define some functions that print some message when called
10def key_a_0():
11	print("Key A in keyboardlevel 0")
12
13def key_b_0():
14	print("Key B in keyboardlevel 0")
15
16def key_a_1():
17	print("Key A in keyboardlevel 1")
18
19def key_b_1():
20	print("Key B in keyboardlevel 1")
21
22def key_a_2():
23	print("Key A in keyboardlevel 2")
24
25def key_b_2():
26	print("Key B in keyboardlevel 2")
27
28setDefaultKeyboardLevel(0);
29
30keyA = vrKey(Key_A)
31keyA.connect(key_a_0)
32
33keyB = vrKey(Key_B)
34keyB.connect(key_b_0)
35
36# After this all created key events have a level of 1.
37setDefaultKeyboardLevel(1);
38
39keyA2 = vrKey(Key_A)
40keyA2.connect(key_a_1)
41
42keyB2 = vrKey(Key_B)
43keyB2.connect(key_b_1)
44
45# Ignore the default setting, first parameter is the keyboard level.
46keyA3 = vrKey(2, Key_A, 0)
47keyA3.connect(key_a_2)
48
49keyB3 = vrKey(2, Key_B, 0)
50keyB3.connect(key_b_2)
51
52# reset keyboard level to default
53setDefaultKeyboardLevel(-1);
54
55# current keyboard level is 0
56setKeyboardLevel(0)
57
58# switch between keyboard levels.
59key1 = vrKey(Key_1)
60key1.connect("setKeyboardLevel(0)")
61key1.connect("print 'switching to keyboard level 0'")
62print("press 1 to toggle to keyboardlevel 0, keys A and B will get a different meaning")
63key2 = vrKey(Key_2)
64key2.connect("setKeyboardLevel(1)")
65key2.connect("print 'switching to keyboard level 1'")
66print("press 2 to toggle to keyboardlevel 1, keys A and B will get a different meaning")
67key3 = vrKey(Key_3)
68key3.connect("setKeyboardLevel(2)")
69key3.connect("print 'switching to keyboard level 2'")
70print("press 3 to toggle to keyboardlevel 2, keys A and B will get a different meaning")
71
72print("End")