How can I add a point to an animation?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to add the point b3 to the animation so that every in the end every b3 is in the animation
r =0;
s= 2;
z = [15, 0; 7, 10; 3, 4; 3, 6];
axis(gca, 'equal');
axis([0 16 0 20]);
k = 1;
for t = r:0.01:s
...
b3 = (1 - lambda ) * b2(1,:) + lambda * b2(2, :);
i
crank1 = line(z(:,1), z(:,2));
crank2 = line(b1(:,1), b1(:,2));
crank3 = line(b2(:,1), b2(:,2));
crank4 = line(b3(1), b3(2));
pause(0.1);
delete(crank1);
delete(crank2);
delete(crank3);
delete(crank4);
end
x = b3;
end
1 commentaire
Réponses (2)
Sayyed Ahmad
le 27 Juin 2018
you need to add in your code
hold on
otherweise you create every time a new graph and your point is not exist anymore.
0 commentaires
Sammit Jain
le 27 Juin 2018
Hi, since the exact context of the code isn't clear, I'm making the following assumptions:
- You're probably trying to simulate/animate some form of a crank-slider mechanism.
- You're opening a figure window and plotting these lines continuously. These coordinates are updated in a for loop
- b3 is one point represented as [x,y]. (From the code it looks like it's a weighted average based on lambda)
In this case, your question boils down to representing a single point in a plot window. Now since you're animating, a simple way for you to do this is to use the 'viscircles' command. This will allow you to make an approximate representation of a point with a tiny circle.
With this you can make a visual representation of the ‘point’ by centering a circle on the x,y coordinates for the point (which are stored in b3), with a small radius. The circle will be drawn using the afore-mentioned viscircles command. You will have to choose a radius according to the scale of your animation.
Hope this helps.
0 commentaires
Voir également
Catégories
En savoir plus sur Animation 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!