2012-04-23 19 views
0

我需要创建一个七边形。我想通过创建一个三角形来完成此操作,然后在旋转它之后再循环绘制它。在MATLAB中创建七边形

x1 = [ 0.5, 0.48, 0.55 ]; 
y1 = [ 0.5, 0.578, 0.558 ]; 
fill(x1, y1, 'w') 

这给了我第一个三角形,但是我想通过它来想出一个办法来循环,每一次(我假设由51.43度,七边形)旋转。

回答

0

你想要一个rotation matrix。我尝试这样做:

t = pi/3.5; 
R = [cos(t) sin(t); -sin(t) cos(t)]; 
c = [0 1 cos(t); 0 0 sin(t)]; 
hold on; 
for i=1:7 
    fill(c(1, :), c(2, :), 'w'); 
    c = R * c; 
end 

[R绕原点旋转 - 所以,如果你想在(0.5,0.5)为中心,那么你需要通过量绘制之前翻译℃。我改变了你的起点坐标,使它们成为一个从(0,0)开始并沿着x轴一个边的三角形。