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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Получить блок программно, не используя функцию entsel

Получить блок программно, не используя функцию entsel

Ответ
Поиск в этой теме
Непрочитано 03.12.2010, 11:27
Получить блок программно, не используя функцию entsel
Nextk
 
Регистрация: 02.12.2010
Сообщений: 7

Здравствуйте.
Я использую функцию, взятую с этого форума.
Наверное, она вам известна. Она получает атрибуты.
Например так
Код:
[Выделить все]
(get-all-atts (car(entsel "\nSelect block:")))
а мне нужно получить атрибуты этой же функцией, но не по выделению мышкой, а по знанию того, что блок называется "testname", например. Как это сделать?
Спасибо за внимание, буду очень благодарен советам.
Просмотров: 5508
 
Непрочитано 16.12.2010, 13:35
#21
NEDIS

Инженер СКС
 
Регистрация: 21.08.2009
г. Домодедово МО
Сообщений: 72


Цитата:
Сообщение от Лиспер Посмотреть сообщение
Пример обработало примерно за секунду (AutoCAD 2008).
---
Добавлено: давай файл с 200 / 2 000 / 20 000 блоками, попробую погонять. Если время найдется.
---
Добавлено 2: Ради интересу можно добавить в файл "мусора" - сторонних блоков, которые вообще никакого отношения к задаче не имеют. И попробовать уже с ними.
Прикрепляю файлы на 200 и 2000 блоков
P.S. Там два вида блоков с 1 маркером и с 2 маркерами. Вызов функции:
Код:
[Выделить все]
(defun C:repole ( / )
	(repole-mark "SCS_kab_marker" "СЛОЙ1" "МАРКЕР1" 0.6)
	(repole-mark "SCS_kab_marker_2" "СЛОЙ1" "МАРКЕР1" 0.6)
	(repole-mark "SCS_kab_marker_2" "СЛОЙ2" "МАРКЕР2" 0.6)
)
NEDIS вне форума  
 
Непрочитано 16.12.2010, 13:37
#22
Лиспер


 
Регистрация: 11.10.2010
Сообщений: 979


Так а файла-то и нетутить...
__________________
(/= RegDate StartReadDate)
Лиспер вне форума  
 
Непрочитано 16.12.2010, 13:38
#23
NEDIS

Инженер СКС
 
Регистрация: 21.08.2009
г. Домодедово МО
Сообщений: 72


Цитата:
Сообщение от Лиспер Посмотреть сообщение
Так а файла-то и нетутить...
ой извиняюсь

Время обработки 200 шт около 15 сек
Вложения
Тип файла: dwg
DWG 2007
Пример на форум 200 шт.dwg (174.6 Кб, 399 просмотров)
Тип файла: dwg
DWG 2007
Пример на форум 2000 шт.dwg (1.09 Мб, 396 просмотров)

Последний раз редактировалось NEDIS, 16.12.2010 в 13:39. Причина: Время обработки
NEDIS вне форума  
 
Непрочитано 16.12.2010, 15:43
#24
Лиспер


 
Регистрация: 11.10.2010
Сообщений: 979


Да, алгоритм, выходит, не оптимальный. Но другого я придумать не смог. Компиляция в fas проблему быстродействия моего варианта, естественно, не решила. Сорри
__________________
(/= RegDate StartReadDate)
Лиспер вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Получить блок программно, не используя функцию entsel



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Болеем за наших на Олимпиаде T-Yoke Разное 472 28.04.2009 17:40
ADT. Программно получить значение храктеристики. игорёк Программирование 10 25.08.2008 10:39
Как получить значение атрибута используя Diesel-выражение? mental Программирование 1 12.04.2007 10:16