Мне кажется, это проще всего решить в полярных координатах.
Точка, если я правильно понял условие, вообще зафиксирована на экране - например в центре - а вокруг нее вращается отрезок.
При этом угол RO полярных координат изменяется линейно во времени,
длины "хвостов" отрезка с разных сторон точки тоже меняются линейно во времени.
В итоге имеем что-то наподобие :
iCnt:=300; fLen:=200;
for iTime:=0 to iCnt-1 do
begin
fRo:=iTime/iCnt*2*PI;
fLen1:=fLen*(iTime/iCnt);
iX1:=iXCenter+round(fLen1*cos(fRo));
iY1:=iYCenter+round(fLen1*sin(fRo));
fLen2:=fLen-fLen1;
iX2:=iXCenter-round(fLen2*cos(fRo));
iY2:=iYCenter-round(fLen2*sin(fRo));
// отрисовка
end;