Geomedia.com.ua - Спрашивали?Отвечаем!
Поиск
 

13.08.2007

Ошибка: Error creating a legend entry

Вопрос:

Здравствуйте, у меня в работе возникла проблема: при копировании слоя через функцию Оutput to Feature Classes возникает ошибка. Тот слой, который я копирую не подгружается в окно и выскакивает надпись

(Error creating a legend entry for земельный_фонд_без_10процентов

Source: GTableDefs::Item

Description: Item not found in collection

Continue with operation?)

Помогите решить проблему!

Решение:

К сожалению, проблема не описана детально и не подкреплена иллюстрациями (скриншотами экрана).

Неизвестно в какую СУБД производится попытка «скопировать слой» или, говоря терминами более корректными в отношении GeoMedia, создать фичер-класс (класс объектов) – в Oracle, MS SQL, Access? И производится ли копирование данных в новый фичер-класс или в уже существующий?

Также из описания неясно - сообщение об ошибке указывает именно на тот класс объектов в который копируются данные или другой?

Приведенное в письме сообщение об ошибке «Error creating a legend entry…» говорит не о проблеме в выполнении команды Оutput to Feature Classes, а о невозможности добавить фичер-класс в легенду, что может быть вызвано некорректным описанием фичер-класса в служебных таблицах GeoMedia.

Попробуйте воспользоваться утилитой Database Utilities и перерегистрировать метаданные проблемного фичер-класса, а затем добавить его в легенду.

Теория:

Database Utilities

Инструментарий Database Utilities включает утилиты для управления и обновления метаданных GeoMedia в Access, Oracle и SQL Server. Утилиты поставляются с GeoMedia Professional и GeoMedia Web Map. Утилиты предназначены для администрирования баз данных и не должны использоваться рядовыми пользователями.

Инструментарий Database Utilities доступен из Start > All Programs > GeoMedia Professional > Utilities > Database Utilities.

Инструментарий Database Utilities включает семь отдельных утилит, как показано на рисунке ниже:

Database Utilities

В зависимости от типа базы данных возможны следующие манипуляции с метаданными:

Database

Utility Enabled

Возможности утилиты

Access

Change Database Connection

Изменение подключения к базе данных

Insert Feature Class Metadata

Вставка метаданных фичер-класса

Edit Feature Class Metadata

Редактирование метаданных фичер-класса

Delete Feature Class Metadata

Удаление метаданных фичер-класса

Create Metadata Tables

Создание метатаблиц

Assign Coordinate System

Назначение системы координат

Clear Modification Log

Очистка журнала изменений

SQL Server

Change Database Connection

Изменение подключения к базе данных

Insert Feature Class Metadata

Вставка метаданных фичер-класса

Edit Feature Class Metadata

Редактирование метаданных фичер-класса

Delete Feature Class Metadata

Удаление метаданных фичер-класса

Create Metadata Tables

Создание метатаблиц

Assign Coordinate System

Назначение системы координат

Clear Modification Log

Очистка журнала изменений

Oracle Object Model

Change Database Connection

Изменение подключения к базе данных

Insert Feature Class Metadata

Вставка метаданных фичер-класса

Edit Feature Class Metadata

Редактирование метаданных фичер-класса

Delete Feature Class Metadata

Удаление метаданных фичер-класса

Create Metadata Tables

Создание метатаблиц

Assign Coordinate System

Назначение системы координат

Clear Modification Log

Очистка журнала изменений

Create Modification Log Triggers

Создание триггера журнала изменений


 

16.12.2006

о команде Теодолитный ход

Добрый день! У меня в работе возникла небольшая проблема. В ГеоМедии работаю полгода, совсем недавно стала работать в области Земельного Кадастра. Мне необходимо нарисовать границу земельного участка. У меня есть румбы, горизонтальные проложения и радиусы кривой. Как нарисовать теодолитный ход в ГеоМедии я разобралась. Но как сделать из Линии Арку необходимого мне радиуса никак не пойму.

Например, есть такой маленький участочек:

точки румбы (град мин) Горизонт проложение (м) Радиус кривой (м)

