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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Имена динамических блоков

Имена динамических блоков

Ответ
Поиск в этой теме
Непрочитано 21.03.2011, 10:23
Имена динамических блоков
Zaghim
 
Регистрация: 01.07.2010
Сообщений: 521

Друзья, есть динамический блок. Имя его Truba. Когда вставляю кучу блоков, имена их становятся не труба, а *U232 и тому подобные. Каким образом вытащить программно его истинное имя?
Просмотров: 10719
 
Непрочитано 31.05.2011, 19:29
#41
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Sanchev Посмотреть сообщение
подскажите тупому начинающему, что является параметром функции blk-get-name-vla?
примитив 'ENAME Во втором приближении можно сделать так
Код:
[Выделить все]
 (defun *-get-EffectiveName (ent)
  (if (= 'ENAME
	 (type ent)
	 (*-get-EffectiveName (vlax-ename->vla-object ent))
	 (vla-get-EffectiveName ent)
      )
  )
)
gomer вне форума  
 
Непрочитано 31.05.2011, 20:36
#42
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


vla-указатель на вхождение блока.
P.S. gomer, по-моему, ты со скобками напутал... ИМХО должно быть нечто типа
Код:
[Выделить все]
 (vl-load-com)

(defun *-get-name (ent)
  (cond
    ((= (type ent) 'ename)
     (*-get-name (vlax-ename->vla-object ent))
    )
    ((and (= (type ent) 'vla-object)
	  (vlax-property-available-p ent 'effectivename)
     )
     (vla-get-effectivename ent)
    )
    ((and (= (type ent) 'vla-object)
	  (vlax-property-available-p ent 'name)
     )
     (vla-get-name ent)
    )
  )
)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.

Последний раз редактировалось Кулик Алексей aka kpblc, 31.05.2011 в 20:42.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.06.2011, 12:57
#43
Sanchev


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


Цитата:
Сообщение от gomer Посмотреть сообщение
примитив 'ENAME Во втором приближении можно сделать так
спасибо, но, другими словами, вопрос заключался в том, как запустить эту программу?

Цитата:
Сообщение от Do$ Посмотреть сообщение
Код:
[Выделить все]
 (defun blk-get-name-vla (ent)
  ;;(blk-get-name-vla (car (entsel)))
  (vla-get-EffectiveName (vlax-ename->vla-object ent))
) ;_ end of defun
Sanchev вне форума  
 
Непрочитано 02.06.2011, 13:20
#44
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


Это не программа, это функция, она может использоваться в программе посредством ее вызова. А пример вызова - в закомментированной строке.
Do$ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Имена динамических блоков



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сквозная нумерация динамических блоков zenon Программирование 214 28.08.2020 08:45
подсчет динамических блоков AAI Программирование 37 25.06.2012 15:05
Тормозит команда расчленения набора блоков batmax Программирование 4 31.08.2010 17:37
Подсчет и сортировка блоков на текущем слое. Помогите отредактировать. Kortes Программирование 17 26.03.2010 18:46
Проблема вставки Динамических блоков Владимир М Программирование 11 12.09.2007 15:42