--- title: "IntersectCirLin - Получить координаты точек пересечения окружности и прямой" type: interface api: [api7] tags: [interface, api7, intersectcirlin] sources: - intersectcirlin.html --- *API экспортных функций > Функции работы с графическим документом  > Вспомогательные построения  > Функции вычисления пересечений * ## IntersectCirLin - Получить координаты точек пересечения окружности и прямой Пример... Аналог данной функции при использовании Automation - метод ksMathematic2D::ksIntersectCirLin. Синтаксис: ``` void IntersectCirLin (double xc, double yc, double rad, double x, double y, double ang, int *kp, double xp, double yp); Входные параметры: xc, yc - координаты центра окружности, rad - радиус окружности, x, y - координаты точки на прямой, ang - угол наклона прямой. Выходные параметры: kp - число пересечений (от 0 до 2), xp, yp - координаты точки пересечения. ``` ## IntersectCirLin - пример использования void IntersectCirLin_Example (void) { double x, y; int k; Circle ( 60, 60, 30, 1); Line ( 20, 20, 45); IntersectCirLine (60, 60, 30, 20, 20, 45, &k, &x, &y); char buf[128]; sprintf(buf, "Количество пересечений = %i", k); ::Message(buf); if (k) Point (x, y, 1); /* точка пересечения */ };