# US 2019/0317636 A1 · Systems and methods for manipulating a virtual environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0317636 A1
- Document ID: US20190317636A1
- Status: Published application
- Kind: A1
- Application number: 16/456,248
- Filed: 2019-06-28
- Published: 2019-10-17
- Earliest claimed: 2015-07-29
- Assignees: Sensel, Inc.
- Applicants: Sensel Inc.
- Inventors: Ilya Daniel Rosenberg; John Aaron Zarraga; Alexander Meagher Grau; Charles Robert Watson
- Web page: https://patentgrep.com/patent/US20190317636A1

## CPC

- G06F 3/04144: {using an array of force sensing means (position sensing using the local deformation of sensor cells G06F3/0447)}
- G06F 3/017: {Gesture based interaction, e.g. based on a set of recognized hand gestures (interaction based on gestures traced on a digitiser G06F3/04883)}
- G06F 3/0346: with detection of the device orientation or free movement in a three-dimensional [3D] space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
- G06F 3/04166: {Details of scanning methods, e.g. sampling time, grouping of sub areas or time sharing with display driving (Synchronisation with the driving of the display or the backlighting unit to avoid interferences generated internally G06F3/04184)}
- G06F 3/045: using resistive elements, e.g. a single continuous surface or two parallel surfaces put in contact
- G06F 3/04815: Interaction with a metaphor-based environment or interaction object displayed as three-dimensional [3D], e.g. changing the user viewpoint with respect to the environment or object
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 3/04845: for image manipulation, e.g. dragging, rotation, expansion or change of colour
- G06F 3/04883: for inputting data by handwriting, e.g. gesture or text
- G06T 19/006: {Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00)}
- G06F 2203/04102: Flexible digitiser, i.e. constructional details for allowing the whole digitising part of a device to be flexed or rolled like a sheet of paper
- G06F 2203/04104: Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger
- G06F 2203/04105: Pressure sensors for measuring the pressure or force exerted on the touch surface without providing the touch position
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

One variation of a method for manipulating virtual objects within a virtual environment includes: determining a first position of a touch sensor within real space; based on the first position of the touch sensor within real space, bounding a virtual surface of a virtual object within the virtual environment tractable through inputs across the touch sensor; generating a first force vector comprising a magnitude related to a force magnitude of a first input on the touch sensor surface and a direction related to an orientation of the touch sensor within real space; locating an origin of the first force vector within the virtual environment based on a first location of the first input on the touch sensor surface and the first position of the touch sensor within real space; and manipulating the virtual surface of the virtual object within the virtual environment according to the first force vector.

## Claims

### Claim 1

A method for manipulating virtual objects within a virtual environment comprising:
at a first time, determining a first position of a touch sensor within a real space, the touch sensor comprising a touch sensor surface;
based on the first position of the touch sensor within the real space at the first time, bounding a virtual surface of a virtual object within the virtual environment tractable through inputs across an area of the touch sensor surface;
generating a first force vector comprising a magnitude related to a force magnitude of a first input on the touch sensor surface and a direction related to an orientation of the touch sensor within the real space at the first time; and
manipulating the virtual surface of the virtual object within the virtual environment according to the first force vector.

### Claim 2

A method for manipulating virtual objects within a virtual environment comprising:
tracking an orientation of a touch sensor surface within a real space;
orienting a virtual object globally within the virtual environment based on the orientation of the touch sensor surface in the real space;
receiving a touch image defining a magnitude and a position of a force input on the touch sensor surface;
rotating the virtual object locally about a first axis within the virtual environment based on the position of the force input on the touch sensor surface; and
rotating the virtual object locally about a second axis within the virtual environment based on the magnitude of the force input on the touch sensor surface, the second axis perpendicular to the first axis.

### Claim 3

A method for manipulating a virtual environment comprising, at a first time:
mapping a touch sensor surface to a virtual surface in a virtual environment;
receiving a touch image defining a magnitude and a position of a first force input on the touch sensor surface;
defining a direction of a first vector based on the position of the first force input;
defining a magnitude of the first vector based on the magnitude of the first force input; and
manipulating the virtual surface within the virtual environment according to the magnitude and the direction of first vector.
