|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
31.05.2006, 03:06 | #1 | |
В LISPе нет или не нашел?
Программист широкого профиля.
Челябинск
Регистрация: 08.09.2005
Сообщений: 722
|
||
Просмотров: 4700
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
http://dwg.ru/forum/viewtopic.php?t=6282 - здесь кое-что рассматривали вроде как...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
webcad.pro Регистрация: 06.01.2005
Московская обл.
Сообщений: 501
|
>mmax
Генератор случайных чисел есть в небезызвестной библиотеке doslib функция (dos_random). Ее описание и применение можно посмотреть в справке. А насчет последовательностей тоже никаких трудностей - например такой вариант: Код:
|
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
(num-list 1 19900 1) --Возвращает список (1.....19000)
(num-list 1 20000 1) --Уже не возвращает ничего Точный порог не нашел еще, но хотелось бы без порога. Этот список нужен для получения списка имен примитивов из набора через функцию ssname, для последующей передачи спика с примитивами в функцию entmud Функция (ssname набор 60000) работает несмотря на ограничение в 32764 указанное в справке. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Гхм... А зачем так-то?
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Код:
Вышеуказанный код работает, но яхотел так Код:
В отличии от ssnameX ssnamE возвращает только имя и ничего больше, поэтому и возвращаемый результат должен быть более стабильым. Вот только надо сформировать последовательность в зависимости от количества выбраных линий, но пока мы можем получить только от (0 до 19000) |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
(vl-remove-if 'listp (mapcar 'cadr (ssnamex selset))
Возвращает список ename-примитивов, попавших в примитив. А уж что там ты будешь с ними делать, это только твоей фантазией ограничено
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
Раз уж заговорили про (vl-remove-if), то вот проблемка. Необходимо сделать удаление повторно встречающихся элементов списка, оставляя при этом первое вхождение, т.е. чтобы из
Код:
Код:
|
|||
|
||||
Проектировщик ВК. LISP-любитель. Регистрация: 15.12.2003
Москва
Сообщений: 1,192
|
Код:
__________________
apel.fas |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Ох и огребу же я сейчас!
Код:
--- Добавлено: Цитата:
Цитата:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
А фактически что одно, что другое. Разницы почти никакой. foreach я тоже первым сделал А потом просто на mapcar заменил
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
Цитата:
|
|||
|
||||
Цитата:
|
||||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Всетаки я докопался до последовательностей
Их можно сделать так: Код:
А можно так: и работает быстрее (1.....2 000 000) делала 33сек Код:
|
|||