Взаимодействие AutoCad и реляционной БД
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Взаимодействие AutoCad и реляционной БД

Взаимодействие AutoCad и реляционной БД

Ответ
Поиск в этой теме
Непрочитано 03.06.2009, 18:41 #1
Взаимодействие AutoCad и реляционной БД
dwger
 
Регистрация: 03.06.2009
Сообщений: 3

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

Собственно передо мной стоит задача реализации информационной системы, используя MS Access в качестве СУБД, а AutoCad в качестве отображения графических объектов. Однако я не силен в Автокаде, поэтому возник ряд определенных вопросов. Пытался найти нужную мне информацию, но того, что надо не попадалось.

Собственно что у меня не получается реализовать:
- привязка данных из реляционной БД(т.е. одновременно из нескольких таблиц) к одному объекту на карте;
- вывод данных из БД для выбранного объекта не в стандартном окне Properties, а в отдельной форме, которая бы отображалась поверх карты;
- внесение пользователем новых значений/изменений в текущие значения в БД из Автокада.(опять же, желательно через дополнительную форму).

Скажите пожалуйста, как можно реализовать поставленные задачи. Спасибо всем.
Просмотров: 4080
 
Непрочитано 03.06.2009, 20:40
#2
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Вообще-то это изобретение давно изобретенного велосипеда, давно реализованного во всех ГИС, намного дешевле, чем в AutoCAD.

Но, если по сути, то надо сначала решить принципиальный вопрос - где хранится геометрия объектов - в базе данных или внутри файлов AutoCAD. Если второе, то информационной системой тут и не пахнет. В информационной (геоинформационной) системе всё должно быть в базе данных, а отображаться они могут разным способом, в том числе и в AutoCAD.

Любая сторонняя информация к объектам AutoCAD привязывается в виде расширенных данных. Например, такими данными могут быть ссылки на базу данных, таблицу и запись. Могут быть и ссылки на разные таблицы - в виде списка.

Расширенные данные штатными средствами не видны. Для этого должна быть разработана собственная программа, которая, при указании на объект извлекает из него расширенные данные, читает ссылки, обращается к БД, таблице (таблицам) и записям и выводит в требуемом виде.

То же самое - для редактирования данных.

Приложение может состоять из нескольких частей. Standalone - для работы с базой вне Автокада, COM-сервер - для работы из Автокада.

Возможно обращение к БД через ADO, для этого надо свои библиотеки делать.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 03.06.2009, 21:52
#3
dwger


 
Регистрация: 03.06.2009
Сообщений: 3


Спасибо Вам большое за развернутый ответ. Но, к сожалению, для меня он звучит неутешительно.

Планируется хранить геометрию объектов в AutoCad'e, а данные к ним - в БД. Но гео составляющая для меня в данном случае не более, чем демонстративная часть.

Можете порекомендовать какие-нибудь другие ГИС системы, где бы были данные функции либо какой-либо способ реализации, но попроще? потому что написание собственной программы и взаимодействие с библиотеками не потяну

Разбираюсь в языках вебпрограммирования, но в данном случае будет сложно реализовать работу с графической частью, так как она представляет собой совокупность криволинейных объектов.
dwger вне форума  
 
Непрочитано 04.06.2009, 00:37
#4
Olga_@@@


 
Регистрация: 14.03.2008
Екатеринбург
Сообщений: 678
<phrase 1= Отправить сообщение для Olga_@@@ с помощью Skype™


dwger, а, база обязательно должна быть в MS Access?
Подключение продуктов Autodesk к базам данных формата MS Access возможно только через ODBC, а это соединение имеет определенные ограничения.
из Справки к AutoCAD Map:
Цитата:
Для доступа к атрибутным или точечным данным в Microsoft Access, Microsoft Excel или dBASE используйте подключение ODBC.

Атрибутные данные позволяют добавить информацию из негеометрического источника к геометрическому элементу. Например, можно добавить данные об оценочной стоимости к слою, представляющему участки. Для получения сведений о соединениях см. раздел Добавление данных к элементам ГИС.

Точечные данные могут содержать топографические точки, данные LIDAR или GPS, которые обычно задаются в столбцах «Широта» и «Долгота» или с помощью координат XY.

По умолчанию в AutoCAD Map 3D каждой таблице базы данных соответствует класс элементов, а каждому столбцу – свойство.

При просмотре и редактировании элементов из базы данных ODBC можно выполнить следующее.

