function [ D L ] = perpRot(  u, gama, lengthD, lengthL  )
%perpRot Create D vect and rotate to correct direct

%% Dopočítání parametrů

% směr D složky
R = [1, 0, 0 ; 0, cos(gama), -sin(gama) ; 0, sin(gama), cos(gama)];
D = (R*[0 -1 0]')';

% obecná osa rotace
w = cross(u,D);
% znormujeme
os = w./sqrt(sum(w.^2));

%% Rotační matice
R = [ os(1)^2,               os(3) + os(1)*os(2),  os(1)*os(3) - os(2);...
      os(1)*os(2) - os(3),   os(2)^2,              os(1) + os(2)*os(3);...
      os(2) + os(1)*os(3),   os(2)*os(3) - os(1),  os(3)^2];

%% Samotné otočení a nastavení správné velikosti    
nL = (R*D')';

% zkusíme znovu znormovat
nL = nL./(sqrt(sum(nL.^2)));

L = nL*lengthL;
D = D*lengthD;

end

