As a spline gives two answers the points answer and another with nodes. So any way if you explode the Mleader then you can get at the spline using this. Just need to check that the spline is last entity, tested in Bricscad. A disclaimer not sure if length is correct. I think it is short by length of arrow. Will try to find arrow length. Yep found it.
(defun c:wow ( / plent pt len lenar)
(setq plent (entsel "\nPick mleader "))
(setq lenar (cdr (assoc 140 (entget (car plent)))))
(command "undo" "M")
(command "explode" (car plent))
(setq ent (ssname (ssget "L") 0))
(setq len (getpropertyvalue ent "length"))
(command "undo" "B")
(alert (strcat "Total length is " (rtos (+ lenar len) 2 3)))
(princ)
)
(c:wow)
I think you could do a "I want a length of 100 by drawing something close then move say arrow point till you get approx 100. Via lisp. It would be a two step process explode and move then undo and reset arrow head point.
LOL! Only for items that look difficult, or painful in lisp, where there’s a possible built in function. This drawing took 0.03673760 seconds to process.
if the drawing is indeed correct, have a look here for how to run python https://github.com/CEXT-Dan/PyRx
arc2.dwg