How to rotate a fixed length Line about a perimeter of a circle

3 vues (au cours des 30 derniers jours)
S
S le 14 Sep 2020
Commenté : S le 15 Sep 2020
I am new to coding matlab.
I wish to code the above situation as shown in to picture where a fixed length line(or tangent) is rotated inside a large grid in a circular manner with fixed radius and the center is chosen same as the large grid.
Any suggestion - how can I proceed to code above situation ?
Thank you.
  2 commentaires
Matt J
Matt J le 14 Sep 2020
What would be the input and output of such code?
S
S le 15 Sep 2020
I am trying to learn how to use the rotation matrix formula for different situations.

Connectez-vous pour commenter.

Réponse acceptée

Image Analyst
Image Analyst le 14 Sep 2020
It's simple geometry. Just pick a radius, then go from 0 to 2*pi, or whatever angles you want. The slope is
angle = linspace(0, 2*pi, 360);
y = radius * sind(angle);
x = radius * cosd(angle);
slope = atand(y/x);
The slope of the perpendicular to that point is -1/slope. Now pick a new radius that is the length of the little line segment you want to create and create new x,y values (xr, yr) using the above formulas. These will be relative to the origin. Then add the original x,y to move that line segment from the origin to the (x,y) point out at the circle perimeter. It sounds like homework so that's why I'm not providing a full solution but it's pretty easy now that I've explained it and you'll have no problem finishing it.
  1 commentaire
S
S le 15 Sep 2020
Thanks you very much for the suggestion. I will follow it. :-)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Graphics Object Programming 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!

Translated by