Try this one:
Code:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;Makes a line between two points
(defun drline (p1 p2 layer)
(entmake (list (CONS 0 "LINE")
(CONS 8 layer)
(CONS 10 p1)
(CONS 11 p2)
) ;_ fin de list
) ;_ fin de entmake
) ;_ fin de defun
;;;;;;;;;;;;;;;;;;;;;;;;;;
;;Gets the value of an association
(defun get-as (aso lis /)
(cdr (assoc aso lis))
) ;_ end of defun
(defun c:brline (/ line-length space-b line-ent line-or line-end line-lay line-ang total-length dist-v pt2)
(setq line-ent (entget (car (entsel "\nSelect line: "))))
(setq line-or (get-as 10 line-ent))
(setq line-end (get-as 11 line-ent))
(setq line-lay (get-as 8 line-ent))
(setq line-ang (angle line-or line-end))
(setq total-length (distance line-or line-end))
(initget 7)
(setq line-length (/ total-length (getint "\nNumber of segments: ")))
(setq dist-v 0)
(while (< dist-v total-length)
(setq pt2 (polar line-or line-ang line-length))
(drline line-or pt2 line-lay)
(setq line-or pt2)
(setq dist-v (+ dist-v line-length))
) ;_ end of while
(entdel (get-as -1 line-ent))
(princ)
) ;_ end of defun
I hope this help you!!