How to keep equal distancing between markers while moving??
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi, how can I keep equal distancing (angles) between markers while moving so that they move at he same speed (f=0.5)?
Thank you!
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/649295/image.png)
clear
clc
figure
n= 10; % Number of points
f = 0.5 ; % frequency
r = 2 ; % Ratio
theta= linspace(0,360,n+1);
pp = plot(NaN,NaN,'o') ;
axis(1.1*[-r r -r r]) ;
axis square
tic
while(toc < 10)
t = toc ;
pp.XData = [r*cosd(theta*f*t)] ;
pp.YData = [r*sind(theta*f*t)] ;
drawnow
end
0 commentaires
Réponse acceptée
SALAH ALRABEEI
le 11 Juin 2021
Since you are in a periodic space, scaling the angle will not preserve the distance, you should use addition ( translate the angle)
pp.XData = [r*cosd(theta + f*t)] ;
pp.YData = [r*sind(theta + f*t)] ;
It will be too slow, but you can make it faster by scaling the the frequency 1*45 ( pi/4) or 90 ( pi/2). As you want
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Graphics Performance dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!