RE:LISP: suma distancias de lineas
Publicado por
PABLO (1 intervención) el 10/09/2007 22:13:48
; ----------------------------------------------------------------------
; (Returns the sum of selected line objects)
; Copyright (C) 1997 DotSoft, All Rights Reserved
; ----------------------------------------------------------------------
; Para lineas con diferente cota en sus extremos se tomara la longitud real (3D Longitud), no la proyectada.
(defun C:sumlinea ()
(setq sset (ssget '((0 . "LINE"))))
(if sset
(progn
(setq tot 0.0)
(setq num (sslength sset) itm 0)
(while (< itm num)
(setq hnd (ssname sset itm))
(setq ent (entget hnd))
(setq pt1 (cdr (assoc 10 ent)))
(setq pt2 (cdr (assoc 11 ent)))
(setq dis (distance pt1 pt2))
(setq tot (+ tot dis))
(setq itm (1+ itm))
)
(princ (strcat "\nLongitud Total: " (rtos tot)))
)
)
(princ)
)
;********************************* HOLA CARACOLA ********************************
(prompt "\n*** Conjunto de rutinas para mediciones correctamente cargadas ***")
(prin1)