@GLAVCVS agree need the 3 sides, then can work out the internal angle which results in working out the new length of the side lines and a new point, then update the points.
This is get segment of pline.
(defun getplineseg ( / elst ename pt param preparam postparam)
(setq elst (entsel "\nSelect pline segment: "))
(setq ename (car elst))
(setq pt (cadr elst))
(setq pt (vlax-curve-getClosestPointTo ename pt))
(print (setq param (vlax-curve-getParamAtPoint ename pt)) )
(print (setq preparam (fix param)) )
(print (setq postparam (1+ preparam)) )
(setq pt1 (vlax-curve-getPointAtParam ename preparam)
pt2 (vlax-curve-getPointAtParam ename postparam))
)
I would have a go but very busy at moment. maybe later on have a couple of outstanding tasks. Some one welcome to use the code provided as a start point, get internal angle is out there also.