Inspired with this topic :
http://www.theswamp.org/index.php?topic=46641.0I wrote this code for evolute :
(defun c:splcencurvpol
-evolute
( / getvertices v
^v unit osm spl pl ptlst n opn ptlstn
)
(defun getvertices
( pl
/ k pt ptlst
) )
)
)
)
)
)
)
)
(prompt "\nPicked entity isn't SPLINE, or missed... Try again...") )
(command "_.splinedit" spl
"_P" "\\") (setq ptlst
(getvertices pl
)) '
(lambda ( v1 v2
/ v1vec v2vec ip
) (setq v1vec
(v
^v v1vec n
)) (setq v2vec
(v
^v v2vec n
)) )
)
(setq v1vec
(v
^v v1vec n
)) (setq v2vec
(v
^v v2vec n
)) )
(setq v1vec
(v
^v v1vec n
)) (setq v2vec
(v
^v v2vec n
)) )
)
)
ptlst
)
)
'
(lambda ( v1 v2
/ v1vec v2vec ip
) (setq v1vec
(v
^v v1vec n
)) (setq v2vec
(v
^v v2vec n
)) )
)
)
)
)
'(0 . "LWPOLYLINE")
'(100 . "AcDbEntity")
'(100 . "AcDbPolyline")
)
)
)
)
(alert "Picked SPLINE entity isn't planar... Quitting...") )
)
)
It works on my machine, and for Quirkiness and such problems if exist refer to my link posted above...