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

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

выноска без текста

Ответ
Поиск в этой теме
Непрочитано 02.05.2007, 21:26 #1
выноска без текста
DFooz
 
учащийся
 
Москва
Регистрация: 25.03.2007
Сообщений: 44

как такое реализовать?
В ГУИ нажимаю Esc и всё, а как программно этот Esc реализовать?
Что вместо cancel'a написать надо?

(command "_.QLEADER" '(0 0) '(50 50) "" 0 *CANCEL*)
Просмотров: 3254
 
Непрочитано 02.05.2007, 21:37
#2
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Код:
[Выделить все]
(vla-addLeader *ОБЪЕКТ_АКТИВНОЕ_ПРОСТРАНСТВО* (vlax-make-variant (vlax-safearray-fill (vlax-make-safearray vlax-vbDouble '(0 . 5)) (append  '(0 0 0) '(50 50 0.0)))) acLineWithArrow)
Лентяй вне форума  
 
Непрочитано 03.05.2007, 07:10
#3
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


Код:
[Выделить все]
(command "_qleader" '(0 0) '(50 50) "" )
(command)
Или так:
Код:
[Выделить все]
(command "_leader" '(0 0) '(50 50) "" "" "_none")
Krieger вне форума  
 
Непрочитано 03.05.2007, 08:25
#4
Кулик Алексей aka kpblc
Moderator

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


> Лентяй: лично мне не удалось через active-x методы создавать выноску без аннотации (вываливало ошибку). Потребовалось для таких задач создавать временный объект аннотации а потом его удалять. Проверял на 2005, 2006 и 2007.
> DFooz:
Код:
[Выделить все]
;; Имитация нажатия <enter>:
(command "")

;; Имитация нажатия <esc>:
(command nil)
(command)

;; Имитация запроса данных от пользователя
(command pause)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.05.2007, 09:10
#5
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Цитата:
Сообщение от Кулик Алексей aka kpblc
> Лентяй: лично мне не удалось через active-x методы создавать выноску без аннотации (вываливало ошибку). Потребовалось для таких задач создавать временный объект аннотации а потом его удалять. Проверял на 2005, 2006 и 2007.
Так всегда бывает у тех, кто плохо верит в успех. Сказано ибо в Писании, "HELP" прозываемом средь праведных: "You can also create leaders that are not associated to a particular object. To do this, simply input a NULL object as the annotation."
Лентяй вне форума  
 
Непрочитано 03.05.2007, 09:20
#6
Кулик Алексей aka kpblc
Moderator

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


Я охотно допускаю, что я клинический идиот, но тем не менее:
твой код (единственное, что добавил - это определение активного пространства) вываливает
Код:
[Выделить все]
ERRNO # 2 : too few actual parameters
А вариант:
Код:
[Выделить все]
(vla-addleader
  (_kpblc-get-active-space-obj)
  (vlax-make-variant
    (vlax-safearray-fill
      (vlax-make-safearray vlax-vbdouble '(0 . 5))
      (append '(0 0 0) '(50 50 0.0))
      ) ;_ end of vlax-safearray-fill
    ) ;_ end of vlax-make-variant
  vlax-vbnull
  aclinewitharrow
  ) ;_ end of vla-addLeader
выдает
Код:
[Выделить все]
ERRNO # 2 : lisp value has no coercion to VARIANT with this type:  1
(что в общем-то ожидаемо). Дядька, будь ласку, подскажи, каким макаром ты делаешь выноску без аннотации (хотя по жизни мне это вряд ли понадобится, но знать не помешает).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.05.2007, 11:04
#7
Zouss


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


как у вас тут все непонятноо... я наверное эту тему с active-x никогда не вкурю
Код:
[Выделить все]
;;;dxf-выноска бЭз аннотаций

(defun c:m1 (/)
  (2lead_cr_leader (list 0 0 0) (list 50 50 0.0))
) ;_ defun

(defun 2lead_cr_leader (pt1 pt2 / el)
  (setq
    el
     (list
       (cons 0 "LEADER")
       (cons 100 "AcDbEntity")
       (cons 100 "AcDbLeader")
;;;       (cons 73 3)			;Leader creation flag (default = 3):
					;0 = Created with text annotation
					;1 = Created with tolerance annotation
					;2 = Created with block reference annotation
					;3 = Created without any annotation
       
       (cons 75 0)			;Hookline flag: 0 = No hookline; 1 = Has a hookline 
       (cons 10 pt1)
       (cons 10 pt2)
     ) ;_  list
  ) ;_  setq
  (if (entmake el)
    (entget (entlast))
  ) ;_  if
) ;_  defun
кстати проги Лентяя из отсюда у меня тоже не срабатывают
Zouss вне форума  
 
Непрочитано 03.05.2007, 11:07
#8
Кулик Алексей aka kpblc
Moderator

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


> Zouss : LEADER не единственный примитив, который создавать (да и модифицировать тоже) крайне желательно как раз через dxf (WIPEOUT туды жа можно отнесть в частности). Мне просто интересно, как Лентяй решил проблему
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > выноска без текста