Smile!

Построение происходит через массив точек pointsArr:
первый элемент- набор стилей для отдельной части изображения.
второй элемент - набор точек для построения этого изображения.

Для изменения положения используются функции rotate, scale, moveTo, draw в которые передается набор всех точек изображения.

В функция button передается массив точек, контекст и коэффициент движения для ответа на нажатия на странице.