---
title: "IntersectCurvCurv - Получить координаты точек пересечения двух кривых"
type: interface
api: [api7]
tags: [interface, api7, intersectcurvcurv]
sources:
  - intersectcurvcurv.html
---

*API экспортных функций > Функции работы с графическим документом  > Вспомогательные построения  > Функции вычисления пересечений *


## IntersectCurvCurv - Получить координаты точек пересечения двух кривых

Пример...
Синтаксис:
```
void IntersectCurvCurv (reference p1, reference p2, int *kp, double xp, double yp, int MaxCount);
Входные параметры:
p1    - указатель на первую кривую,
p2    - указатель на вторую кривую,
MaxCount    - максимальное число выдаваемых точек пересечений.
Выходные параметры:
kp    - число пересечений,
xp, yp    - координаты точки пересечения.
```


## IntersectCurvCurv - пример использования

void IntersectCurvCurv_Example (void) {
double x[8], y[8];
int k, I;
reference p1, p2;
p1 = Circle ( 60, 60, 30, 1);
p2 = Bezier ( 0, 2);
Point ( 20, 20, 0);
Point ( 40, 50, 0);
Point ( 50, 30, 0);
Point ( 70, 90, 0);
Point (100, 20, 0);
EndObj();
IntersectCurvCurv (p1, p2, &k, x, y, 99);
char buf[128];
sprintf(buf, "Количество пересечений = %i", k);
::Message(buf);
if (k)
for (I=0; i<k; I) Point (x[i], y[i], 1); /* точки пересечения */
};
