Как найти центр фигуры?

527
17 февраля 2017, 04:31

Функция, находящая центр фигуры уже есть. Но похоже, она работает не правильно. Вот она:

function center() {
  var count = 0, // Число точек
    allx = 0, // Сумма координат всех точек по оси x
    ally = 0, // Сумма координат всех точек по оси y
    seg = poly.segments; // массив точек
  for (var i = 0; i < seg.length; i++) {
    allx += seg[i][0];
    ally += seg[i][1];
    count++;
  }
  return [allx / count, ally / count]; // Центр фигуры - [x, y]
}

jsfiddle

Почему при вращении многоугольника вокруг своего центра точка, возвращаемая функцией, тоже вращается? Как можно исправить функцию?

Answer 1

вращение всегда будет выглядеть эстетично, если вращать вокруг этой точки ((minx+maxx)/2,(miny+maxy)/2), где minx, miny, maxx, maxy - максимальные и минимальные координаты всех вершин, точку только не надо перерасчитывать в процессе вращения

READ ALSO
После клика на ссылку, при загрузке страницы сохранить прежние настройки. jquery

После клика на ссылку, при загрузке страницы сохранить прежние настройки. jquery

Добрый деньУ меня есть боковое меню и при клике оно должно быть таким

546
Можно ли подключить шеринг от Яндекса через класс

Можно ли подключить шеринг от Яндекса через класс

Есть у меня постраничный слайдер, в каждом слайде отдельная статьяДля каждой статьи свой блок с шерингом

325
Как определить, что поле формы сейчас редактируется (js/php)

Как определить, что поле формы сейчас редактируется (js/php)

Как определить и вывести, что поля в форме редактируется(как пример редактирование статьи) в данный момент и кемт

294