US 12,079,388 B2
Barometric sensing of arm position in a pointing controller system
Nathaniel James Martin, London (GB); Charles James Bruce, London (GB); and Lewis Antony Jones, London (GB)
Assigned to ARKH LITHO HOLDINGS, LLC, Dallas, TX (US)
Appl. No. 18/040,405
Filed by ARKH Litho Holdings, LLC, Dallas, TX (US)
PCT Filed Mar. 9, 2021, PCT No. PCT/IB2021/051964
§ 371(c)(1), (2) Date Feb. 2, 2023,
PCT Pub. No. WO2021/181280, PCT Pub. Date Sep. 16, 2021.
Claims priority of provisional application 62/987,845, filed on Mar. 10, 2020.
Prior Publication US 2023/0297166 A1, Sep. 21, 2023
Int. Cl. G06F 3/01 (2006.01); G06F 3/0346 (2013.01); G06F 3/04815 (2022.01); H04W 4/029 (2018.01)
CPC G06F 3/014 (2013.01) [G06F 3/016 (2013.01); G06F 3/017 (2013.01); G06F 3/0346 (2013.01); G06F 3/04815 (2013.01); G06F 2203/0331 (2013.01); G06F 2203/0384 (2013.01); H04W 4/029 (2018.02)] 25 Claims
OG exemplary drawing
 
1. A method for controlling interactions with virtual objects using a pointing controller, the method comprising:
obtaining sensor data from state sensing module of the pointing controller, the sensor data including barometric sensing data;
estimating a height of the pointing controller based on the barometric sensing data;
tracking movement of a pointing vector through a three-dimensional virtual space based on the estimated height and a stored arm model, wherein tracking the movement of the pointing vector comprises:
detecting whether the pointing controller is indoors or outdoors; and
adjusting parameters of the arm model depending on whether the pointing controller is indoors or outdoors;
detecting an intersection of the pointing vector with coordinates occupied by a virtual object in the three-dimensional virtual space to place the virtual object in a selected state;
detecting a first interaction with the pointing controller while the virtual object is in the selected state;
placing the virtual object in a grabbed state in response to the first interaction;
causing position of the virtual object to track movement of the pointing controller while the virtual object is in the grabbed state;
detecting a second interaction with the virtual object while the virtual object is in the grabbed state;
placing the virtual object in a free state in response to the second interaction; and
causing the virtual object to stop tracking movement of the pointing vector in response to the second interaction.