MapplMath.CheckLinesIntersection

Модуль: MapplMath

Проверить на пересечение два линейных отрезка

Объявление

function CheckLinesIntersection(
	ax0,ay0,ax1,ay1,bx0,by0,bx1,by1,Delta,AngleDelta: Double;
	 var aResultX,aResultY: Double; flSegmentA,flSegmentB: boolean;
	 flCheckOverlap: boolean = false;
	 IntersectionType: TLinesIntersectionType = litDefault;
	 pAddPoint: PMarkDoublePoint = nil): TPointIntersectionStatus;

Параметры

ax0
координата начальной точки первого отрезка по горизонтали
ay0
координата начальной точки первого отрезка по вертикали
ax1
координата конечной точки первого отрезка по горизонтали
ay1
координата конечной точки первого отрезка по вертикали
bx0
координата начальной точки второго отрезка по горизонтали
by0
координата начальной точки второго отрезка по вертикали
bx1
координата конечной точки второго отрезка по горизонтали
by1
координата конечной точки второго отрезка по вертикали
Delta
максимальное расстояние, на котором точка считается принадлежащей линии
AngleDelta
максимальный угол между отрезками, при котором отрезки ститаются параллельными
aResultX
координата точки пересечения отрезков по горизонтали (возвращаемый параметр)
aResultY
координата точки пересечения отрезков по вертикали (возвращаемый параметр)
flSegmentA
флаг ограничения линии первого отрезка его пограничными точками
flSegmentB
флаг ограничения линии второго отрезка его пограничными точками
flCheckOverlap
флаг проверки частичного наложения отреков друг на друга (по умолчанию false)
IntersectionType
вариант определения пересечения отрезков

Возвращает

cpsNone, если отрезки не пересекаются, иначе вид пересечения отрезков

Описание

Метод позволяет определить точку пересечения как отрезков, так и линий, задаваемых этими отрезками (для слоя предельно минимальное расстояние определяется свойством компонента LayerCoordAccuracy, а для карты - MapCoordAccuracy

Смотри также

CheckLinesIntersection
Проверить на пересечение два линейных отрезка
CheckPolylinesIntersection
Проверить на пересечение две полилинии, заданные вещественными координатами, и определить точку пересечения
CheckPolylinesIntersectionInt
Проверить на пересечение две полилинии, заданные целочисленными координатами, и определить точку пересечения
GetPolylinesIntersection
Получить все точки пересечения двух полилиний
GetPolylinesIntersectionInt
Получить все точки пересечения двух полилиний, заданных целочисленными координатами