|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Генерация GUID
Минск
Регистрация: 31.07.2009
Сообщений: 40
|
||
Просмотров: 9118
|
|
||||
По сути, метка любого примитива, это и есть guid...
Могу посоветовать, исходя из версии самого молодого из используемых акадов, выбери максимальную длину метки, а в остальные поля добавляй метку времени создания чертежа. ps. метка уникальна только в данном чертеже!
__________________
Чем гениальнее ваш план, тем меньше людей с ним будут согласны. /Сунь Цзы/ |
||||
![]() |
|
||||
Регистрация: 31.07.2009
Минск
Сообщений: 40
|
Евгений, огромное спасибо за совет. Но...
Цитата:
__________________
Там всё есть для счастья, меня там только нет, Так это значит, что я там - буду! |
|||
![]() |
|
||||
Регистрация: 31.07.2009
Минск
Сообщений: 40
|
Сергей Дубина, намёк понял :-)
Разные, естественно. Правда, похожи, ибо сформированиы по определённым правилам, посему нужно внимательно посмотреть, как это может повлиять на генерацию...
__________________
Там всё есть для счастья, меня там только нет, Так это значит, что я там - буду! |
|||
![]() |
|
||||
lisp-функция, написанная на .net (в .net есть специальный класс, для работы с GUID - им и воспользовался):
Код:
Код:
![]() компилируешь показанный выше .net-код под свою версию AutoCAD, загружаешь полученную библиотеку командой _NetLoad и используешь функцию NewGUID в своём Lisp-коде. п.с. Если топикстартер использует версию AutoCAD 2009 x86 - могу выложить скомпилированную готовую библиотеку (др. версий AutoCAD у меня сейчас не установлено, поэтому скомпилировать под них на данный момент нет возможности). Однако предупреждаю, что использование этой библиотеки привяжет lisp-код к конкретной версии автокада (той, под которую скомпилирован мой код), поскольку .net-плагины зависят от версии AutoCAD.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 04.05.2011 в 12:34. |
||||
![]() |
|
||||
Регистрация: 31.07.2009
Минск
Сообщений: 40
|
hwd, спасибо.
Но прошу объяснить, что есть Цитата:
Увы, я, кроме LISPа, другими языками не владею... Offtop: Владею немецким языком. Взят в плен в 1944 под Витебском... (с) не моё
__________________
Там всё есть для счастья, меня там только нет, Так это значит, что я там - буду! |
|||
![]() |
|
||||
Понял. Версия автокада какая? Не помешает то, что написано в примечаниях касательно "привязки к версии автокада"?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
1. Могу скомпилировать под AutoCAD 2009 x86. Предполагаю, что библиотека будет работать и в AutoCAD Map 2009 x86, но не утверждаю (проверять нужно).
2. Под 2011 код нужно отдельно компилировать (это делается быстро, но на машине должен быть установлен AutoCAD 2011 или ObjectARX 2011). Код функции я выложил выше - если у кого установлен 2011, возможно тебе откомпилируют его под эту версию и выложат, но не факт. 3. Под 2004 - если честно, я даже не в курсе, использует ли вообще эта версия AutoCAD платформу .Net Framework, а если использует, то какую именно версию... Если использует - тогда то же самое, что и в п.2.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Не использует. Поддержка .NET в AutoCAD появилась в AutoCAD 2005, а атрибут [LispFunction()] поддерживается начиная с AutoCAD 2007.
|
||||
![]() |
|
||||
Скомпилировал под AutoCAD 2009 x86/x64. См. прикреплённый файл. Библиотека загружается командой _NETLOAD. Lisp-функция называется "NewGUID". Как вызывается - знаешь, раз пишешь на Lisp'е.
p.s. На компьютере должен быть установлен .Net Framework 3.5 SP1. На тот случай, если тебе всё же кто-то надумает помочь скомпилировать под AutoCAD 2011 - выкладываю полный код cs-файла: Код:
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 04.05.2011 в 14:17. |
||||
![]() |
|
||||
ты о чём? я дал свой вариант решения. Можешь предложить другой, если имеешь.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 31.07.2009
Минск
Сообщений: 40
|
Огромное спасибо всем принявшим участие.
hwd и Александру Ривилису, отдельная благодарность. ps: про апгрейд: не апгрейдится софт, потому что не апгрейдится хард, потому что с финансированием ситуация очень хард...
__________________
Там всё есть для счастья, меня там только нет, Так это значит, что я там - буду! |
|||
![]() |
|
||||
Всё нормально, заработало?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Зачем ради 1 guid'а столько гемора - по первой-же ссылке в google нашел com:
Код:
p.s. не намного длинней _netload... p.p.s хотя чего это я - Код:
__________________
Когда в руках молоток все вокруг кажется гвоздями. Последний раз редактировалось Дима_, 04.05.2011 в 15:18. |
|||
![]() |
|
||||
Регистрация: 06.04.2009
Сообщений: 702
|
Цитата:
__________________
КазнитьØнельзяØпомиловать:eek: |
|||
![]() |
|
||||
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
|
|||
![]() |
|
||||
дорога ложка к обеду, gomer...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Для коллекции. По ссылке из #22 VovKa опубликовал еще один генератор
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Я бы не стал его использовать т.к. "криптостойкость" ключа ограниченна (getvar "date") т.е. ключи достаточно близкие (для разовых применений достаточно - но при "гуидации" примитивов нескольких сотен чертежей (да еще и на паралельных процессах (машинах) - а при последовательном процессе guid вобщем-то и не нужен.) - вполне возможны коллизии).
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
генерация КЭ сетки в Stark ES 09 | Mavrovskiy | STARK ES | 1 | 24.02.2010 21:00 |
Генерация файла .dwg с web-страницы | UDove | Программирование | 13 | 25.11.2009 12:27 |
генерация имен блоков. | _nick_ | AutoCAD | 3 | 30.09.2009 17:59 |
Генерация в скаде. Пересечение контуров. | Saha | SCAD | 2 | 26.03.2009 09:21 |
Препроцессор ФОРУМ. Генерация в SCAD не идет. | pbykov | SCAD | 7 | 12.12.2007 12:05 |