地図上で移動軌跡のアニメーションを描画する方法はありますか?
24 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2018 年 5 月 7 日
編集済み: MathWorks Support Team
2018 年 5 月 7 日
地図上にGPSのデータを描画したいのですが、すべての位置を一度に描画するのではなく、どのように動いたかを見るためにアニメーションで描画したいと考えています。
どのように描画を行えばよいのでしょうか。
採用された回答
MathWorks Support Team
2018 年 5 月 7 日
編集済み: MathWorks Support Team
2018 年 5 月 7 日
R2018a の Automated Driving System Toolbox より、Web Map を使用した地図描画の機能を提供しています。
geoplayer 関数を使用して地図の描画を行い、plotRoute 関数でルートの描画、plotPosition 関数で特定の位置の座標をポイントします。
% GPS データを読み込みます
filename = 'Taipei.gpx';
p = gpxread(filename);
% geoplayer を使って地図を描画します。
player = geoplayer(mean(p.Latitude), mean(p.Longitude), 13);
% 高度に応じたルートの描画をします。高度は3段階 (low/mid/high) に分けます。
p.Elev_norm = (p.Elevation - min(p.Elevation)) / ( max(p.Elevation) - min(p.Elevation) );
idx_low = (p.Elev_norm < 0.3);
idx_mid = (p.Elev_norm >= 0.3 & p.Elev_norm < 0.5);
idx_high = (p.Elev_norm >= 0.5);
p.Elev_c(idx_low) = 'c';
p.Elev_c(idx_mid) = 'k';
p.Elev_c(idx_high) = 'r';;
plotRoute(player,p.Latitude,p.Longitude);
% アニメーションの描画をします。
for i = 1:length(p.Latitude)
plotPosition(player, p.Latitude(i), p.Longitude(i), 'Color', p.Elev_c{i});
pause(0.01)
end
0 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!