- Выбор класса элементов для добавления на карту.
- Задание условий для ограничения добавления элементов на карту.
- Редактирование элементов, а также применение к ним стилей и тем.
- Блокировка файла при подключении к нему.
- Автоматическое обновление источника данных при изменении элемента.
- Изменения немедленно становятся видимыми для всех пользователей источника.

Определение классов элементов для любой таблицы реляционной базы данных со столбцами X, Y и дополнительным Z. Местоположение объектов определяется отдельными свойствами в описании объекта элемента, доступ к которым можно получить с помощью свойства класса «Геометрия». Невозможно создать или удалить схемы элементов.

Последний раз редактировалось Olga_@@@, 04.06.2009 в 08:09.
Olga_@@@ вне форума  
 
Непрочитано 04.06.2009, 07:14
#5
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Olga_@@@,
Цитата:
Подключение к MS Access возможно только через ODBC
В общем случае это неверно. Это AutoDesk так сделала, а вообще-то с БД формата Access можно работать разными способами - чаще всего используется ADO (Jet), DAO. Можно и средствами прямого доступа. ODBC - тоже один из механизмов доступа, причем древний и устаревший.

Упомянутая Microsoft Access всего лишь программа и с ней дел иметь вообще не надо. Разве что для первоначального создания БД и таблиц.

Способ хранения пространственной информации тоже разный может быть. Это Mapinfo умеет работать только с точечными объектами, а приличные системы могут хранить любые пространственные данные. Причем не обязательно привлекать монстров наподобие SpatialWare.

dwger,

Цитата:
Можете порекомендовать какие-нибудь другие ГИС системы, где бы были данные функции либо какой-либо способ реализации, но попроще?
Всё зависит от цели - настоящая информационная система или так себе, баловство. И какие именно геометрические объекты хранить. Стандартным джентльменским набором являются точечные (Х, У), линейные (список точек) и полигональные объекты. Это умеют все ГИС.

Работа с прочей атрибутивной информацией отличается большим или меньшим неудобством. Кроме того, все системы используют свои форматы хранения данных. Например, в Mapinfo можно хранить атрибутивные данные в таблицах Access, но толку от этого мало - поддерживаются не все типы данных (мемо, графика не поддерживаются), да и связи никак не организовать. И визуальное отображение таблиц убогое.

Наилучшие варианты - ObjectLand и ИнГЕО. ObjectLAND практически бесплатна (пробная версия не имеет ограничений, потом можно и приобрести). Там и программировать для начала вообще не надо - просто работаете. Но БД своего формата. Работа с таблицами великолепна.

ИнГЕО тоже неплохо. Работает с Paradox и, по идее, с другими СУБД (Interbase, MSSQL). Но надо покупать сразу.

В таких системах можно и свои приложения делать универсальным образом - через COM.
ShaggyDoc вне форума  
 
Непрочитано 04.06.2009, 08:05
#6
Olga_@@@


 
Регистрация: 14.03.2008
Екатеринбург
Сообщений: 678
<phrase 1= Отправить сообщение для Olga_@@@ с помощью Skype™


ShaggyDoc, да, Вы тысячу раз правы, все что написано в #4 относится только к взаимодействию БД формата Access и AutoCAD.
Но, поскольку форум автокадовский и вопрос был задан про связь Access и AutoCAD, то по умолчанию подразумевалось, что речь идет именно об этом.

PS #4 отредактировала

Последний раз редактировалось Olga_@@@, 04.06.2009 в 08:10.
Olga_@@@ вне форума  
 
Автор темы   Непрочитано 04.06.2009, 10:46
#7
dwger


 
Регистрация: 03.06.2009
Сообщений: 3


Olga_@@@,
База в принципе, возможна не только на Access. MS Access был выбран лишь для простоты и удобства.

ShaggyDoc,
Спасибо, почитаю про предложенные вами программы.
dwger вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Взаимодействие AutoCad и реляционной БД

Реклама i


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Видеоуроки AutoCAD kosmax AutoCAD 173 17.02.2017 15:08
запуск программы из AutoCADа kminas Программирование 19 15.06.2012 13:42
О создании темы (раздела) для новичков в AutoCAD. Profan Разное 110 23.10.2008 10:01
Взаимодействие проводника и AutoCAD vic153 AutoCAD 4 07.04.2006 16:52
Что нового в AutoCAD 2005 ilka_t AutoCAD 40 19.05.2004 16:48