Страница 1 из 2
Слияние
Добавлено: 17 мар 2018, 07:52
Assi
Здравствуйте. Помогите пожалуйста срочно. Надо сделать слияние полигонов чтобы при нажатии кнопки слить автоматически выбиралась атрибуты того полигона у которого самая большая высота, а не так чтобы искать его в списке, который выходит после команды слить. У меня 10.2 версия Гиса, и она на английском. Поэтому ,если возможно, можете написать в английских командах пошагово. Вообще есть ли подобные команды, функций? Мне дали это задание, и сказали, что если я найду упрощённый путь, то примут меня на работу. Heeelp.

Re: Слияние
Добавлено: 17 мар 2018, 21:58
lam
1. Создать новое числовое поле, например с названием "new", в таблице атрибутов слоя полигонов (Add Field...), автомат будут проставлены нули.
2. Пункт меню Geoprocessing->Dissolve, в диалоговом окне сделайте установки (см. вложение).
new - новое числовое поле, которое Вы создали.
h - поле значений высот.
Удачи в трудоустройстве.

Re: Слияние
Добавлено: 19 мар 2018, 07:43
Assi
Спасибо большое. Но у меня в слое много зданий. И каждое здание состоит из нескольких полигонов, у которых разная высота. Мне надо сделать слияние так, чтобы каждое здание при слияний сохранила свою максимальную высоту. А не так, чтобы в конечном у всех зданий была высота самого высокого здания.

Re: Слияние
Добавлено: 19 мар 2018, 07:54
trir
каков признак для объеденения?
Re: Слияние
Добавлено: 19 мар 2018, 08:11
Assi
в смысле признак? не поняла
Re: Слияние
Добавлено: 19 мар 2018, 08:16
trir
полигоны для объедения - накладываются, косаются или имеют общий атрибут?
или вы просто знаете, что их нужно объеденить?
Re: Слияние
Добавлено: 19 мар 2018, 08:19
Assi
накладываются
Re: Слияние
Добавлено: 19 мар 2018, 08:22
Assi
К примеру
Re: Слияние
Добавлено: 19 мар 2018, 15:16
Assi
А С помощью пространственного соединения можно объединить пересекающиеся полигоны, так чтобы в конечном атрибуте была макс.высота!
Re: Слияние
Добавлено: 19 мар 2018, 15:17
trir
можно
Re: Слияние
Добавлено: 19 мар 2018, 15:22
Assi
Как называется функция на английском, пошагово можете описать, пожалуйста
Re: Слияние
Добавлено: 21 мар 2018, 09:06
trir
как то так
Код: Выделить всё
SELECT fid1, geometry::UnionAggregate(g2) as ug2, max(e2) as me
FROM
(select [FeatId] as fid1, [Geometry] as g1, ELEVATION as e1 from [Default].[tt2] where [FeatId]=1) as tbl1 left join
(select [FeatId] as fid2, [Geometry] as g2, ELEVATION as e2 from [Default].[tt2]) as tbl2
on g1.STIntersects(g2) = 1
group by fid1
Re: Слияние
Добавлено: 21 мар 2018, 21:42
Assi
что за коды. я не умею ими пользоваться
Re: Слияние
Добавлено: 21 мар 2018, 21:52
trir
Re: Слияние
Добавлено: 25 мар 2018, 08:38
Assi