как найти пересечение двух объектов

MapInfo, MapBasic
Ответить
Sesc25
Новоприбывший
Сообщения: 7
Зарегистрирован: 18 ноя 2011, 16:14
Репутация: 0

как найти пересечение двух объектов

Сообщение Sesc25 » 26 ноя 2011, 00:13

помогите пожалуйста найти и исправить, где я сделал ошибку


include "mapbasic.def"
Declare Sub Main
Sub Main
Dim pol as object
Dim i As Integer
Dim x1, y1, x2, y2, x3, y3, x4, y4 As Float
Open Table "Poligon.TAB"
map from Poligon
set map layer 1 editable
Fetch first from Poligon
pol=Poligon.obj
Insert Into poligon (obj)
Values (CreateLine (-0.864913, 0.043692, -0.412056, 0.518248))
Set Target pol=poligon.obj
Objects Overlay=poligon.obj
End Sub

делаю компиляцию пишет ошибок нет, запускаю утилиту пишет некорректно выбран изменяемый объект

Andrew
Активный участник
Сообщения: 134
Зарегистрирован: 01 окт 2009, 08:52
Репутация: 3
Откуда: Москва

Re: как найти пересечение двух объектов

Сообщение Andrew » 28 ноя 2011, 09:59

Если не ошибаюсь, то не хватает выбора объекта перед назначением его изменяемым.

Sesc25
Новоприбывший
Сообщения: 7
Зарегистрирован: 18 ноя 2011, 16:14
Репутация: 0

Re: как найти пересечение двух объектов

Сообщение Sesc25 » 28 ноя 2011, 11:20

include "mapbasic.def"
Declare Sub Main
Sub Main
Dim pol as object
Dim i As Integer
Dim x1, y1, x2, y2, x3, y3, x4, y4 As Float
Open Table "Poligon.TAB"
map from Poligon
set map layer 1 editable
Fetch first from Poligon
pol=Poligon.obj
Insert Into poligon (obj)
Values (CreateLine (-0.864913, 0.043692, -0.412056, 0.518248))
Select * from poligon
Set Target on pol=poligon.obj
Objects Overlay set target
End Sub
поставил выбрать объект но программа не работает точки не ставятся может другой оператор брать надо?

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: как найти пересечение двух объектов

Сообщение Boris » 05 дек 2011, 18:20

Все пересечения мапинфо заточены под пересечение полигонов. Даже полилинии перед пересечением переводятся в них.
Может вот такая функция поможет - IntersectNodes( ) ?

Ответить

Вернуться в «MapInfo»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя