I've achieved my goal by building a curve between 3 points and finding out the value of an ordinate on it. I wrote a function in the "Matlab function" simulink block and it works!
code:
% function position = fcn(angle, point) x = (0:2:358); index=(angle/2)+1; index1 = floor(index); if any(index1<2) index2=index1+1; index3=index1+2; index4=index1+3; elseif any(index1>177) index2=index1-1; index3=index1-2; index4=index1-3; else index2=index1+1; index3=index1-1; index4=index1+2; end y=[point(index1); point(index2); point(index3); point(index4)]; M=[x(index1).^3 x(index1).^2 x(index1) 1;x(index2).^3 x(index2).^2 x(index2) 1;x(index3).^3 x(index3).^2 x(index3) 1;x(index4).^3 x(index4).^2 x(index4) 1]; M_inverse= inv(M); q=(M_inverse)*(y); a=q(1); b=q(2); c=q(3); d=q(4); position=(a*angle.^3)+(b*angle.^2)+(c*angle)+d ;