|
Тема |
Re: Мотивация ... [re: StSt] |
|
Автор | StSt (Нерегистриран) | |
Публикувано | 23.05.06 17:31 |
|
|
След като помислих малко реших, че може би искаш да обработваш повече линии и затова ги експортваш в Exel. Затова промених малко програмата, така че можеш предварително да избереш необходимите линии или да ги посочиш след като стартираш програмата. Резултатът се изписва в близост да средата на линията. Височината на текста се задава предварително с TEXTSIZE. Останалите обяснения от сутринта важат и тук.
;Dy/10Dx group lines
(defun DyDx (/ nab i lin)
(PROMPT "Select nested LINES")
(if (setq i 0 nab (ssget))
(REPEAT (sslength nab)
(setq lin (ssname nab i)
i(1+ i))
(DyDx1 lin)
);REPEAT
);if nab
);DyDx
(defun DyDx1 (lin / pt1 pt2 pti dpt result)
(if (= "LINE"(cdr(ASSOC 0 (entget lin))))
(progn
(setq pt1 (cdr(ASSOC 10 (entget lin)))
pt2 (cdr(ASSOC 11 (entget lin)))
dpt (MAPCAR '- pt1 pt2)
result (/ (cadr dpt)(* 10 (car dpt)))
);setq
(COMMAND "text" "j" "BC"
(polar pt1 (ANGLE pt1 pt2)(/(DISTANCE pt1 pt2)2.0))
"" (/ (* (ANGLE pt1 pt2) 180.0)pi)
(rtos result 2 4)
(COMMAND))
);progn
);if LINE
);DyDx1
'(DyDx)
|
| |
|
|
|