| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
27.09.2014, 23:09 | #1 | |
Описание xdata
топограф, технолог
Москва
Регистрация: 24.05.2009
Сообщений: 3,031
|
||
Просмотров: 21772
|
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Цитата:
По пунктам отвечать специально не буду. Идея (найти "заначку" в DWG) порочна в принципе. А данные надо хранить вне чертежа, в базе данных. Вот там могут быть любые типы, любая структура, и "как найти" решается элементарно. А в xdata (и других местах, которые есть) надо хранить только ссылки. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,053
|
Цитата:
Работает как FIFO стек - в каком порядке запихнешь данные, в таком и получишь. Т.е. при малейшем изменений формата представления данных придется переписывать все функции, работающие с xData данных объектов - почему уважаемый ShaggyDoc очень нервничает - когда речь заходит о хранении именно данных в xData |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Похожая тема с 2005 года. http://forum.dwg.ru/showthread.php?t=3719
Полезные ссылки на Xdata и словари http://forum.dwg.ru/showpost.php?p=787874&postcount=7
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Сможет кто-нибудь подправить эти xdata.lsp и xdlist.lsp из Express Tools, чтобы в long-поля можно было вводить целые числа больше 32767, а также видеть созданные поля xdata в их реальном порядке? Иначе тяжело понять действительные возможности xdata и моделировать работу с ними. Если, конечно, это именно подправить, а не переписывать полностью.
Как возможный бонус - эту исправленную версию лиспов предложить самому Autodesk на замену в Express Tools
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
ShaggyDoc
>>А в xdata (и других местах, которые есть) надо хранить только ссылки. Ненадо всё под одну гребенку стричь. Данные бывают разные как и подходы к их хранению. В случае >>допустим, для назначения трубы, толщины стенок, предельного давления, сечения Т.е. "стандартной" информации - да лучше ссылку. Но например если нужно хранить длину куска кабеля или температура теплоносителя в данной трубе (т.е. информацию специфичную только этому объекту) - вполне логично хранить напрямую, а не в виде ссылки |
|||
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Цитата:
А выборка из БД делается мгновенно с помощью SQL- запроса. Эти запросы могут быть и простые (типа select Sum(L) as SumL from Cables where CableID=24 чтобы получить сумму длин) и очень сложными, со всякими условиями, вычислением и применением функций. Но пользователю их и знать не надо, он их не увидит. Мы же не видим, какой SQL-запрос (вернее несколько десятков) посылается к БД, чтобы мы увидели эту страницу в браузере. Вот пример, когда только с краешком проблем начинает человек сталкиваться: Цитата:
|
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
>>Это только сначала кажется, что здесь "логичнее". А если надо собрать эти "куски кабеля" в один заказ из разных проектов? Лазить по всем чертежам и выбирать? А еще до этого рассуждать, что "специфично", а что нет. Часть положить в одно место, часть в другое и потом потерять всё.
В теории рассужать одно. 2 подхода: первый - чертеж дополнение к базе данных (в виде просто илюстрации), второй - база данных дополнение к чертежу (в виде отчета получаемого из чертежа). Зарание выбрать единственно верный нельзя, оба имеют право на жизнь, и любые из них комбинации тоже. >>А выборка из БД делается мгновенно с помощью SQL- запроса. Я конечно не гоняюсь за временем, но будет далеко не мгновенно. И "простые" задачи гораздо усложнятся, - например примитив просто уже не скопируешь, новое вхождение нужно привязать к созданой записи в БД ----- добавлено через ~4 мин. ----- >>Вот пример, когда только с краешком проблем начинает человек сталкиваться: Незнаю, невижу никаких проблем)) по мне так в xdata можно что хочешь запихнуть, хорошо подумав естественно перед этим |
|||
|
||||
Да вроде бы Сергей812 писал в #3, что это в Express Tools криво сделано. Вот я и попросил по возможности подправить.
Цитата:
Просто чтобы хоть что-то понять, хотелось здесь убедиться в возможностях-особенностях xdata для начала...
__________________
количество моих сообщений не говорит о знании Автокада Последний раз редактировалось АлексЮстасу, 30.09.2014 в 17:40. |
||||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,053
|
Цитата:
А то, что вы хотите сделать - как раз лежит больше в области внешних БД. Поскольку нет какой либо неизменной и краткой структуры данных. |
|||
|
||||
Начал почитывать и про xdata. В 1.14.1 Структура расширенных данных, с. 140 написано, что 1001 - имя приложения не может быть длиннее 31 знака, и может состоять только из цифр, латинских букв и символов $,-,_. Я этого не знал, но уже пытался проверить - и задавал в "Application Name" имена гораздо длиннее, на русском, с точками и пробелами, например: "надп. (набл._геод._пож._прож._спорт.) назначения вышки легкого типа". Правда, в кавычках. Ни xdata, ни xdlist из Express этому не воспротивились.
В чем тут дело? Может быть в том, что книга 2006 года? Или опять Express чудит?
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,053
|
Как пишет Kean Walmsley
Цитата:
Цитата:
Последний раз редактировалось Сергей812, 30.09.2014 в 21:57. |
|||
|
||||
Цитата:
Цитата:
Просветили бы какой именно лучше пользоваться. Еще лучше - на русском. Совсем хорошо бы, если бы одновременно с внятными разъяснениями.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,053
|
Цитата:
В русской и англоязычной части интернета информации по подобным вопросам вполне достаточно для начала работы. Одну ссылку в другой ветке давал уже - как добавлять данные в xData на NetApi. Там же на этом ресурсе можно найти и примеры считывания и удаления xData (для заданного приложения), насколько помню. Разжевывать никто не будет, информацию перерабатывайте сами. И не забывайте заглядывать в ObjectARX SDK (см. сайт АutoDesk). Информация про: Была взята оттуда. DXF код у имени приложения конечно 1001, а ограничения по длине - как у строки с кодом 1000. |
|||
|
||||
Из #4 уже вовсю цитирую
Запускаю первый лисп из http://www.arcada.com.ua/forum/viewt...418f41ab9e777c, но мне сообщают: Цитата:
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Что-то подобное я слышал, хотя реально не в курсе.
Поэтому во первых строках пытался написать: (vl-load-com). Правильно? На это мне ответили: Цитата:
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Автокад 2010 виснит намертво при сохранении файла | LenaE | AutoCAD | 18 | 04.05.2020 12:59 |
Автокад тормозит при копировании | Борисыч123 | AutoCAD | 35 | 18.11.2019 09:29 |
При добавлении XData, блок перестает редактироваться командой _REFEDIT | oktilon | Программирование | 1 | 05.11.2011 09:43 |
Размещение здания на участке под коммерческое использование, расстояние к границе участка | ValenDz | Архитектура | 13 | 27.02.2011 13:42 |
Ищу способы упрощения работы с XData (расширенными данными) в VBA, Lisp | RasRuf | LISP | 1 | 29.01.2009 10:55 |