Здравствуйте!
Form1.MapFind2.Active := false;
Form1.MapFind2.FindPoint := false;
Form1.MapFind2.MapSelect.Clear;
Form1.MapFind2.MapObj.Style := OS_SELECT;
Form1.MapFind2.MapObj.PlaceOut := PP_PLANE;
Form1.MapFind2.MapSelect.AddSemantic(10,'505A25BE-1EBF-4D0A-9533-A',SC_EQUAL);
Form1.MapFind2.Active := true;
Form1.MapFind2.First;
Form1.MapFind1.Active := false;
Form1.MapFind1.FindPoint := false;
Form1.MapFind1.MapSelect.Clear;
Form1.MapFind1.MapObj.Style := OS_SELECT;
Form1.MapFind1.MapObj.PlaceOut := PP_PLANE;
Form1.MapFind1.MapSelect.AddSemantic(10,'AFABC6A0-24F1-4E9D-B40C-4',SC_EQUAL);
Form1.MapFind1.Active := true;
Form1.MapFind1.First;
While not Form1.MapFind1.Eof do
begin
If (Form1.MapCheckInside1.CheckSubjects = CHI_SECONDIN) or
(Form1.MapCheckInside1.CheckSubjects = CHI_TOUCHIN) then
begin
Form1.MapFind1.Center;
ShowMessage ('найден');
end;
Form1.MapFind1.Next;
end;
Координаты соприкасающихся точек:
Первого объекта
Form1.MapFind2.Active := false;
Form1.MapFind2.FindPoint := false;
Form1.MapFind2.MapSelect.Clear;
Form1.MapFind2.MapObj.Style := OS_SELECT;
Form1.MapFind2.MapObj.PlaceOut := PP_PLANE;
Form1.MapFind2.MapSelect.AddSemantic(10,'505A25BE-1EBF-4D0A-9533-A',SC_EQUAL);
Form1.MapFind2.Active := true;
Form1.MapFind2.First;
Form1.MapFind1.Active := false;
Form1.MapFind1.FindPoint := false;
Form1.MapFind1.MapSelect.Clear;
Form1.MapFind1.MapObj.Style := OS_SELECT;
Form1.MapFind1.MapObj.PlaceOut := PP_PLANE;
Form1.MapFind1.MapSelect.AddSemantic(10,'AFABC6A0-24F1-4E9D-B40C-4',SC_EQUAL);
Form1.MapFind1.Active := true;
Form1.MapFind1.First;
While not Form1.MapFind1.Eof do
begin
If (Form1.MapCheckInside1.CheckSubjects = CHI_SECONDIN) or
(Form1.MapCheckInside1.CheckSubjects = CHI_TOUCHIN) then
begin
Form1.MapFind1.Center;
ShowMessage ('найден');
end;
Form1.MapFind1.Next;
end;
Координаты соприкасающихся точек:
Первого объекта
Точка №6
460654.640
2174542.290
Точка №7
460645.300
2174533.250
Второго объекта
Точка №4
460654.640
2174542.290
Точка №5
460645.300
2174533.250
Других точек нет на линии соприкосновения двух объектов.
Если второй объект внутри первого,
то все хорошо ищет,
Если соприкасается, то не ищет.
Что-то не правильно?