⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 time_to_impact.m

📁 一个有趣的桌面撞球模拟,可录制avi,输出坐标参数及图象
💻 M
字号:
function tf=time_to_impact(width,height,th,mu,x0,y0,v0,e)
g=32.174;

Xpoly_max=[-mu*g/2*cos(th*pi/180) v0*cos(th*pi/180) x0-width];
Ypoly_max=[-mu*g/2*sin(th*pi/180) v0*sin(th*pi/180) y0-height];
Xpoly_0=[-mu*g/2*cos(th*pi/180) v0*cos(th*pi/180) x0];
Ypoly_0=[-mu*g/2*sin(th*pi/180) v0*sin(th*pi/180) y0];
Vpoly=[-mu*g v0];
A=max(roots(Xpoly_max));
B=min(roots(Xpoly_max));
C=max(roots(Ypoly_max));
D=min(roots(Ypoly_max));
E=max(roots(Xpoly_0));
F=min(roots(Xpoly_0));
G=max(roots(Ypoly_0));
H=min(roots(Ypoly_0));
tfv=roots(Vpoly);

if th>0 & th<90
    DD=[A B C D tfv];
    tf=min(DD);
    return;
    
elseif th>90 & th<180
    DD=[E F C D tfv];
    tf=min(DD);
    return;
    
elseif th>180 & th<270
    DD=[E F G H tfv];
    tf=min(DD);
    return;
    
elseif th>270 & th<360
    DD=[A B G H tfv];
    tf=min(DD);
    return;

elseif th==0 | th==360
    DD=[A B tfv];
    tf=min(DD);
    return;
    
elseif th==90
    DD=[C D tfv];
    tf=min(DD);
    return;
    
elseif th==180
    DD=[E F tfv];
    tf=min(DD);
    return;
    
elseif th==270
    DD=[G H tfv];
    tf=min(DD);
    return;
    
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -