|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
19.07.2016, 09:57 | #1 | |
LISP. Не удается корректно отсортировать объекты
Регистрация: 26.12.2013
Сообщений: 284
|
||
Просмотров: 3115
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Что значит "в нужной последовательности"? По какому критерию будешь сортировать? По точке вставки? По значению атрибута?
Если по точке вставки, то посмотри нечто типа: Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Ну так вперед, пример есть. Вообще-то тема опять свернула в оффтоп.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
В моем? Может быть, писал практически насухую и без проверок.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 26.12.2013
Сообщений: 284
|
Я все же свой код решил использовать т.к. по ходу еще манипуляции надо делать.
И столкнулся с проблемой: Код:
Почему сортировка неправильная? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Ты попробуй просто vl-sort, посмотри на результат.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Ты хоть что сортируешь?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 26.12.2013
Сообщений: 284
|
Команда: (vl-sort f_list '>)
(21014.3 21004.3 20648.6 20638.6 20340.9 20330.9 20320.9 20310.9 19907.9 19897.9 19542.3 19532.3 19522.3 19512.3 19502.3 19234.5 18849.4 18839.4 18541.7 18531.7) Всегда правильно. ----- добавлено через ~4 мин. ----- динамические блоки- точнее их координаты. Создаю набор, создаю список координат, переворачиваю список, сортирую-получаю i . По i из набора в нужной последовательности работаю с блоками (меняю значения атрибутов и другое) Код:
Забавно: (vl-sort f_list '>) - всегда правильно (vl-sort-i f_list '>) - всегда НЕправильно |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Может, проще стоит работать?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Ты указывал только сортировку по оси Оу - так и получаешь ее, чего не нравится? Поменяй направление сортировки - и все будет вполне нормально.
P.S. Потом покажи, что получилось - я хочу посмотреть и сравнить скорость выполнения.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 26.12.2013
Сообщений: 284
|
----- добавлено через ~35 мин. -----
Вот результат который мне нужен был (изменил строки 113,118,147): Код:
Но так и не понятно почему сортировка vl-sort-i не работала. Последний раз редактировалось tujn08, 25.07.2016 в 12:19. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Ты принципиально не локализовываешь переменные? http://autolisp.ru/2011/06/08/functi...bility-region/
С кодом через час-другой начну разбираться, не раньше.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 26.12.2013
Сообщений: 284
|
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Добавлю: есть еще такая штука, как параметры вызова.
Далее: (ssget "_W" ...) будет корректно работать только если вся область видима на экране. Про привязки отдельно напоминать надо? ----- добавлено через 51 сек. ----- При правильной организации кода, передаче параметров и проч. - все становится очень просто и быстро.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Твой код вывалил ошибку на твоем же примере. В чем собственно затык - я разбираться не стал, в качестве примера кода - см.аттач.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Не могу корректно сменить основной файл меню | Кулик Алексей aka kpblc | LISP | 8 | 04.07.2016 08:51 |
LISP. Программная вставка dwf в текущий файл | Кулик Алексей aka kpblc | LISP | 4 | 10.02.2015 14:38 |
Lisp: удалить "ножницы". | hwd | LISP | 2 | 29.05.2013 19:10 |
Объекты есть, но их нет! | Volodich | AutoCAD | 19 | 22.03.2013 09:55 |
LISP: возможно ли выбрать через ssget рамкой объекты разных типов? | cj_lex | LISP | 5 | 20.04.2012 10:54 |