187-186 ЮЗ 8 54,6 40,998

186-188 СВ 0 0,0 153,708

188-187 ЮВ 3 12,6 113,383 269,997

И если можно расскажите пожалуйста поподробнее о каманде Теодолитный ход.

Отвечаем на Ваши вопросы.

Отвечаем на Ваши вопросы

1. Используя меню ГеоМедии Insert - Traverse, можно построить Арки.

На картинке показан пример.

2. В земельном кадастре, насколько нам известно, нет таких элементов, как арка (дуга), окружность. Все контура описываются полигонами, даже клумбы круглой формы описываются при помощи замкнутой полилинии.

3. Для выполнения работ в области земельного кадастра удобнее пользоваться специализированным ПО.

Есть продукт GeoMedia Parcel Manager  который работает с реляционными данными и заточен под работу с контурами.

 

24.07.2006

Проблема в том, что мне нужно получить на выходе класс объектов, которые бы содержали кадастровые номера вида: 00:00:00 00 00:0000.

Вопрос мы получили по почте на ed@geomedia.com.ua

Добрый день! У меня в работе возникла следующая проблема: Есть 2 класса объектов. Первый класс – объекты, представляющие собой кадастровые кварталы в виде 00:00:00 00 00.Второй класс – объекты, представляющие земельные участки. Имеется аналогичная семантика, в том числе и номер участка, в виде: 0000.Проблема в том, что мне нужно получить на выходе класс объектов, которые бы содержали кадастровые номера вида: 00:00:00 00 00:0000. Я пробовал использовать функцию AGREGATION, но, к сожалению, у меня ни чего не получилось.Может быть вы мне сможете чем то помочь?

Ответ:

Смоделируем вашу задачу:

Исходные классы объектов
Parcel (Участки):

ID_P – счетчик (не повторяется)

NumberParcel – номер участка

Structure (Кварталы):

ID_S – счетчик (не повторяется)

NumberStruct – номер квартала

Общий ход решения: Задача решается с помощью двух шагов: сначала нужно создать динамический класс "Все участки внутри кваратала", затем нужно произвести конкатенацию (склеивание) частей кадастрового номера в этом классе и получить полный кадастровый номер. Мы немного усложнили решение, т.к. полагаться на то, что кадастровые кварталы полностью содержат участки нельзя, и поэтому  простраственный запрос Entirely Contained By потерял бы те участки которе случайно (и ничтожно мало) выходят за пределы квартала, и наоборот менее строгий Contains привел бы к тому, что участки соседних  кварталов, которые касаются границы или также случайно (и незначительно) пересекают границу квартала, попали бы в результат запроса. Именно поэтому мы вначале создаем динамический класс центроидов участков, который гарантировано расположен внутри квартала.

1. Итак, для получения однозначной ситуации, находим центр участка.

  • Analyses → Functional Attributes. На вход подадим площадные участки (Parcel)

кадастровые номера02.jpg

Имя Query – “Parcel Point”

2. Для пространственной связи выполним: Analyses → Spatial Intersection, для “Parcel Point” и “Structure”. Данный запрос будет содержать поля участка и квартала

Parcel Point04.jpg

Имя Query – “Parcel Point and Structure”

3. Получим кадастровые номера участков.

  • Analyses → Functional Attributes. Add functional attributes for: - “Parcel Point and Structure”
  •  В поле Expression: введем “CONCATENATE(':'; Input.NumberStruct;Input.NumberParcel)”

05.jpg06.jpg

Имя Query – “Parcel Point COATO”

4. И, наконец, получим площадные участки, которые будут содержать в кадастровый номер. Тут нам пригодятся уникальные идентификаторы, которые, к счастью, не меняются в процессе нашего анализа. С помощью операции Join соединим данные центроидов и исходных участков.

  • Analyses → Join
  • Left side of join – Parcel
  • Right side of join – “Parcel Point COATO”
  • Свяжем два объекта по ID_P

Имя Query – “Parcel COATO”

Избавимся от избыточной информации. Нажмите кнопку Attributes… и выберем только необходимые атрибуты

join08.jpg

