Как я могу сделать полигон с этим алгоритмом в Matlab? - PullRequest
0 голосов
/ 28 февраля 2019

Итак, в моем классе «Моделирование и моделирование» учитель попросил нас использовать алгоритм для рисования многоугольника с 7 сторонами в matlab.

Это алгоритм:

Рассмотрим вектор i сНаправление одной из сторон многоугольника и применение матрицы вращения находят другие векторы i1, i2, i3, ..., n (количество сторон) с направлением сторон многоугольника.В конце n вращений вы должны получить начальный вектор.

Кажется, я не могу этого понять.Как я мог это сделать?Матрица

res предназначена только для хранения векторных координат и последующего их построения.

Это код, который я написал:

clear all
close all

n = 7;
ang = ((n - 2) * pi) / n;
R = [cos(ang), -sin(ang); sin(ang), cos(ang)];
p = [2; 2];
v = [sqrt(2); sqrt(2)];
res = zeros(2, n);
res(:, 1) = p;

for i = 1:n + 1
    p = v + p;
    v = R * v;
    res(:, i) = v;
end

plot(res(1, :), res(2, :), '-r')
axis equal

p - начальная точка

v - вектор

R - матрица вращения

ang - угол поворота

...