--- title: "IntersectCirArc - Получить координаты точек пересечения окружности и дуги" type: interface api: [api7] tags: [interface, api7, intersectcirarc] sources: - intersectcirarc.html --- *API экспортных функций > Функции работы с графическим документом  > Вспомогательные построения  > Функции вычисления пересечений * ## IntersectCirArc - Получить координаты точек пересечения окружности и дуги Пример... Аналог данной функции при использовании Automation - метод ksMathematic2D::ksIntersectCirArc. Синтаксис: ``` void IntersectCirArc (double xcc, double ycc, double radc, double xac, double yac, double rada, double fa1, double fa2, short directa, int * kp, double xp, double yp); Входные параметры: xcс, ycс - координаты центра окружности, radc - радиус окружности, xac, yac - координаты центра дуги, rada - радиус дуги, fa1, fa2 - углы начальной и конечной точек дуги, directa - направление дуги: 1 - против часовой стрелки, -1 - по часовой стрелке. Выходные параметры: kp - число пересечений (от 0 до 2), xp, yp - координаты точки пересечения. ``` ## IntersectCirArc - пример использования void IntersectCirArc_Example (void) { double x[2], y[2]; int k, i; Circle ( 60, 60, 30, 1); Arc ( 75, 60, 30, -90, 90, -1, 1); IntersectCirArc (60, 60, 30, 75, 60, 30, -90, 90, -1, &k, x, y); char buf[128]; sprintf(buf, "Количество пересечений = %i", k); ::Message(buf); if (k) for (I=0; i