Итак, в моем классе «Моделирование и моделирование» учитель попросил нас использовать алгоритм для рисования многоугольника с 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 - угол поворота