Правильный многоугольник

Правильный многоугольник — выпуклый многоугольник, у которого равны все стороны и все углы между смежными сторонами.

Теорема 1. Около любого правильного многоугольника можно описать окружность, и притом только одну.

Теорема 2. В любой правильный многоугольник можно вписать окружность, и притом только одну.

Следствие 1. Окружность, вписанная в правильный многоугольник, касается сторон многоугольника в их серединах.

Следствие 2. Центр окружности, описанной около правильного многоугольника, совпадает с центром окружности, вписанной в этот многоугольник

Для построения правильных n – угольников при n › 2 обычно используется окружность, описанная около многоугольника.

Алгоритм очень прост.
Центральный угол окружности составляет 360º.
1. Делим 360º на n равных частей.
2. Проводим лучи до пересечения с окружностью.
3. Соединяем точки пересечения.
Полученный многоугольник является правильным n–угольником.

Пример алгоритма на JavaScript для построения координат вершин правильного многоугольника с заданным числом сторон n и радиусом r, где многоугольник центрируется вокруг начала координат (0, 0):

// Функция принимает два параметра: количество сторон n и радиус r.
// и возвращает массив координат - вершин многоугольника
function getPolygonVertices(n, r) {
    const vertices = [];
 
    for (let i = 0; i < n; i++) {
        // Вычисляем угол для каждой вершины
        const angle = (i / n) * Math.PI * 2;
 
        // Вычисляем координаты x и y для текущей вершины
        const x = r * Math.cos(angle);
        const y = r * Math.sin(angle);
 
        // Добавляем координаты в массив вершин
        vertices.push({ x, y });
    }
 
    return vertices;
}
 
// Пример использования
const numSides = 5;       // Количество сторон многоугольника
const radius = 100;       // Радиус окружности, описывающей многоугольник
const polygon = getPolygonVertices(numSides, radius);
console.log(polygon);     // Выведет массив с координатами вершин