|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,835
|
Цитата:
Открыть файл, пройтись по коллекции блоков. Один из вариантов решения - ObjectDBX
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Цитата:
|
|||
|
||||
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
VVA, познакомился я как-то с этим "стилом" - выяснил один не очень приятный момент. Пробовал я "выкрасть" из файла типы линий, так он почему-то принимает имена типов линий только "в лоб" - в чистом виде, в кавычках и прямо, только строку - переменную как символ мне ему скормить мне не удалось. Это когда я допиливал программу для копирования объектов из внешней ссылки в файл. Она вылетала при попытке скопировать линию, тип которой не определен в текущем файле. Так и пришлось "красть" все типы линий. Надо будет, кстати, выложить получившееся чудо в соответствующей теме....
Offtop: VVA, кстати, цитата - не моя . |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,835
|
А что ты собираешься сравнивать? Если на индентичность - то equal и вперед.
----- добавлено через ~3 мин. ----- Хотя, возможно, удастся обойтись и простым "="
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Подскажите плиз, как разделить selection set на два?
Нужно выбрать один раз рамкой объекты на чертеже, затем из выбранного все блоки собрать в ssetA, а все полилинии в ssetB. Если сделать по очереди и выбрать два раза то все понятно: Код:
__________________
Блог |
||||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Red Nova, пожалуй самый простой для понимания вариант - безо всяких "лямбд" (припоминаю, что ты их не очень любил) и сторонних функций - будет примерно таким:
Код:
Полагаю, кто-нибудь решит эту задачку за пару-тройку строк. |
|||
|
||||
skkk, Спасибо за столь подробный ответ . Переварил, переосмыслил и вот сделал по своему.
Цитата:
Код:
__________________
Блог |
||||
|
||||
Дима_ Да уж, это по сложнее будет ))
__________________
Блог |
||||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
(lambda ...) возвращает функцию, соответственно ((lambda ...) arg...) запускает ее с аргументами arg..., между первой и второй скобкой можно поставить любую функцию которая принимает функцию как аргумент.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
|
||||
roaa
Спасибо, Коротко. Но пару вопросов. 1. В чем смысл зуммировать?: (vl-cmdf "_zoom" "_o" sset "") (vl-cmdf "_zoom" "_p" "") Работает и без этого. 2. Правильно ли я понял что (sssetfirst nil sset) отключает выбор рамкой и ssget берет предыдущий выбор за основу?
__________________
Блог |
||||
|
||||
ОПС Регистрация: 29.03.2012
Kazakhstan
Сообщений: 128
|
Выбор ssget происходит на видимой части экрана, поэтому зуммируем выбранное (после возвращаем к исходному виду). (sssetfirst nil sset) производит выделение набора sset, а ssget подхватывает... как-то так.
В виде функции: Код:
Последний раз редактировалось roaa, 06.02.2017 в 22:17. |
|||
|
||||
Спасибо. (sssetfirst nil sset) оказалось очень полезна. Вроде как логика ясна.
Но на счет зуммирования не убежден, так как работает и без этого.
__________________
Блог |
||||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Вставка в таблицу поля, соотвествующего площади примитива | Profan | Готовые программы | 272 | 06.06.2021 23:12 |
Сейсмозащита и сейсмоизоляция существующих, построенных зд. | IANationalInformAgentstvo | Прочее. Архитектура и строительство | 216 | 20.01.2015 16:51 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 | |
ЮМОР 2006 =) | Perezz!! | Разное | 1122 | 04.01.2007 00:46 |