Так это ты ломаешь каптчу на булке?
Шучу
Предлагаю простой способ:
Переносишь 1ую точку второй кривой на 1ую точку первой.
Пробегаешься циклом по остальным точкам и cравниваешь дистанцию от данной точки первой кривой до данной точки второй кривой. И если она больше допустимой погрешности то они не равны.
Тоесть допустим:
2 кривые
2 массива.
В одной кривой 5 звеньев.
Перемещение второй к первой:
x_d=Curve1[i].x-Curve2[i].x; // смещение
for(i=0;i<5;i++)
{
Curve2[i].x-=x_d; // перемещаем
}
Сравнение:
for(i=0;i<5;i++)
{
if (Distance(Curve1[i].x,Curve1[i].y,Curve2[i].x,Curve2[i].y)>max_dist)
{
// Они не равны
Exit;
}
}
Дистанцию находить так:
Sqr(((x1 - x2) * (x1 - x2)) + ((y1 - y2) * (y1 - y2)))
Если нужен код в B3D, то могу и в нём написать.