主权项 |
1. A method, comprising:
receiving first depth data about an environment at a computing device; generating a first point cloud from the first depth data using the computing device; determining a haptic interface point (HIP) using the computing device; determining, using the computing device, a first force vector between the HIP and the first point cloud utilizing a proxy, wherein the proxy is configured to select zero or more points near the proxy, wherein the proxy comprises a center of the proxy and at least three scale radii r1, r2, and r3 with r1<r2≦r3, and wherein determining the first force vector comprises:
determining a closest point within the first point cloud to the center of the proxy, and a closest distance between the closest point and the center of the proxy;selecting one or more movement states based on at least one comparison between the closest distance and at least one radius of the three radii;determining a surface-normal set of points based on points within the first point cloud and within the radius r3 of the center of the proxy;determining a sum of a number of surface-normal estimates, wherein each surface-normal estimate in the number of surface-normal estimates comprises an estimate of a surface normal between a surface-normal point in the set of surface-normal points and the proxy; anddetermining an estimated surface normal n between the proxy and the first point cloud based on the sum of the number of surface-normal estimates;determining a HIP vector u between the HIP and the center of the proxy, and a negated HIP vector −u;determining an angle θ between −u and n;determining whether the angle θ exceeds a predetermined angle θ threshold and that the HIP is not at the center of the proxy; andin response to determining that the angle θ exceeds the predetermined angle θ threshold and that the HIP is not at the center of the proxy, moving the proxy; sending, from the computing device, a first indication of haptic feedback based on the first force vector; receiving second depth data about the environment at the computing device, wherein the second depth data differs from the first depth data; generating a second point cloud from the second depth data using the computing device; determining a second force vector between the HIP and the second point cloud using the computing device; and sending, from the computing device, a second indication of haptic feedback based on the second force vector. |