class_xrbodytracker.rst 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/XRBodyTracker.xml.
  6. .. _class_XRBodyTracker:
  7. XRBodyTracker
  8. =============
  9. **Experimental:** This class may be changed or removed in future versions.
  10. **Inherits:** :ref:`XRPositionalTracker<class_XRPositionalTracker>` **<** :ref:`XRTracker<class_XRTracker>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  11. A tracked body in XR.
  12. .. rst-class:: classref-introduction-group
  13. Description
  14. -----------
  15. A body tracking system will create an instance of this object and add it to the :ref:`XRServer<class_XRServer>`. This tracking system will then obtain skeleton data, convert it to the Godot Humanoid skeleton and store this data on the **XRBodyTracker** object.
  16. Use :ref:`XRBodyModifier3D<class_XRBodyModifier3D>` to animate a body mesh using body tracking data.
  17. .. rst-class:: classref-introduction-group
  18. Tutorials
  19. ---------
  20. - :doc:`XR documentation index <../tutorials/xr/index>`
  21. .. rst-class:: classref-reftable-group
  22. Properties
  23. ----------
  24. .. table::
  25. :widths: auto
  26. +--------------------------------------------------------------+--------------------------------------------------------------------------+--------------------------------------------------------------------+
  27. | |bitfield|\[:ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>`\] | :ref:`body_flags<class_XRBodyTracker_property_body_flags>` | ``0`` |
  28. +--------------------------------------------------------------+--------------------------------------------------------------------------+--------------------------------------------------------------------+
  29. | :ref:`bool<class_bool>` | :ref:`has_tracking_data<class_XRBodyTracker_property_has_tracking_data>` | ``false`` |
  30. +--------------------------------------------------------------+--------------------------------------------------------------------------+--------------------------------------------------------------------+
  31. | :ref:`TrackerType<enum_XRServer_TrackerType>` | type | ``32`` (overrides :ref:`XRTracker<class_XRTracker_property_type>`) |
  32. +--------------------------------------------------------------+--------------------------------------------------------------------------+--------------------------------------------------------------------+
  33. .. rst-class:: classref-reftable-group
  34. Methods
  35. -------
  36. .. table::
  37. :widths: auto
  38. +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | |bitfield|\[:ref:`JointFlags<enum_XRBodyTracker_JointFlags>`\] | :ref:`get_joint_flags<class_XRBodyTracker_method_get_joint_flags>`\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`\ ) |const| |
  40. +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | :ref:`Transform3D<class_Transform3D>` | :ref:`get_joint_transform<class_XRBodyTracker_method_get_joint_transform>`\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`\ ) |const| |
  42. +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | |void| | :ref:`set_joint_flags<class_XRBodyTracker_method_set_joint_flags>`\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`, flags\: |bitfield|\[:ref:`JointFlags<enum_XRBodyTracker_JointFlags>`\]\ ) |
  44. +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | |void| | :ref:`set_joint_transform<class_XRBodyTracker_method_set_joint_transform>`\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`, transform\: :ref:`Transform3D<class_Transform3D>`\ ) |
  46. +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. .. rst-class:: classref-section-separator
  48. ----
  49. .. rst-class:: classref-descriptions-group
  50. Enumerations
  51. ------------
  52. .. _enum_XRBodyTracker_BodyFlags:
  53. .. rst-class:: classref-enumeration
  54. flags **BodyFlags**: :ref:`🔗<enum_XRBodyTracker_BodyFlags>`
  55. .. _class_XRBodyTracker_constant_BODY_FLAG_UPPER_BODY_SUPPORTED:
  56. .. rst-class:: classref-enumeration-constant
  57. :ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>` **BODY_FLAG_UPPER_BODY_SUPPORTED** = ``1``
  58. Upper body tracking supported.
  59. .. _class_XRBodyTracker_constant_BODY_FLAG_LOWER_BODY_SUPPORTED:
  60. .. rst-class:: classref-enumeration-constant
  61. :ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>` **BODY_FLAG_LOWER_BODY_SUPPORTED** = ``2``
  62. Lower body tracking supported.
  63. .. _class_XRBodyTracker_constant_BODY_FLAG_HANDS_SUPPORTED:
  64. .. rst-class:: classref-enumeration-constant
  65. :ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>` **BODY_FLAG_HANDS_SUPPORTED** = ``4``
  66. Hand tracking supported.
  67. .. rst-class:: classref-item-separator
  68. ----
  69. .. _enum_XRBodyTracker_Joint:
  70. .. rst-class:: classref-enumeration
  71. enum **Joint**: :ref:`🔗<enum_XRBodyTracker_Joint>`
  72. .. _class_XRBodyTracker_constant_JOINT_ROOT:
  73. .. rst-class:: classref-enumeration-constant
  74. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_ROOT** = ``0``
  75. Root joint.
  76. .. _class_XRBodyTracker_constant_JOINT_HIPS:
  77. .. rst-class:: classref-enumeration-constant
  78. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_HIPS** = ``1``
  79. Hips joint.
  80. .. _class_XRBodyTracker_constant_JOINT_SPINE:
  81. .. rst-class:: classref-enumeration-constant
  82. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_SPINE** = ``2``
  83. Spine joint.
  84. .. _class_XRBodyTracker_constant_JOINT_CHEST:
  85. .. rst-class:: classref-enumeration-constant
  86. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_CHEST** = ``3``
  87. Chest joint.
  88. .. _class_XRBodyTracker_constant_JOINT_UPPER_CHEST:
  89. .. rst-class:: classref-enumeration-constant
  90. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_UPPER_CHEST** = ``4``
  91. Upper chest joint.
  92. .. _class_XRBodyTracker_constant_JOINT_NECK:
  93. .. rst-class:: classref-enumeration-constant
  94. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_NECK** = ``5``
  95. Neck joint.
  96. .. _class_XRBodyTracker_constant_JOINT_HEAD:
  97. .. rst-class:: classref-enumeration-constant
  98. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_HEAD** = ``6``
  99. Head joint.
  100. .. _class_XRBodyTracker_constant_JOINT_HEAD_TIP:
  101. .. rst-class:: classref-enumeration-constant
  102. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_HEAD_TIP** = ``7``
  103. Head tip joint.
  104. .. _class_XRBodyTracker_constant_JOINT_LEFT_SHOULDER:
  105. .. rst-class:: classref-enumeration-constant
  106. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_SHOULDER** = ``8``
  107. Left shoulder joint.
  108. .. _class_XRBodyTracker_constant_JOINT_LEFT_UPPER_ARM:
  109. .. rst-class:: classref-enumeration-constant
  110. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_UPPER_ARM** = ``9``
  111. Left upper arm joint.
  112. .. _class_XRBodyTracker_constant_JOINT_LEFT_LOWER_ARM:
  113. .. rst-class:: classref-enumeration-constant
  114. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_LOWER_ARM** = ``10``
  115. Left lower arm joint.
  116. .. _class_XRBodyTracker_constant_JOINT_RIGHT_SHOULDER:
  117. .. rst-class:: classref-enumeration-constant
  118. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_SHOULDER** = ``11``
  119. Right shoulder joint.
  120. .. _class_XRBodyTracker_constant_JOINT_RIGHT_UPPER_ARM:
  121. .. rst-class:: classref-enumeration-constant
  122. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_UPPER_ARM** = ``12``
  123. Right upper arm joint.
  124. .. _class_XRBodyTracker_constant_JOINT_RIGHT_LOWER_ARM:
  125. .. rst-class:: classref-enumeration-constant
  126. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_LOWER_ARM** = ``13``
  127. Right lower arm joint.
  128. .. _class_XRBodyTracker_constant_JOINT_LEFT_UPPER_LEG:
  129. .. rst-class:: classref-enumeration-constant
  130. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_UPPER_LEG** = ``14``
  131. Left upper leg joint.
  132. .. _class_XRBodyTracker_constant_JOINT_LEFT_LOWER_LEG:
  133. .. rst-class:: classref-enumeration-constant
  134. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_LOWER_LEG** = ``15``
  135. Left lower leg joint.
  136. .. _class_XRBodyTracker_constant_JOINT_LEFT_FOOT:
  137. .. rst-class:: classref-enumeration-constant
  138. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_FOOT** = ``16``
  139. Left foot joint.
  140. .. _class_XRBodyTracker_constant_JOINT_LEFT_TOES:
  141. .. rst-class:: classref-enumeration-constant
  142. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_TOES** = ``17``
  143. Left toes joint.
  144. .. _class_XRBodyTracker_constant_JOINT_RIGHT_UPPER_LEG:
  145. .. rst-class:: classref-enumeration-constant
  146. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_UPPER_LEG** = ``18``
  147. Right upper leg joint.
  148. .. _class_XRBodyTracker_constant_JOINT_RIGHT_LOWER_LEG:
  149. .. rst-class:: classref-enumeration-constant
  150. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_LOWER_LEG** = ``19``
  151. Right lower leg joint.
  152. .. _class_XRBodyTracker_constant_JOINT_RIGHT_FOOT:
  153. .. rst-class:: classref-enumeration-constant
  154. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_FOOT** = ``20``
  155. Right foot joint.
  156. .. _class_XRBodyTracker_constant_JOINT_RIGHT_TOES:
  157. .. rst-class:: classref-enumeration-constant
  158. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_TOES** = ``21``
  159. Right toes joint.
  160. .. _class_XRBodyTracker_constant_JOINT_LEFT_HAND:
  161. .. rst-class:: classref-enumeration-constant
  162. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_HAND** = ``22``
  163. Left hand joint.
  164. .. _class_XRBodyTracker_constant_JOINT_LEFT_PALM:
  165. .. rst-class:: classref-enumeration-constant
  166. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_PALM** = ``23``
  167. Left palm joint.
  168. .. _class_XRBodyTracker_constant_JOINT_LEFT_WRIST:
  169. .. rst-class:: classref-enumeration-constant
  170. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_WRIST** = ``24``
  171. Left wrist joint.
  172. .. _class_XRBodyTracker_constant_JOINT_LEFT_THUMB_METACARPAL:
  173. .. rst-class:: classref-enumeration-constant
  174. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_THUMB_METACARPAL** = ``25``
  175. Left thumb metacarpal joint.
  176. .. _class_XRBodyTracker_constant_JOINT_LEFT_THUMB_PHALANX_PROXIMAL:
  177. .. rst-class:: classref-enumeration-constant
  178. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_THUMB_PHALANX_PROXIMAL** = ``26``
  179. Left thumb phalanx proximal joint.
  180. .. _class_XRBodyTracker_constant_JOINT_LEFT_THUMB_PHALANX_DISTAL:
  181. .. rst-class:: classref-enumeration-constant
  182. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_THUMB_PHALANX_DISTAL** = ``27``
  183. Left thumb phalanx distal joint.
  184. .. _class_XRBodyTracker_constant_JOINT_LEFT_THUMB_TIP:
  185. .. rst-class:: classref-enumeration-constant
  186. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_THUMB_TIP** = ``28``
  187. Left thumb tip joint.
  188. .. _class_XRBodyTracker_constant_JOINT_LEFT_INDEX_FINGER_METACARPAL:
  189. .. rst-class:: classref-enumeration-constant
  190. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_INDEX_FINGER_METACARPAL** = ``29``
  191. Left index finger metacarpal joint.
  192. .. _class_XRBodyTracker_constant_JOINT_LEFT_INDEX_FINGER_PHALANX_PROXIMAL:
  193. .. rst-class:: classref-enumeration-constant
  194. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_INDEX_FINGER_PHALANX_PROXIMAL** = ``30``
  195. Left index finger phalanx proximal joint.
  196. .. _class_XRBodyTracker_constant_JOINT_LEFT_INDEX_FINGER_PHALANX_INTERMEDIATE:
  197. .. rst-class:: classref-enumeration-constant
  198. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_INDEX_FINGER_PHALANX_INTERMEDIATE** = ``31``
  199. Left index finger phalanx intermediate joint.
  200. .. _class_XRBodyTracker_constant_JOINT_LEFT_INDEX_FINGER_PHALANX_DISTAL:
  201. .. rst-class:: classref-enumeration-constant
  202. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_INDEX_FINGER_PHALANX_DISTAL** = ``32``
  203. Left index finger phalanx distal joint.
  204. .. _class_XRBodyTracker_constant_JOINT_LEFT_INDEX_FINGER_TIP:
  205. .. rst-class:: classref-enumeration-constant
  206. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_INDEX_FINGER_TIP** = ``33``
  207. Left index finger tip joint.
  208. .. _class_XRBodyTracker_constant_JOINT_LEFT_MIDDLE_FINGER_METACARPAL:
  209. .. rst-class:: classref-enumeration-constant
  210. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_MIDDLE_FINGER_METACARPAL** = ``34``
  211. Left middle finger metacarpal joint.
  212. .. _class_XRBodyTracker_constant_JOINT_LEFT_MIDDLE_FINGER_PHALANX_PROXIMAL:
  213. .. rst-class:: classref-enumeration-constant
  214. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_MIDDLE_FINGER_PHALANX_PROXIMAL** = ``35``
  215. Left middle finger phalanx proximal joint.
  216. .. _class_XRBodyTracker_constant_JOINT_LEFT_MIDDLE_FINGER_PHALANX_INTERMEDIATE:
  217. .. rst-class:: classref-enumeration-constant
  218. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_MIDDLE_FINGER_PHALANX_INTERMEDIATE** = ``36``
  219. Left middle finger phalanx intermediate joint.
  220. .. _class_XRBodyTracker_constant_JOINT_LEFT_MIDDLE_FINGER_PHALANX_DISTAL:
  221. .. rst-class:: classref-enumeration-constant
  222. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_MIDDLE_FINGER_PHALANX_DISTAL** = ``37``
  223. Left middle finger phalanx distal joint.
  224. .. _class_XRBodyTracker_constant_JOINT_LEFT_MIDDLE_FINGER_TIP:
  225. .. rst-class:: classref-enumeration-constant
  226. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_MIDDLE_FINGER_TIP** = ``38``
  227. Left middle finger tip joint.
  228. .. _class_XRBodyTracker_constant_JOINT_LEFT_RING_FINGER_METACARPAL:
  229. .. rst-class:: classref-enumeration-constant
  230. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_RING_FINGER_METACARPAL** = ``39``
  231. Left ring finger metacarpal joint.
  232. .. _class_XRBodyTracker_constant_JOINT_LEFT_RING_FINGER_PHALANX_PROXIMAL:
  233. .. rst-class:: classref-enumeration-constant
  234. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_RING_FINGER_PHALANX_PROXIMAL** = ``40``
  235. Left ring finger phalanx proximal joint.
  236. .. _class_XRBodyTracker_constant_JOINT_LEFT_RING_FINGER_PHALANX_INTERMEDIATE:
  237. .. rst-class:: classref-enumeration-constant
  238. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_RING_FINGER_PHALANX_INTERMEDIATE** = ``41``
  239. Left ring finger phalanx intermediate joint.
  240. .. _class_XRBodyTracker_constant_JOINT_LEFT_RING_FINGER_PHALANX_DISTAL:
  241. .. rst-class:: classref-enumeration-constant
  242. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_RING_FINGER_PHALANX_DISTAL** = ``42``
  243. Left ring finger phalanx distal joint.
  244. .. _class_XRBodyTracker_constant_JOINT_LEFT_RING_FINGER_TIP:
  245. .. rst-class:: classref-enumeration-constant
  246. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_RING_FINGER_TIP** = ``43``
  247. Left ring finger tip joint.
  248. .. _class_XRBodyTracker_constant_JOINT_LEFT_PINKY_FINGER_METACARPAL:
  249. .. rst-class:: classref-enumeration-constant
  250. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_PINKY_FINGER_METACARPAL** = ``44``
  251. Left pinky finger metacarpal joint.
  252. .. _class_XRBodyTracker_constant_JOINT_LEFT_PINKY_FINGER_PHALANX_PROXIMAL:
  253. .. rst-class:: classref-enumeration-constant
  254. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_PINKY_FINGER_PHALANX_PROXIMAL** = ``45``
  255. Left pinky finger phalanx proximal joint.
  256. .. _class_XRBodyTracker_constant_JOINT_LEFT_PINKY_FINGER_PHALANX_INTERMEDIATE:
  257. .. rst-class:: classref-enumeration-constant
  258. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_PINKY_FINGER_PHALANX_INTERMEDIATE** = ``46``
  259. Left pinky finger phalanx intermediate joint.
  260. .. _class_XRBodyTracker_constant_JOINT_LEFT_PINKY_FINGER_PHALANX_DISTAL:
  261. .. rst-class:: classref-enumeration-constant
  262. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_PINKY_FINGER_PHALANX_DISTAL** = ``47``
  263. Left pinky finger phalanx distal joint.
  264. .. _class_XRBodyTracker_constant_JOINT_LEFT_PINKY_FINGER_TIP:
  265. .. rst-class:: classref-enumeration-constant
  266. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_LEFT_PINKY_FINGER_TIP** = ``48``
  267. Left pinky finger tip joint.
  268. .. _class_XRBodyTracker_constant_JOINT_RIGHT_HAND:
  269. .. rst-class:: classref-enumeration-constant
  270. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_HAND** = ``49``
  271. Right hand joint.
  272. .. _class_XRBodyTracker_constant_JOINT_RIGHT_PALM:
  273. .. rst-class:: classref-enumeration-constant
  274. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_PALM** = ``50``
  275. Right palm joint.
  276. .. _class_XRBodyTracker_constant_JOINT_RIGHT_WRIST:
  277. .. rst-class:: classref-enumeration-constant
  278. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_WRIST** = ``51``
  279. Right wrist joint.
  280. .. _class_XRBodyTracker_constant_JOINT_RIGHT_THUMB_METACARPAL:
  281. .. rst-class:: classref-enumeration-constant
  282. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_THUMB_METACARPAL** = ``52``
  283. Right thumb metacarpal joint.
  284. .. _class_XRBodyTracker_constant_JOINT_RIGHT_THUMB_PHALANX_PROXIMAL:
  285. .. rst-class:: classref-enumeration-constant
  286. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_THUMB_PHALANX_PROXIMAL** = ``53``
  287. Right thumb phalanx proximal joint.
  288. .. _class_XRBodyTracker_constant_JOINT_RIGHT_THUMB_PHALANX_DISTAL:
  289. .. rst-class:: classref-enumeration-constant
  290. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_THUMB_PHALANX_DISTAL** = ``54``
  291. Right thumb phalanx distal joint.
  292. .. _class_XRBodyTracker_constant_JOINT_RIGHT_THUMB_TIP:
  293. .. rst-class:: classref-enumeration-constant
  294. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_THUMB_TIP** = ``55``
  295. Right thumb tip joint.
  296. .. _class_XRBodyTracker_constant_JOINT_RIGHT_INDEX_FINGER_METACARPAL:
  297. .. rst-class:: classref-enumeration-constant
  298. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_INDEX_FINGER_METACARPAL** = ``56``
  299. Right index finger metacarpal joint.
  300. .. _class_XRBodyTracker_constant_JOINT_RIGHT_INDEX_FINGER_PHALANX_PROXIMAL:
  301. .. rst-class:: classref-enumeration-constant
  302. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_INDEX_FINGER_PHALANX_PROXIMAL** = ``57``
  303. Right index finger phalanx proximal joint.
  304. .. _class_XRBodyTracker_constant_JOINT_RIGHT_INDEX_FINGER_PHALANX_INTERMEDIATE:
  305. .. rst-class:: classref-enumeration-constant
  306. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_INDEX_FINGER_PHALANX_INTERMEDIATE** = ``58``
  307. Right index finger phalanx intermediate joint.
  308. .. _class_XRBodyTracker_constant_JOINT_RIGHT_INDEX_FINGER_PHALANX_DISTAL:
  309. .. rst-class:: classref-enumeration-constant
  310. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_INDEX_FINGER_PHALANX_DISTAL** = ``59``
  311. Right index finger phalanx distal joint.
  312. .. _class_XRBodyTracker_constant_JOINT_RIGHT_INDEX_FINGER_TIP:
  313. .. rst-class:: classref-enumeration-constant
  314. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_INDEX_FINGER_TIP** = ``60``
  315. Right index finger tip joint.
  316. .. _class_XRBodyTracker_constant_JOINT_RIGHT_MIDDLE_FINGER_METACARPAL:
  317. .. rst-class:: classref-enumeration-constant
  318. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_MIDDLE_FINGER_METACARPAL** = ``61``
  319. Right middle finger metacarpal joint.
  320. .. _class_XRBodyTracker_constant_JOINT_RIGHT_MIDDLE_FINGER_PHALANX_PROXIMAL:
  321. .. rst-class:: classref-enumeration-constant
  322. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_MIDDLE_FINGER_PHALANX_PROXIMAL** = ``62``
  323. Right middle finger phalanx proximal joint.
  324. .. _class_XRBodyTracker_constant_JOINT_RIGHT_MIDDLE_FINGER_PHALANX_INTERMEDIATE:
  325. .. rst-class:: classref-enumeration-constant
  326. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_MIDDLE_FINGER_PHALANX_INTERMEDIATE** = ``63``
  327. Right middle finger phalanx intermediate joint.
  328. .. _class_XRBodyTracker_constant_JOINT_RIGHT_MIDDLE_FINGER_PHALANX_DISTAL:
  329. .. rst-class:: classref-enumeration-constant
  330. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_MIDDLE_FINGER_PHALANX_DISTAL** = ``64``
  331. Right middle finger phalanx distal joint.
  332. .. _class_XRBodyTracker_constant_JOINT_RIGHT_MIDDLE_FINGER_TIP:
  333. .. rst-class:: classref-enumeration-constant
  334. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_MIDDLE_FINGER_TIP** = ``65``
  335. Right middle finger tip joint.
  336. .. _class_XRBodyTracker_constant_JOINT_RIGHT_RING_FINGER_METACARPAL:
  337. .. rst-class:: classref-enumeration-constant
  338. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_RING_FINGER_METACARPAL** = ``66``
  339. Right ring finger metacarpal joint.
  340. .. _class_XRBodyTracker_constant_JOINT_RIGHT_RING_FINGER_PHALANX_PROXIMAL:
  341. .. rst-class:: classref-enumeration-constant
  342. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_RING_FINGER_PHALANX_PROXIMAL** = ``67``
  343. Right ring finger phalanx proximal joint.
  344. .. _class_XRBodyTracker_constant_JOINT_RIGHT_RING_FINGER_PHALANX_INTERMEDIATE:
  345. .. rst-class:: classref-enumeration-constant
  346. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_RING_FINGER_PHALANX_INTERMEDIATE** = ``68``
  347. Right ring finger phalanx intermediate joint.
  348. .. _class_XRBodyTracker_constant_JOINT_RIGHT_RING_FINGER_PHALANX_DISTAL:
  349. .. rst-class:: classref-enumeration-constant
  350. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_RING_FINGER_PHALANX_DISTAL** = ``69``
  351. Right ring finger phalanx distal joint.
  352. .. _class_XRBodyTracker_constant_JOINT_RIGHT_RING_FINGER_TIP:
  353. .. rst-class:: classref-enumeration-constant
  354. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_RING_FINGER_TIP** = ``70``
  355. Right ring finger tip joint.
  356. .. _class_XRBodyTracker_constant_JOINT_RIGHT_PINKY_FINGER_METACARPAL:
  357. .. rst-class:: classref-enumeration-constant
  358. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_PINKY_FINGER_METACARPAL** = ``71``
  359. Right pinky finger metacarpal joint.
  360. .. _class_XRBodyTracker_constant_JOINT_RIGHT_PINKY_FINGER_PHALANX_PROXIMAL:
  361. .. rst-class:: classref-enumeration-constant
  362. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_PINKY_FINGER_PHALANX_PROXIMAL** = ``72``
  363. Right pinky finger phalanx proximal joint.
  364. .. _class_XRBodyTracker_constant_JOINT_RIGHT_PINKY_FINGER_PHALANX_INTERMEDIATE:
  365. .. rst-class:: classref-enumeration-constant
  366. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_PINKY_FINGER_PHALANX_INTERMEDIATE** = ``73``
  367. Right pinky finger phalanx intermediate joint.
  368. .. _class_XRBodyTracker_constant_JOINT_RIGHT_PINKY_FINGER_PHALANX_DISTAL:
  369. .. rst-class:: classref-enumeration-constant
  370. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_PINKY_FINGER_PHALANX_DISTAL** = ``74``
  371. Right pinky finger phalanx distal joint.
  372. .. _class_XRBodyTracker_constant_JOINT_RIGHT_PINKY_FINGER_TIP:
  373. .. rst-class:: classref-enumeration-constant
  374. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_RIGHT_PINKY_FINGER_TIP** = ``75``
  375. Right pinky finger tip joint.
  376. .. _class_XRBodyTracker_constant_JOINT_MAX:
  377. .. rst-class:: classref-enumeration-constant
  378. :ref:`Joint<enum_XRBodyTracker_Joint>` **JOINT_MAX** = ``76``
  379. Represents the size of the :ref:`Joint<enum_XRBodyTracker_Joint>` enum.
  380. .. rst-class:: classref-item-separator
  381. ----
  382. .. _enum_XRBodyTracker_JointFlags:
  383. .. rst-class:: classref-enumeration
  384. flags **JointFlags**: :ref:`🔗<enum_XRBodyTracker_JointFlags>`
  385. .. _class_XRBodyTracker_constant_JOINT_FLAG_ORIENTATION_VALID:
  386. .. rst-class:: classref-enumeration-constant
  387. :ref:`JointFlags<enum_XRBodyTracker_JointFlags>` **JOINT_FLAG_ORIENTATION_VALID** = ``1``
  388. The joint's orientation data is valid.
  389. .. _class_XRBodyTracker_constant_JOINT_FLAG_ORIENTATION_TRACKED:
  390. .. rst-class:: classref-enumeration-constant
  391. :ref:`JointFlags<enum_XRBodyTracker_JointFlags>` **JOINT_FLAG_ORIENTATION_TRACKED** = ``2``
  392. The joint's orientation is actively tracked. May not be set if tracking has been temporarily lost.
  393. .. _class_XRBodyTracker_constant_JOINT_FLAG_POSITION_VALID:
  394. .. rst-class:: classref-enumeration-constant
  395. :ref:`JointFlags<enum_XRBodyTracker_JointFlags>` **JOINT_FLAG_POSITION_VALID** = ``4``
  396. The joint's position data is valid.
  397. .. _class_XRBodyTracker_constant_JOINT_FLAG_POSITION_TRACKED:
  398. .. rst-class:: classref-enumeration-constant
  399. :ref:`JointFlags<enum_XRBodyTracker_JointFlags>` **JOINT_FLAG_POSITION_TRACKED** = ``8``
  400. The joint's position is actively tracked. May not be set if tracking has been temporarily lost.
  401. .. rst-class:: classref-section-separator
  402. ----
  403. .. rst-class:: classref-descriptions-group
  404. Property Descriptions
  405. ---------------------
  406. .. _class_XRBodyTracker_property_body_flags:
  407. .. rst-class:: classref-property
  408. |bitfield|\[:ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>`\] **body_flags** = ``0`` :ref:`🔗<class_XRBodyTracker_property_body_flags>`
  409. .. rst-class:: classref-property-setget
  410. - |void| **set_body_flags**\ (\ value\: |bitfield|\[:ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>`\]\ )
  411. - |bitfield|\[:ref:`BodyFlags<enum_XRBodyTracker_BodyFlags>`\] **get_body_flags**\ (\ )
  412. The type of body tracking data captured.
  413. .. rst-class:: classref-item-separator
  414. ----
  415. .. _class_XRBodyTracker_property_has_tracking_data:
  416. .. rst-class:: classref-property
  417. :ref:`bool<class_bool>` **has_tracking_data** = ``false`` :ref:`🔗<class_XRBodyTracker_property_has_tracking_data>`
  418. .. rst-class:: classref-property-setget
  419. - |void| **set_has_tracking_data**\ (\ value\: :ref:`bool<class_bool>`\ )
  420. - :ref:`bool<class_bool>` **get_has_tracking_data**\ (\ )
  421. If ``true``, the body tracking data is valid.
  422. .. rst-class:: classref-section-separator
  423. ----
  424. .. rst-class:: classref-descriptions-group
  425. Method Descriptions
  426. -------------------
  427. .. _class_XRBodyTracker_method_get_joint_flags:
  428. .. rst-class:: classref-method
  429. |bitfield|\[:ref:`JointFlags<enum_XRBodyTracker_JointFlags>`\] **get_joint_flags**\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`\ ) |const| :ref:`🔗<class_XRBodyTracker_method_get_joint_flags>`
  430. Returns flags about the validity of the tracking data for the given body joint (see :ref:`JointFlags<enum_XRBodyTracker_JointFlags>`).
  431. .. rst-class:: classref-item-separator
  432. ----
  433. .. _class_XRBodyTracker_method_get_joint_transform:
  434. .. rst-class:: classref-method
  435. :ref:`Transform3D<class_Transform3D>` **get_joint_transform**\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`\ ) |const| :ref:`🔗<class_XRBodyTracker_method_get_joint_transform>`
  436. Returns the transform for the given body joint.
  437. .. rst-class:: classref-item-separator
  438. ----
  439. .. _class_XRBodyTracker_method_set_joint_flags:
  440. .. rst-class:: classref-method
  441. |void| **set_joint_flags**\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`, flags\: |bitfield|\[:ref:`JointFlags<enum_XRBodyTracker_JointFlags>`\]\ ) :ref:`🔗<class_XRBodyTracker_method_set_joint_flags>`
  442. Sets flags about the validity of the tracking data for the given body joint.
  443. .. rst-class:: classref-item-separator
  444. ----
  445. .. _class_XRBodyTracker_method_set_joint_transform:
  446. .. rst-class:: classref-method
  447. |void| **set_joint_transform**\ (\ joint\: :ref:`Joint<enum_XRBodyTracker_Joint>`, transform\: :ref:`Transform3D<class_Transform3D>`\ ) :ref:`🔗<class_XRBodyTracker_method_set_joint_transform>`
  448. Sets the transform for the given body joint.
  449. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  450. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  451. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  452. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  453. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  454. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  455. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  456. .. |void| replace:: :abbr:`void (No return value.)`