在振动学中,相互垂直的两简谐振动合成时,如果两简谐振动的频率相同,则可形成稳定的椭圆曲线,极端条件为圆和直线;而当两相互垂直的简谐振动频率不同时,合成运动比较复杂,其运动轨迹一般不闭合,但当两分振动频率成简单的整数比时,其合成运动的轨迹则为封闭曲线,因由法国物理学家朱尔·利萨茹在1857年作更详细研究而得名,故称为李萨如图形( Lissajous-figure)。而相互垂直的两任意振动的合成运动轨迹图形,则称为广义李萨如图形。
参考官网教程:使用 GUIDE 创建简单的 App
行为有:
一. 鼠标右击n滑动条,Callback,跳到m文件滑动条对于的代码。
二. 在%handle下添加以下代码:
其中edit1就是右框,查看tag,tag也可自己修改,它组件的ID名。
global n;
n = get(hObject,'Value');
set(handles.edit1, 'string',n);
global fai;
fai = get(hObject,'Value');
set(handles.edit2, 'string',fai);
改滑动块最大值最小值:
运行验证:
三、 鼠标右击Callback edit1\edit2 ,分别添加代码:
global n;
n=str2double(get(hObject,'string'));
global fai;
fai=str2double(get(hObject,'string'));
如图:
四、 鼠标右击Callback run按钮 ,添加代码:
global n;
global fai;
t=0:0.001:10;
x=sin(t);
y=sin(n*t+fai);
axes(handles.axes1);
grid on;axis equal;
plot(x,y);
我们希望拉滑动块时也能实时响应,所以在滑动块callback后加上:
pushbutton1_Callback(hObject, eventdata, handles) %调用按键函数