LusoRobótica - Robótica em Português
Discussão Geral => Off-topic => Tópico iniciado por: brunus em 27 de Dezembro de 2016, 23:09
-
Precisava de estimar, calcular o perímetro de todas as linhas, segmentos, curvas de um desenho no draftsight. Pelo que percebi não existe essa função por defeito, ou se existe, é preciso andar a selecionar o inicio e fim de cada segmento e se forem mais de 300 segmentos/polylines, torna-se inviável.
Pesquisando o assunto, dei com um forum onde pessoal expõe programas ou uma série de linhas de comando para se usar com o autolisp.
um exemplo:
Give this a try:
(defun c:tlen (/ n e ss rjp-getlength)
(defun rjp-getlength (e / ep)
(if (= (type e) 'ename)
(setq e (vlax-ename->vla-object e))
)
(if (not (vl-catch-all-error-p
(setq ep (vl-catch-all-apply 'vlax-curve-getendparam (list e)))
)
)
(vlax-curve-getdistatparam e ep)
0.0
)
)
(setq n 0)
(if (setq ss (ssget))
(progn (while (setq e (ssname ss 0))
(setq n (+ (rjp-getlength e) n))
(ssdel e ss)
)
(alert (rtos n))
)
)
(princ)
Como posso usar isto no Draftsight?
1) Para gravar o ficheiro em lisp, basta colocar estas linhas no notepad e gravar com a extensão .lsp?
2) Como executo o ficheiro lisp no Draftsight? ou qual a linha de comandos?
3) É preciso compilar o ficheiro lisp ou colocá-lo em alguma pasta ou directorio do Draftsight?