Patent ID: 8427440
Filing Date: 2013-04-23
Classification: G06F

Abstract:
1. A computer-readable storage medium that is not a signal having stored thereon computer-executable instructions that, when loaded into at least one hardware processor and executed, cause the at least one hardware processor to: receive at least one indication of a physical action directed by at least one user toward a surface computing system, wherein the physical action comprises a plurality of fingers of the at least one user being in physical contact with the surface computing system to interact with a software application program being presented on the surface computing system and, as a result, each of the plurality of fingers being interpreted by the surface computing system as a contact point of a plurality of contact points; associate respective velocity parameters with the plurality of contact points; calculate differentials between velocity parameters associated with pairs of the plurality contact points; select a first contact point of the plurality of contact points and a second contact point of the plurality of contact points to identify a pair of contact points having a greatest differential in velocity and thereby separately identifying the first contact point as being associated with a first actual hand of the at least one user and the second contact point as being associated with a second actual hand of the at least one user, the first contact point having a first contact point velocity parameter and the second contact point having a second contact point velocity parameter; associate the first contact point with a first virtual hand data structure that is representative of the first actual hand; associate the second contact point with a second virtual hand data structure that is representative of the second actual hand; assign the first contact point velocity parameter to the first virtual hand data structure; assign the second contact point velocity parameter to the second virtual hand data structure; associate a first remainder of the plurality of contact points with the first virtual hand data structure; and associate a second remainder of the plurality of contact points with the second virtual hand data structure.