%% Billardprojekt
clear, close all
g = 9.81; % Schwerkraft
kugelr=3.01; %Radius der weißen Kugel --> wichtig für dezentralen Stoß
c=0.4; %Vollkugel
rkofg=0.2; %Reibungskoeffizient beim Gleiten
rkofr=0.1; %Reibungskoeffizient beim Rollen --> muss noch recherchiert werden
%%%%%%%%%
v0 =5;     % m/s
x0 = 0; % m
om0 = 0;  % 1/s
phi0 = 0; % rad
Dt = 0.001; % Schrittweite im solver
sim('billarddezentral_Bli_a');

 % Tisch
x=[0 0 254 254 0];
y=[0 127 127 0 0];
 
v=[x;y];
plot(v(1,:),v(2,:), 'b', 'linewidth', 2)
fill(x,y,'g');
axis([0 254 0 127])
axis equal
shg;
hold on

%Kugel
Kx0 = 50;          % Zufallsstartposition round(random('unif',1,253));
Ky0 = 63;
abbruch = false;

plot(Kx0,Ky0,'.w','markersize',60); 
 shg
% Ky = Ky+1;
Kx = Kx0+sk(1)*1000;
Ky = Ky0;
i = 1;
while  abbruch == false
   if Ky>=127-6;  % der exakte Wert wird nie erreicht deshalb >=
       % das ist gut, Nachteil Simulink weiß nicht, wann es aufhören soll
      Ky=121;
      abbruch=true;
      pause(1);
   end
   if Kx>=254-6;
       Kx=248;
       abbruch=true;
       pause(1);
   end
 plot(Kx, Ky,'.w','markersize',60); 
 shg
 
%  Kx=Kx+1;
%  Ky = Ky+1;
 Kx =Kx0+ sk(i)*1000; % Hier wird die Ausgabe genutzt, um die Kugel zu verschieben
pause(0.01);
i = i+1
end
tbande = i*Dt; 
hold on
figure (2)
plot(tout, sk, tout, vk, tout, omk, tout, phik,[tbande tbande],[0 20]), legend('sk','vk','omk','phik');
