Страница 1 из 2
Как извлечь координаты точек привязки аннотаций?
Добавлено: 26 май 2013, 18:25
Константин Силкин
Добрый день, коллеги!
Вопрос возможно простой, но ответа не знаю. Есть слой с аннотациями. Аннотации к конкретным объектам не привязаны. Требуется извлечь координату точки, в которой расположена каждая аннотация. Разумеется очень желательно, чтобы вместе с координатами было экспортировано и содержимое атрибутивной таблицы. Программа максимум — получить shape-файл, в котором будут сохранены точечные объекты со всеми атрибутами аннотаций
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 26 май 2013, 23:45
novia
feature to point
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 27 май 2013, 08:55
Константин Силкин
novia писал(а):feature to point
Спасибо за краткий ответ! Теперь, если не сложно, скажите где это и что это
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 27 май 2013, 08:59
Slinger
В ToolBox
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 27 май 2013, 09:23
doujin
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 27 май 2013, 18:52
Константин Силкин
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 27 май 2013, 21:53
Константин Силкин
Получилось сделать из аннотаций точечный shape-файл. Это было нужно чтобы исправить неверную СК. Затем после возвращения в проект и повторного создания аннотаций исказились значения некоторых атрибутов (FontSize, Angle и др.). Если раньше они были разными в зависимости от ситуации, то теперь такими как я установил при создании надписей точечного слоя. Очевидно это закономерное поведение и требовать от ArcMap иного не надо. Вопрос в том как вернуть старые значения?
Есть таблица атрибутов точечного слоя. У него все параметры верные. Ключевое поле FID.
И есть таблица атрибутов слоя аннотаций. У него некоторые параметры неверные. Ключевое поле FeatureID.
Попробовал объединить эти таблицы с помощью Join. Не вышло. В таблице атрибутов конечно показываются значения те, что мне надо, из таблицы точечного слоя. Однако для управления аннотациями они не используются, берутся родные значения из собственной таблицы.
Прежде чем начинать разбираться с заменой значений через SQL-запрос, хотел бы спросить, может что я не так делал с этим приёмом
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 27 май 2013, 23:32
novia
что мешает после join перенести значения правильного размера калькулятором в значения неправильного?
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 28 май 2013, 17:15
Константин Силкин
novia писал(а):что мешает после join перенести значения правильного размера калькулятором в значения неправильного?
Кстати, да, спасибо! Этот приём работает. Но к сожалению не всегда. Например, значения поля FontSize я с лёгкостью перенёс с помощью калькулятора из одной таблицы в другую. Однако поле Bold, имея тип Short в обеих таблицах, в точечном слое содержит значения 1 или 0, а в слое аннотаций — "Да" или "Нет". По-видимому из-за этого простое переприсвоение значения в данном случае не работает
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 29 май 2013, 08:10
novia
то есть вы ставите 1 и текст остается нежирным?
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 29 май 2013, 08:23
Константин Силкин
novia писал(а):то есть вы ставите 1 и текст остается нежирным?
Не происходит присваивания значений. Сообщений об ошибках тоже нет, которые могли бы возникнуть, начни я присваивать текстовому полю числовые значения
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 29 май 2013, 08:40
novia
тогда можно выделить объекты, которым надо жирный текст и в окне Атрибуты применить эту настройку
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 29 май 2013, 08:46
Константин Силкин
novia писал(а):тогда можно выделить объекты, которым надо жирный текст и в окне Атрибуты применить эту настройку
Да, согласен, можно. Потом ещё Italic, а остальные значащие атрибуты числовые. Только всё же хотелось бы разобраться в причине. То поле, которое содержит значения "Да" и "Нет", будучи числовым, ведёт себя подобно логическому типу. Вероятно и присваивание надо проводить как-то иначе
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 29 май 2013, 08:58
doujin
То поле на самом деле числовое. И содержит значения 1 или 0. Просто этому же полю назначен справочник (домен), в котором записано, что 1 это "Да", а 0 это "Нет". Так что вы смело можете через калькулятор поля присваивать туда свои нули и единицы из атрибутов точечного слоя.
Re: Как извлечь координаты точек привязки аннотаций?
Добавлено: 29 май 2013, 09:33
Константин Силкин
doujin писал(а):Так что вы смело можете через калькулятор поля присваивать туда свои нули и единицы из атрибутов точечного слоя.
Так я и делаю. Но эффект отсутствует. Значения не изменяются