Генерация GUID - Страница 2
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Генерация GUID

Генерация GUID

Ответ
Поиск в этой теме
Непрочитано 04.05.2011, 09:34
Генерация GUID
Игорь Костюкович
 
Минск
Регистрация: 31.07.2009
Сообщений: 40

Собственно, стоит задача автоматического присвоения GUID примитивам чертежа. Всем поголовно. Может, кто-нибудь уже решал задачу генерации GUID на LISPе? Не хочется изобретать велосипед...
Да что там греха таить - не хочется изобретать... :-)
Для справки: GUID
__________________
Там всё есть для счастья, меня там только нет,
Так это значит, что я там - буду!

Последний раз редактировалось Игорь Костюкович, 04.05.2011 в 09:39.
Просмотров: 9166
 
Непрочитано 04.05.2011, 22:05
1 | #21
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Дима_ Посмотреть сообщение
Код:
[Выделить все]
 (vlax-get-property (vlax-create-object "Scriptlet.TypeLib") 'Guid)
респект, снимаю шляпу
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 04.05.2011, 22:13
#22
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от hwd Посмотреть сообщение
респект, снимаю шляпу
тынц
gomer вне форума  
 
Непрочитано 04.05.2011, 22:37
#23
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


дорога ложка к обеду, gomer...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 04.05.2011, 23:20
#24
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


я просто уточнил источник...
gomer вне форума  
 
Непрочитано 04.05.2011, 23:48
#25
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839



неправда - у меня был другой источник (там вроде-бы на дльфи было - но какая нафиг разница откуда com вызвать)
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 05.05.2011, 00:07
#26
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Дима_ Посмотреть сообщение
неправда
Сегодня совсем голова не работает... всем сорри
gomer вне форума  
 
Непрочитано 05.05.2011, 21:08
#27
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Для коллекции. По ссылке из #22 VovKa опубликовал еще один генератор
Код:
[Выделить все]
(defun vk_RandNum (/ Mod Mult Inc Rand)
    (or *vk_RandSeed* (setq *vk_RandSeed* (getvar "DATE")))
    (setq Mod           65536
          Mult          25173
          Inc           13849
          *vk_RandSeed* (rem (+ (* Mult *vk_RandSeed*) Inc) Mod)
          Rand          (/ *vk_RandSeed* Mod)
    )
)
(defun vk_Dec2Hex (Dec /)
    (if (< Dec 10)
        (itoa Dec)
        (if (> Dec 15)
            (strcat (vk_Dec2Hex (/ Dec 16)) (vk_Dec2Hex (rem Dec 16)))
            (chr (+ Dec 55))
        )
    )
)
(defun vk_GenerateString (String Len / OutString)
    (setq OutString "")
    (repeat Len (setq OutString (strcat OutString String)))
    OutString
)
(defun vk_StringPadLeft (String NewLen Char /)
    (strcat (vk_GenerateString Char (- NewLen (strlen String))) String)
)
(defun vk_GenGUID (/)
    (apply
        'strcat
        (mapcar (function
                    (lambda (f)
                        (if f
                            (vk_StringPadLeft
                                (vk_Dec2Hex
                                    (fix (* (1- (expt 2 (* 4 f))) (vk_RandNum)))
                                )
                                f
                                "0"
                            )
                            "-"
                        )
                    )
                )
                '(4 4 nil 4 nil 4 nil 4 nil 4 4 4)
        )
    )
)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 05.05.2011, 21:50
#28
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от VVA Посмотреть сообщение
Для коллекции
вот что то подобное я и искал на болоте... Насколько я понимаю это псевдо-guid, зато средствами AUTOLISP...
gomer вне форума  
 
Непрочитано 06.05.2011, 10:13
#29
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от VVA Посмотреть сообщение
Для коллекции. По ссылке из #22 VovKa опубликовал еще один генератор
Я бы не стал его использовать т.к. "криптостойкость" ключа ограниченна (getvar "date") т.е. ключи достаточно близкие (для разовых применений достаточно - но при "гуидации" примитивов нескольких сотен чертежей (да еще и на паралельных процессах (машинах) - а при последовательном процессе guid вобщем-то и не нужен.) - вполне возможны коллизии).
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Генерация 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