Список форумов Конференция САПР Bentley MicroStation Конференция САПР Bentley MicroStation
www.ustation.ru
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Выделение Shape по координатам.

 
Начать новую тему   Ответить на тему    Список форумов Конференция САПР Bentley MicroStation -> Работа в MicroStation
Предыдущая тема :: Следующая тема  
Автор Сообщение
And



Зарегистрирован: 25.05.2006
Сообщения: 13
Откуда: Москва

СообщениеДобавлено: Чт Май 25, 2006 6:22 pm    Заголовок сообщения: Выделение Shape по координатам. Ответить с цитатой

Здравствуйте, уважаемые.
Подскажите, какие есть пути решения следующей проблемы.

Существует кадастровая карта (4000 участков), в которой центройдами являются кадастрвые номера участков (Text). Каждый номер находиться внутри шейпа, являющегося границей учатска. Каким образом можно сделать заливку этих шейпов, в зависимости от запроса из БД?

Есть мысль :
1. с помощью MDL получить координаты цетройдов, выделенных по запросу.
2. Затем на основе этих координат искать шейпы, в область которых они попадают, например программно с помощью Flood, все их выделить.
Есть ли какие-нибудь готовые решения по второму пункту?
Или все эти операции можно сделать без использования MDL, а с использованием прикладных программ?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Leonid
давно здесь сидим


Зарегистрирован: 28.01.2006
Сообщения: 598
Откуда: С.-Петербург

СообщениеДобавлено: Пт Май 26, 2006 9:31 am    Заголовок сообщения: Ответить с цитатой

Из прикладных таких программ не встречал.
На мой взгляд, самая подходящая задачка для VBA или макроса, а в MDL с базами вопросы решаются не совсем тривиально.
Порядок работы макроса:
- выделить текст по его содержанию (Select by attributes, Settings -> Text, String)
- пробегая по полученным текстовым элемента выделения:
- дать команду Flood с соотв. параметрами
- дать MbeSendDataPoint по точке текста
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
wahha



Зарегистрирован: 20.10.2006
Сообщения: 5

СообщениеДобавлено: Вт Окт 24, 2006 3:19 pm    Заголовок сообщения: Ответить с цитатой

Чем вас Geografics не устраивает? Он все это делает. Надо только "линки" с центройдов на shape перекинуть
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
And



Зарегистрирован: 25.05.2006
Сообщения: 13
Откуда: Москва

СообщениеДобавлено: Вт Окт 24, 2006 4:14 pm    Заголовок сообщения: Ответить с цитатой

>>Надо только "линки" с центройдов на shape перекинуть

А поподробнее можно? Это делается автоматически или вручную?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
ВалВл



Зарегистрирован: 08.02.2006
Сообщения: 138

СообщениеДобавлено: Ср Окт 25, 2006 7:30 am    Заголовок сообщения: Ответить с цитатой

Если выделение нужно для поиска участка, то я, в аналогичной ситуации ищу текст(номер участка): Текст>Найти...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
wahha



Зарегистрирован: 20.10.2006
Сообщения: 5

СообщениеДобавлено: Чт Окт 26, 2006 11:37 am    Заголовок сообщения: Ответить с цитатой

Технология может быть следующая (для вашего случая, когда шейпы уже есть, первые пункты можно пропустить):
У вас имеется карта границ (линии не дублируются, состыковываются узел в узел), внутри участка, образованного границами, стоит текстовая надпись (допустим с кадастровым номером).

Вся работа ведется в Geografics.
1. Если нужно, проверяется топология файла границ (состыковка линий, соответствие одного текста одной площади и т. д.) в полуавтоматическом режиме - MS указывает ошибки, пользователь исправляет.
2. В автоматическом режиме создаются шейпы на участки.
3. Открывается проект с базой данных, в которой есть отдельная таблица для привязки текстовых надписей карты
4. Центройды (текстовые надписи) привязывается в выше описанной таблице и в базу данных выгружаются текстовые надписи с карты.
5. В базе у вас должна быть таблица, которая содержит описание участков (те признаки по которым их надо раскрашивать) и колонку с кадастровыми номерами (или теми текстовыми строчками, которые есть на карте)
6. Линки с центройдов автоматически перекидываются на созданные или существующие шейпы.
7. В инструменте "tematic resimbolisation" С помощью запросов описываете какому признаку соответствует какой цвет (запросы делаются через связь таблиц той к которой привязаны текстовые строки и той где хранятся признаки)
или можно признаки скопировать в таблицу к которой привязаны текстовые строки и делать запрос на прямую.
8. Набранные запросы созраняются в файл (на будущее), шейпы заливаются соотвествующими цветами.

Вот в кратко и все. Но очень кратко.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
ВалВл



Зарегистрирован: 08.02.2006
Сообщения: 138

СообщениеДобавлено: Чт Окт 26, 2006 2:28 pm    Заголовок сообщения: Ответить с цитатой

Можно ещё короче: а без создания таблиц залить участки разве нельзя?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Конференция САПР Bentley MicroStation -> Работа в MicroStation Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group