|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
DwgRuLispLib: Преобразование variant или safearray в список
Moderator
LISP, C# (ACAD 200[9,12,13,14])
С.-Петербург
Регистрация: 25.08.2003
Сообщений: 39,490
|
||
Просмотров: 21478
|
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Предлагаю расширить функцию в "Преобразование значения в список", может даже переименовать, пока не поздно в _dwgru-value-to-list.
Добавить в cond дополнительные пункты: Код:
Последний раз редактировалось Евгений А., 29.11.2007 в 10:01. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
тогда уж получится нечто типа
Код:
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. Последний раз редактировалось Кулик Алексей aka kpblc, 30.11.2007 в 11:22. |
|||
![]() |
|
||||
Очень даже ничего. Любое - в список.
Пару замечаний 1. В примечаниях к ф-ции вот здесь (entmakex '(list (0 . "LINE") или убери list или '. А то не рабочий пример 2. Код:
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
Пример исправил. А вот пока с твоим lst1 что делать - еще не прикидывал.
--- Добавлено: Извини, но рекурсию делать не буду. Потому что в имеющемся варианте: Код:
Пока так... Может, попозже чего и придумается. Или у тебя есть вариант своего кода?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. Последний раз редактировалось Кулик Алексей aka kpblc, 30.11.2007 в 11:28. |
|||
![]() |
|
||||
Регистрация: 11.10.2004
e•burg
Сообщений: 755
|
Замечание по структуре - для организации библиотеки, не очень хорошо загонять в функцию слишком большой кусок функционала, тем более, когда он вполне логично бъётся на самостоятельные полезные куски. По хорошему, функция _dwgru-conv-value-to-list должна бы быть примерно такой:
Код:
Последний раз редактировалось Alaspher, 30.11.2007 в 12:10. Причина: чтото движок форума фокусничает или браузер у мну |
|||
![]() |
|
||||
По поводу lst1 придумал пока так
Код:
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
Alaspher, позволю себе не согласиться. Сейчас по одной функции я свободно получаю список из (vla-get-insertionpoint), к примеру.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.10.2004
e•burg
Сообщений: 755
|
А что помешает тебе делать это и дальше? Просто, при наличии такой функции-селектора и узкоспециализированных функций конвертеров существенно проще отладить код, да и не всегда надо использовать селектор - зачем нагружать систему лишними проверками, если по ходу выполнения программы на вход конвертеру может быть дан только один тип данных? Но иметь и универсальный конвертер может быть полезно, когда уверенности в типах нет.
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
А, то есть ты предлагаешь и узкоспециализированные, и оставить универсалку?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.10.2004
e•burg
Сообщений: 755
|
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
Не, я не про это. Смотри:
Код:
Или я чего-то не учитываю.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.10.2004
e•burg
Сообщений: 755
|
Вот, примерно о таком я говорю:
Код:
|
|||
![]() |
|
||||
Про pickset согласен с Alaspher.
Вот вроде набросал. Даже что-то проверял, но не очень настойчиво. Код:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 30.11.2007 в 16:39. Причина: _dwgru-conv-pickset-to-list вариант с ssname |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
Цитата:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.10.2004
e•burg
Сообщений: 755
|
pickset - результат необъектных методов выбора, так что логичнее, что он разворачивается в необъектный список, мне так кажется. По своему опыту - если у меня есть список примитивов, то при необходимости конвертации во vla-object, я сделаю это при самой обработке, но это если понадобится, что не факт, а если мне нужны примитивы в виде ename, то мне надо будет конвертировать обратно...
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
> VVA : Ну так публикуй! Ради чего все затевалось-то?
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Это ты о чем?
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,490
|
О том, что ты сделал готовые функции. И теоретически их можно в DwgRuLibLisp закидывать. Или нет?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Вставка в таблицу поля, соотвествующего площади примитива | Profan | Готовые программы | 272 | 06.06.2021 23:12 |
Сейсмозащита и сейсмоизоляция существующих, построенных зд. | IANationalInformAgentstvo | Прочее. Архитектура и строительство | 216 | 20.01.2015 16:51 |
Преобразование из Microstation в DWG или DXF | Гость | Прочее. Программное обеспечение | 9 | 25.05.2012 08:49 |
Как сделать проекцию на ось или преобразование 3D в 2D | tapych | AutoCAD | 6 | 25.11.2006 15:30 |
safearray и variant | Apelsinov | Программирование | 4 | 03.12.2005 23:44 |