Если вывести подписи, то можно получить такую вот картинку:

09.jpg

 

23.05.2006

У меня есть х, y координаты, угол поворота и текст...а объекты подписывать надо было.

Вопрос был задан в форуме http://www.dataplus.ru/Forum/forum_posts.asp?TID=1973&PN=1 ответа никто тогда не дал. В оригинале:

Здравствуйте!

ГеоМедию ни разу не использовал.

У меня есть х, y координаты, угол поворота и текст. Все это в DBF - табличке, можно и в текст скинуть - не суть. Дело в том, что вся эта лабуда была в ArcView - нет там текстовых классов (или слоев, как там называется), а объекты подписывать надо было. Был написан скриптик, который и вытаскивал текст в нужное место на виде.

Можно ли как то из этих данных создать текстовый класс объектов в GeoMedia 4.0? Так, чтобы объекты этого текстового класса находились в заданных координатах под заданным углом?

Спасибо.

 Ответ настолько элементарен, что для пытливых и читающих Он-лайн Документацию он прозвучит так:

SPIN(Input.Offset;Input.Angle)

Если хочется готового или нет времени, тогда здесь развернутый ответ с картинками.

 

25.04.2006

Что такое Geomedia?

Ответ

Что такое Geomedia? Некоторый ответ-первого-уровня на такой вопрос можно получить по ссылке, далее рекомендуется почитать весь этот сайт.

 

16.04.2006

У меня есть набор данных. Время от времени необходимо из этого набора выбрать некоторые объекты и сохранить их в отдельную таблицу. Я понимаю, что можно создать запрос и запрос сохранить, но мне их надо определить визуально, т.е. нет определенного правила для стандартного запроса. Помогите пожалуйста решить данную проблему.

Ответ

GeoMedia позволяет сохранить всю таблицу или запрос. Вы хотите визуально определить объекты, т.е. выделить их при помощи команды Select tool и сохранить в отдельную таблицу. Для этого необходимо: 1) выделить объекты; 2) сохранить выбранные объекты как запрос (меню Analysis->Select Set to Query…); 3) Сохранить запрос в таблицу (меню Warehouse->Output to Feature Classes…).

 

11.04.2006

Я перенес базу данных на другую машину. В этой базе имеются различные географические векторные объекты и растры. На новой машине я положил базу и растры точно так же как и на старой машине. Проблема в том, что векторные данные я вижу, а растры – нет.

Ответ

Когда вы создаете таблицу растров, то объекты в этой таблице хранят физическое имя растра и путь (его местоположение). Скорее всего у растров прописан полный путь, т.е. начиная с имени машины //Workstation1/Warehouses/Rasters.mdb. В процессе переноса базы на новую машину, ваш путь изменился //Workstation100/Warehouses/Rasters.mdb, но таблица растров этого "не знает" и ссылается на несуществующие данные. Примечание: пути в формате UNC \\имя_машины\\папка_доступа могут получиться если вы, например использовали Сетевое Окружение для доступа к папке, или вручную именно так и указывали путь.

Обычно, когда вы пользуетесь стандартным диалогом Открыть...(Open File) вы получаете пути вида c:\Warehouses

 

09.04.2006

Хочу создать тематическую легенду. Разбиение диапазонов хочу произвести по полю c типом Дата. Как это сделать? В меню я не вижу этого поля…

Ответ

Тематическая легенда создается по числовому или текстовому полю. У вас поле имеет тип Data. Именно поэтому вы не видите его в допустимых к посторению тематической легенды.

Решение:

Можно преобразовать поле из Data в String налету(см. Динамика жизни), после чего создать тематическую легенду именно по этому текстовому полю (типа String). Преобразовать можно при помощи функции: Analysis->Functional Attributes. Фраза функционального атрибута:

TEXT(Input.Date; '').

Подробнее о Функциональных Атрибутах можно прочитать в FOUN133_Lab.zip (2.47 MB)

 
Галерея Спрашивали?Отвечаем! Словарь терминов Партнеры Карта сайта 
   
© ООО «Арт-мастер» 2000 - 2010. Все права защищены.