我正在尝试使用matlab kml工具箱设置动画。 我可以设置它,使风力涡轮机模型随着时间的推移而旋转。 我的问题是我正在尝试更新也嵌入谷歌地球的等高线图随时间更新。我的代码看起来像;
time=0:0.05:3;
dT=time(2)-time(1);
s = kml('turbinanim');
f = s.createFolder(['FreqSHeight']);
Lptemp=rand(size(Long))*100;
modelbl=s.model(longitude(i,1),latitude(i,1),altitude(i,1),yaw(i,1),tilt(i,1),roll(i,1),''model'',''C:\Users\ebarlas\Desktop\ge_tu\files\Blades0.dae')
anim = s.newAnimation('3TurbineMat');
for i=2:length(time)
anim.updateOrientation(modelbl,dT,yaw(i),tilt(i),roll(1))'])
anim.flyToLookAt(dT, -8.813385+i*3e-5, 41.751632+i*1e-4, 450,'relativeToGround',10,80)
%% f.contourf(Long,Latti,Lptemp,'transparency',0.6,'numberOfLevels', [0:20:100]);
end
任何想法如何使f.contourf依赖于时间
答案 0 :(得分:0)
我想我认为这就是代码在Google地球上使用等高线图进行时间依赖动画的方式。
time=0:0.05:3;
dT=time(2)-time(1);
s = kml('turbinanim');
modelbl=s.model(longitude(i,1),latitude(i,1),altitude(i,1),yaw(i,1),tilt(i,1),roll(i,1),''model'',''C:\Users\ebarlas\Desktop\ge_tu\files\Blades0.dae')
anim = s.newAnimation('3TurbineMat');
for i=2:length(time)
Lptemp=rand(size(Long))*100;
anim.updateOrientation(modelbl,dT,yaw(i),tilt(i),roll(1))'])
anim.flyToLookAt(dT, -8.813385+i*3e-5, 41.751632+i*1e-4, 450,'relativeToGround',10,80)
tbegin=[num2str(1900+i*4),'-01-28T02:02:10Z'];
tend=[num2str(1900+(i+1)*4),'-01-28T02:02:10Z'];
f = s.createFolder(['FreqSHeight',num2str(i)]);
f.contourf(Long,Latti,Lptemp,'transparency',0.6,'numberOfLevels',[0:20:100],'timeSpanBegin',tbegin,'timeSpanEnd',tend);
end
s.run;