// 08.08.15 function Ans=Rotate3pt(varargin) Eps=10^(-4); Nargs=length(varargin); P=varargin(1); W1=varargin(2); W2=varargin(3); C=[0,0,0]; if Nargs>=4 C=varargin(4); end; if type(W2)==1 & length(W2)==1 Ct=cos(W2); St=sin(W2); V3=1/norm(W1)*W1; if V3(1)==0 Tmp=[1,0,0]; else Tmp=[0,1,0]; end; W1=[Tmp(2)*V3(3)-Tmp(3)*V3(2),Tmp(3)*V3(1)-Tmp(1)*V3(3),Tmp(1)*V3(2)-Tmp(2)*V3(1)]; V1=1/norm(W1)*W1; V2=[V3(2)*V1(3)-V3(3)*V1(2),V3(3)*V1(1)-V3(1)*V1(3),V3(1)*V1(2)-V3(2)*V1(1)]; else Tmp=[W1(2)*W2(3)-W1(3)*W2(2),W1(3)*W2(1)-W1(1)*W2(3),W1(1)*W2(2)-W1(2)*W2(1)]; if norm(Tmp)