--- title: "IntersectLinSLinS - Получить координаты точки пересечения двух отрезков" type: interface api: [api7] tags: [interface, api7, intersectlinslins] sources: - intersectlinslins.html --- *API экспортных функций > Функции работы с графическим документом  > Вспомогательные построения  > Функции вычисления пересечений * ## IntersectLinSLinS - Получить координаты точки пересечения двух отрезков Пример... Аналог данной функции при использовании Automation - метод ksMathematic2D::ksIntersectLinSLinS. Синтаксис: ``` Void IntersectLinSLinS (double x11, double y11, double x12, double y12, double x21, double y21, double x22, double y22, int * kp, double * xp, double *yp); Входные параметры: x11, y11 - координаты начальной точки первого отрезка, x12, y12 - координаты конечной точки первого отрезка, x21, y21 - координаты начальной точки второго отрезка, x22, y22 - координаты конечной точки второго отрезка. Выходные параметры: kp - число пересечений (0 или 1), xp, yp - координаты точки пересечения. ``` ## IntersectLinSLinS - пример использования void IntersectLinSLinS_Example (void) { double x, y; int k; LineSeg ( 20, 20, 100, 100, 1); LineSeg ( 80, 20, 0, 50, 1); IntersectLinSLinS (20, 20, 100, 100, 80, 20, 0, 50, &k, &x, &y); char buf[128]; sprintf(buf, "Количество пересечений = %i", k); ::Message(buf); if (k) Point (x, y, 1); /* точка пересечения */ };