|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Просмотр DXF/DWG в Delphi
Регистрация: 09.03.2013
Сообщений: 10
|
||
Просмотров: 15030
|
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Очередной искатель "чертежей самобеглого коня" на мускульной силе.
![]() Посмотри похожие темы внизу этой страницы Цитата:
Цитата:
Внутри Delphi-программы, без наличия тех самых компонентов, DWG никак не откроешь. Ну, разве что самые примитивные старинные версии DXF, если найдешь готовые компоненты. И AutoCAD внутрь не встроишь, в качестве "container". Работать можно только: 1. Используя сам AutoCAD как COM-сервер. 2. Делая основной программу, работающую внутри AutoCAD. При необходимости обращаясь к Delphi-приложению как к COM-серверу, для чего-нибудь "вижуального". При этом в любом случае надо иметь навыки программирования именно в AutoCAD на Lisp. Или на ObjectARX или .NET (но тогда Delphi не нужна). В любом случае на всех компьютерах, где должна работать программа, должен стоять и AutoCAD. Вот потому-то карты местности давным давно делают в ГИС, которые гораздо дешевле AutoCAD. А если уж в DWG, то в организациях (например проектных), где AutoCAD основной инструмент на всех рабочих местах. |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
qwertyqwer
http://sourceforge.net/projects/zcad/ попадался на глаза? >>с помощью GLScene Помощи будет немного, в "игровых" движках другие задачи, для CADов они плохо подходят |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
Прочитал ваши советы, спасибо=)
Я думал делать прогу на основе ГИС, но тут тоже своих проблем хватает, опять таки бесплатного и более менее функционального мало, а то что есть работает только со своими форматами карт или ещё хуже с картами google/yandex что вообще ни как не подходит. По причине того, что AutoCAD является основным инструментарием в организации для которой пишется прога, я собственно и прицепился к этим форматам... Но с каждым днём поиска информации задумываюсь о реальности осуществления данного проекта без денежных затрат на компоненты. Идея приложения работающего внутри AutoCAD'a тоже приходила, но будущее приложение должно будет иметь ряд функций абсолютно не связанных с AutoCAD'ом, да и ещё много нюансов по которым пришлось отказаться от такого способа. а на счёт "Если бы он сплайны сделал бы для zcada то было бы отлично.." можно чуток разъяснить?? =)) |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
qwertyqwer
Просто Zcad не все примитивы поддерживает.... А у тебя там наверное сплайны или еще чего раз на основе ГИС решил делать..
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
DEM
Ну да, карты сделаны к сожалению как попало, лишь бы выглядело нормально, где то дом схематично изображен примитивом "квадрат" а где то полилиниями, причем она может проходить по одному и тому же месту по нескольку раз, ну и сплайны само собой, границы многие ими нарисованы =) И я скачал этот Zcad, и не совсем понял что с ним делать, точнее понял, но как он может мне помочь? он ведь вполне самостоятельное приложение, без исходного кода (или я настолько слепой=))) и изъять из него чего либо навряд ли получится=) |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Дык это открытый проект...
zamtmn Его автор, исходники открыты... Ты можешь сделать на его основе свою прогу... Как я и сказал раньше он не поддерживает некоторых примитивов... Поэтому ты должен решить, либо чтой то ищешь еще либо делаешь новые примитивы для этого проекта...
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
На самом деле я уже настолько запутался во всех этих спорах "что взять за основу" "делать с нуля или брать чьи то работы и переделывать"
Просто куда не кинься везде без денег не получится ничего более менее стоящего=)) одна лишь разница между компонентами для DXF / DWG файлов и ГИС компонентов это цена=)) А времени остался месяц=)) А на счёт Zcad, я к сожалению временем сильно ограничен, и добавлять новые примитивы... это надо ж структуру файла разбирать а там уж совсем всё глухо для меня=)) в целом то можно, но долго. по этому от этой идеи придётся отказаться (мне по крйней мере), хотя приложение очень достойное, чертежи отрисовывает довольно шустро, причём солидных размеров=) |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
qwertyqwer
Меня всегда забавляют подобные топики, я даже подозреваю что это какойто вид троленья)). ТС регится на форуме и первым его сообщением и темой "нужен компонент\либа\чтотоеще чтобы нарисовать DWG/DXF наформе\вмоейпрограмме\наделфи" причем указывается что Цитата:
Уважаемый ТС, у вас 3 варианта: 1- купить ODAвские либы, или готовый компонент на их основе (дорого, но будет всё читаться и рисоваться) 2- "стырить" какуюлибо свободную реализацию (бесплатно, но читаться и рисоваться будет с кучей оговорок) 3- написать всё самому (долго и трудно) Палочки-выручалочки к сожалению нет, поэтому платить всеравно придется, либо деньгами, либо своим временем и качеством программы Последний раз редактировалось zamtmn, 09.03.2013 в 23:02. |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
zamtmn
Ну, на счёт поиска я могу с тобой поспорить, я действительно искал много, долго и упорно, и действительно находил подобные решения и даже на этом форуме, НО у данных работ либо другое направление либо (что чаще всего) под другую среду программирования, либо ссылки на источники уже устарели =) Может я чего и пропустил мимо глаз, то это чисто изза невнимательности, которая возникает в следствии огромного количества читаемой информации (пока не особо продуктивной к сожалению) по этим гребанным файлам, и буду признателен если тыкнешь носом в ту статью которую я прошел мимо=) А на счёт вариантов решения ты написал ровно то, о чём говорилось ранее, только другими словами=) Из них мне сейчас (на первое время) нужен только бесплатный вариант, и на форум я обратился только потому, что может у кого нибудь есть уже наработки и я попробую их переделать под себя, твой ZCAD например, а может у кого уже есть готовый модуль для работы с этими файлами, малоли, попытка не пытка=) |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Как люди любят халяву....
Ты вот хочешь маленький кусочек своего кода добавить и получить свою прогу и деньги... А другие пущай тебе компоненты делают...
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
DEM
ну почему ты так, я просто интересуюсь, нет ли у кого решения или конкретной инфы, или просто совета от людей знающих, я не из любителей изобретать велосипеды, поэтому я лучше по тщательнее всё проверю=))) zamtmn Может и другими словами=) я надеялся, что именно в моём топике я увижу что нибудь конкретное, не такое как во всех остальных, где сотни строк текста и толпа нерабочих ссылок=) оптимист блин=)) В общем, тема, я так понимаю, зашла в тупик=) И дальнейшее её продолжение бессмысленно, спасибо за поддержку и участие=) |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
qwertyqwer
>>Может и другими словами=) я надеялся, что именно в моём топике я увижу что нибудь конкретное, не такое как во всех остальных, где сотни строк текста и толпа нерабочих ссылок=) оптимист блин=)) С чего это вдруг? Чтоб увидеть чтото конкретное, надо хотябы спросить чтото конкретное, а не впустую "насиловать поисковики" >>В общем, тема, я так понимаю, зашла в тупик=) И дальнейшее её продолжение бессмысленно, спасибо за поддержку и участие=) Когда выведешь ее из тупика, незабудь зайти, поделиться результатами)) кстати, >>он ведь вполне самостоятельное приложение, без исходного кода (или я настолько слепой=))) и изъять из него чего либо навряд ли получится=) да, ты настолько слепой)) Последний раз редактировалось zamtmn, 11.03.2013 в 01:07. |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
DEM
Что ж ты привязался со своей халявой=) Это и так давно ясно=) zamtmn По моему, на счёт конкретики, тема топика как никогда точная, конкретнее не куда уже=) Чувствую выход из этой тины будет далеко не скорым, но надеюсь он будет, обязательно напишу как что то будет=))))) пысы. Я нашёл его, весь исходный код=)))) |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
qwertyqwer
Та сделай проще.... Есть халявный просмотрщик DWF к нему есть не плохие мануалы.... Делаешь в VS свою прогу, встраиваешь тудыть окошко вьюера... НАдо будет тебе только все черт. dwg и dxf перевести в формат dwf...
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
DEM
Спасибо, но я уже нашел решение, не столько красиво как хотелось бы, но результат не плохой, поставил на Delphi халявный компонент MapWinGis, скачал бесплатную утилиту для конвертации DFX в слои SHP, и эти слои в Delphi этим компонентом открываются на ура, куча функций которые мне были необходимы этот компонент делает отлично=) Пусть не самый рациональный метод, но результат же достигнут=)) надо было открыть карту из AutoCAD'a в моем приложении?? я открыл=))) Для демки проги сойдёт и такая реализация, мне необходимо идею показать, а нюансы буду дорабатываться летом=) А про VS я возьму на заметку, мало ли, может захочется на переделать всё на этой среде программирования=) |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Неее, назвался груздем, полезай в кузовок.....
Ждем на Делфях ![]() ![]()
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,114
|
![]() http://dotspatial.codeplex.com/ И вообще советую перевести все данные в БД |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
|
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
qwertyqwer
>>это уже будет в VS скорее всего=) Думаешь будет разница? trir&ShaggyDoc В чем профит от БД? Только в наличии "халявных" компонентов. Если нужно быстро нарисовать много примитивов - никакая БД не спасет, в данном случае база данных как и DWG\DXF это лишь контейнер для хранения. Внутри компонента данные имеют другую структуру и быстро и массово их обработать можно только в рамках этой внутренней структуры. |
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,114
|
Цитата:
http://gis-lab.info/docs/ogc-sfa-1.html "Научить" dotspatial работать с WKB: http://dotspatial.codeplex.com/wikip...BFeatureSetsCS Получить данные из Пространственной БД проще и "экономичнее"... Последний раз редактировалось trir, 12.03.2013 в 13:40. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
С базой данных могут одновременно работать множество пользователей, она может лежать где угодно. В базе данных осуществляются все операции поиска, отбора по множеству критериев. В том чиле по "географическим" - "найди все кабели проходящие через этот участок или находящиеся от него не далее 50 м". Пространственная информация ("карта") может быть отображена в разном виде в разных графических системах. При этом она могут быть (на основе одних и тех же данных) сформированы тематические карты, картодиаграммы. К данным могут иметь доступ пользователи из самых разных организаций. При этом по одному и тому же пространственному объекту (например, зданию) они могут получать разную информацию. Для кого-то этот дом - "объект недвижимости", для кого-то "абонент", для кого-то "притон архитекторов". Ничего этого с DWG, как хранилищем данных, делать нельзя. Но AutoCAD можно использовать для рисования "карт", по пространственной информации из БД. Если есть какие-то "карты местности", информация по которым хранится в ГИС (например сети электроснабжения), и есть, например, проектный институт, работающий в AutoCAD, то возможно из ГИС и в AutoCAD эти трассы нарисовать, да еще и на топооснове. Но не только в AutoCAD, а и в других программных системах. |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
trir
>>Получить данные из Пространственной БД проще и "экономичнее"... при наличии "компонента" - да. Ненадо пространственную индексацию преподносить как достижение баз данных. Любое приложение обрабатывающее большое кол-во геометрических данных должно это уметь, иначе это не приложение а тормоз. ShaggyDoc Стандартный ГИС профит)). А как он поможет в рамках топика? Всё вами описаное очень к месту в какойто глобальной гис системе, а ТС (и мне тоже) нужно всеголишь отобразить и отредактировать вот эти пару чертежиков. >>Ничего этого с DWG, как хранилищем данных, делать нельзя. Это почему? к примитивам можно привязать любую информацию, найти примитивы по геометрическим и семантическим критериям (в рамках привязанной к ним "любой" информации) тоже вроде можно. Другое дело что БД обычно предоставляют язык запросов для поиска и обработки, а в голом автокаде без програмирования никак. Последний раз редактировалось zamtmn, 12.03.2013 в 14:25. |
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,114
|
Оно конечно так, но если это приложение пишется для дела, то через много лет и после массы мучений, вы или следующий разработчик, в конце концов поймут, что надо было сразу работать c БД, но будет уже поздно. Ибо аппетит приходит во время еды.
Между прочим. разговор идёт уже не о dwg/dxf, а о shp... |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
Цитата:
![]() |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
ShaggyDoc
а в 99% случаев и требуется привязка чегото примитивного. БД это всеголишь удобная надстройка над примитивными "словами" и "цифрами" - бывает к месту и не к месту >>Но эти привязанные данные не будут настоящей базой данных. Не будут, и не должны - задача отобразит примитивы, а не сделать БД над примитивами |
|||
![]() |
|
||||
Регистрация: 09.03.2013
Сообщений: 10
|
У как тут мысль то пошла=)) а не заглядывал сюда пару дней всего=)
Уже даже не знаю где тут спор а где просто обсуждение, и к месту ли тут я вообще=))) Но хочу тоже немного поучаствовать=) trir с тобой согласен полностью, всё дело в том, что я, как и любой программист с очень малым опытом разработки ИС, пошёл не потому пути для решения проблемы, вот и уткнулся носом в этот автокад и этот файл, и только разобрав предметную область уже достаточно глубоко реально понял, что автокад тут не особо то и нужен, разве что в качестве инструмента отрисовки карт, и будущую ИС следует двигать по направлению ГИС, и собираюсь использовать подход который достаточно ясно описал ShaggyDoc, по скольку в моей будущей ИС БУДЕТ использоваться БД (тут опять моя ошибка по скольку речи о ней не завел ранее) qwertyqwer >>это уже будет в VS скорее всего=) zamtmn >>Думаешь будет разница? Как минимум тема топика поменяется, да и форум скорее всего другой будет=)) И в целом прошу меня строго не судить, это мой первый серьезный проект у которого возможно есть будущее, и естественно куча ошибок при его проектировании для меня неизбежна, но на ошибках учатся=) Последний раз редактировалось qwertyqwer, 14.03.2013 в 18:44. |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
qwertyqwer
>>Как минимум тема топика поменяется, да и форум скорее всего другой будет=)) тоже самое, вид сбоку >>ясно описал ShaggyDoc, по скольку в моей будущей ИС БУДЕТ использоваться БД (тут опять моя ошибка по скольку речи о ней не завел ранее) Любят на этом форуме упоминать волшебное слово БД. Повторяю БД (в смысле источник данных которые будем отображать) тут не причем - это способ решить вопросы связанные с хранением данных. А вот "волшебный" компонент понимающий эту БД и умеющий ее "рисовать" очень даже причем, если он есть - всё в шоколаде. Если нет, то абсолютно также как в случае "Просмотр DXF/DWG в Delphi", за исключением что мы легко и просто храним информацию хоть где, разграничиваем к ней доступ, делаем всякие выборки, т.е. решаем вопросы напрямую с темой топика не связанные, но не спорю тоже важные. Простой пример. Описания примитивов необходимые для экономичного хранения в БД и экономичного вывода на экран кардинально различаются. Для линии в простейшем случае в базе например может быть такое описание: начало,конец,тип линии. Графическая система (GDI, OGL, DX) не знает что такое сложные типы линий из dwg\dxf, ей подавай координаты каждого штриха и точки (а в типе линии могут еще и тексты с шейпами встретиться) отдельно - будь добр, посчитай их. Со сложными примитивами - сплайнами, блоками и т.д. всё еще сложнее. Вот и набегает между БД (по большому счету без разницы БД это или DXF\DWG) и дисплеем сложная програмная "прокладка" которую ищет ТС. Последний раз редактировалось zamtmn, 15.03.2013 в 01:02. |
|||
![]() |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
![]() |
Я не путаю, а вот автор путает ГИС и БД, в чем вы с ShaggyDoc ему помогаете))
>>В случае ГИС все эти вопросы давно решены в случае сапр тоже, как было сказано ранее это вопрос цены. Сейчас придет ТС исправит #37 например на Цитата:
|
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,114
|
Пространственная база данных
http://ru.wikipedia.org/wiki/%D0%9F%...BD%D1%8B%D1%85 В современных ГИС - не понятно где заканчивается ГИС и начинается РБД |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Документация Проектировщику на Torrents | DEM | Разное | 263 | 03.09.2024 12:25 |
В Delphi получить информацию по примитивам в блоках AutoCAD | gumel | Программирование | 17 | 04.03.2013 08:41 |
как из Delphi обрезать чертёж | digar | Программирование | 7 | 21.02.2012 13:36 |
Lisp и внешний сервер автоматизации на Delphi | samos | LISP | 19 | 07.10.2011 05:54 |
AutoCad и Delphi. Добавление точки | Зойберг | Программирование | 15 | 28.02.2008 23:18 |