MATLAB Answers

How to keep equal distancing between markers while moving??

2 views (last 30 days)
MSolano
MSolano on 10 Jun 2021
Commented: MSolano on 11 Jun 2021
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!
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

Accepted Answer

SALAH ALRABEEI
SALAH ALRABEEI on 11 Jun 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

More Answers (0)

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by