Показать сообщение отдельно
Непрочитано 27.06.2015, 10:27 #1
Функция динамического рисования примитивов Autocad
roaa
 
ОПС
 
Kazakhstan
Регистрация: 29.03.2012
Сообщений: 127

Искал, искал по форуму, но так и не нашел окончательного варианта функции отрисовки полилинии. Может кому и понадобится.
Хотя это можно применить и для отрисовки других примитивов.
Код:
[Выделить все]
 
(defun _sensor_draw_active (cmdlst) 
;;; функция рисования примитива Autocad
;;; cmdlst - список выполняемых действий для одной команды
;;; Например: вызов рисования полилинии (_sensor_draw_active '("_.pline"))
;;;                           отрезок (_sensor_draw_active '("_line" PAUSE PAUSE ""))
;;; Возвращает entety name примитива, если создана, иначе nil
  (setq pl (entlast))
  (vl-catch-all-apply 
    (function
      (lambda ()
        (eval (cons 'vl-cmdf cmdlst))
        (while (> (getvar "CMDACTIVE") 0)(command pause))
      ) ;_ end lambda
    ) ;_ end function 
  ) ;_ end vl-catch-all-apply 
  (if (not (eq (entlast) pl))(entlast))
) ;_ end defun

Последний раз редактировалось roaa, 27.06.2015 в 14:16.
Просмотров: 13532
 
Размещение рекламы