.. role:: blue :class: blue Построение правильного многоугольника ====================================== .. _Constructing_Regular_Polygon: .. версия ядра: 118047 Функция .. code-block:: cpp MbResultType RegularPolygon( const MbCartPoint & centre, const MbCartPoint & point, size_t vertexCount, bool describe, MbCurve *& result ) выполняет построение замкнутой двумерной ломаной линии, представляющей собой правильный многоугольник, вписанный в обозначенную окружность или описанный около окружности. Входными параметрами функции являются: - **centre** - центр окружности, описанной или вписанной в равносторонний многоугольник; - **point** - точка на окружности; - **vertexCount** - количество вершин многоугольника; - **describe** - флаг, определяющий положение многоугольника относительно окружности. Выходным параметром функции является построенная кривая **result**. Функция возвращает код результата операции из перечисления :ref:`MbResultType `(см. *mb_operation_result.h*). Функция объявлена в файле *action_curve.h*. Параметры **centre** и **point** определяют окружность, в которую будет вписан (**describe** = *false*) многоугольник с числом вершин *vertexCount* или вокруг которой будет описан (**describe** = *true*) многоугольник с числом вершин **vertexCount**. Параметр **vertexCount** определяет число вершин правильного многоугольника: - при **vertexCount** == 0 строится окружность с центром **centre**, проходящая через **point**; - при **vertexCount** == 1 строится отрезок с крайними точками **centre** и **point**; - при **vertexCount** == 2 строится прямоугольник со сторонами, параллельными глобальным осям, и противоположными вершинами в **centre** и **point**, рис. 1: .. figure:: /MODELER/TWO-DIMENSIONAL_CURVE_CONSTRUCTION_METHODS/pictures/M.3.5.3.png :width: 9cm :align: center Рис. 1 - при **vertexCount** >= 3 строится правильный многоугольник с заданным числом сторон. Построенная кривая будет замкнутой ломаной линией, описанной в подразделе :ref:`Двумерная ломаная линия MbPolyline `. На рис. 2 приведён вписанный в окружность правильный многоугольник, а на рис. 3 приведён описанный вокруг окружности правильный многоугольник: .. figure:: /MODELER/TWO-DIMENSIONAL_CURVE_CONSTRUCTION_METHODS/pictures/M.3.5.1.png :width: 10cm :align: center Рис. 2 .. figure:: /MODELER/TWO-DIMENSIONAL_CURVE_CONSTRUCTION_METHODS/pictures/M.3.5.2.png :width: 10cm :align: center Рис. 3 В тестовом приложении *test.exe* построение выпуклой равносторонней двумерной ломаной выполняется командой меню «Создать→Кривую на плоскости→По точкам→Многоугольник».