| CPC G06F 3/04815 (2013.01) [G06F 3/011 (2013.01); G06F 3/017 (2013.01); G06F 3/0346 (2013.01); G06F 3/04845 (2013.01); G06F 3/0488 (2013.01); G06F 3/04883 (2013.01); G06T 19/006 (2013.01); G06T 19/20 (2013.01); G06T 2219/2021 (2013.01); G06T 2219/2024 (2013.01)] | 20 Claims |

|
1. A computer-implemented method, comprising:
generating, by one or more processors, a matrix using image data from a camera of a mobile computing device and movement data from an inertial measurement sensor of the mobile computing device;
tracking, by the one or more processors, a movement of the mobile computing device using the movement data;
generating, by the one or more processors, a virtual painting using the matrix and the movement of the mobile computing device, the virtual painting comprising virtual lines;
displaying, by the one or more processors, on a touchscreen of the mobile computing device, the virtual painting in conjunction with a real-world scene captured by the camera;
tracking, by the one or more processors, using the inertial measurement sensor, a forward movement and a backward movement of the mobile computing device in three dimensions;
giving, by the one or more processors, a three-dimensional appearance to the virtual lines of the virtual painting using the forward movement and the backward movement;
rotating, by the one or more processors, the virtual painting in response to detecting a two-finger rotation gesture on the touchscreen of the mobile computing device;
in response to repositioning the virtual painting to a background position within the real-world scene, adjusting, by the one or more processors, a size of the virtual painting to scale the virtual painting in the real-world scene based on the background position;
in response to repositioning the virtual painting to a foreground position within the real-world scene, adjusting, by the one or more processors, the size of the virtual painting to scale the virtual painting in the real-world scene based on the foreground position; and
displaying, by the one or more processors, a trail of animated virtual objects separate from the virtual lines of the virtual painting as the virtual painting is repositioned.
|