TMapObjectStructure.CheckIntersectionByLine
Модуль: MapObject
Класс: TMapObjectStructure
Проверить пересечение объекта линией
Объявление
function CheckIntersectionByLine(x0,y0,x1,y1,Delta,AngleDelta: double;
var aResultX,aResultY: double; var soIndex: integer;
flSegment: boolean): TPointIntersectionStatus;
Параметры
x0
- значение координаты начальной узловой точки отрезка по горизонтали
y0
- значение координаты начальной узловой точки отрезка по вертикали
x1
- значение координаты конечной узловой точки отрезка по горизонтали
y1
- значение координаты конечной узловой точки отрезка по вертикали
Delta
- максимальное расстояние, на котором точка считается принадлежащей линии
AngleDelta
- максимальный угол между отрезками, при котором отрезки ститаются параллельными
aResultX
- координата точки пересечения по горизонтали (возвращаемый параметр)
aResultY
- координата точки пересечения по вертикали (возвращаемый параметр)
soIndex
- индекс подобъекта, у которого нашлась точки пересечения
flSegment
- флаг ограничения точки пересечения границами отрезка линии (по умолчанию true)
Возвращает
cpsNone, если отрезки не пересекаются, иначе вид пересечения отрезков
Описание
Метод находит первую точку пересечения (для слоя предельно минимальное расстояние определяется свойством компонента LayerCoordAccuracy, а для карты - MapCoordAccuracy