、设三角形的三个顶点坐标分别为:A (0,0),B (2,1),C3.): 编写 MATLAB 序,完成以下要求:(本题共2小题,共 15分)1、在屏幕上画出上述三角形;(5分) 2、将该三角形绕顶点 A 依次旋转 90 度、180 度、270 度后,在原三角形图形窗口里,用红色画出旋转后的三个三角形。结果如图1示。(10分)说明:平面中任意一点 (x,y)绕原点逆时针转角度后,得到的新标计算公式为x2=xcos日-y sin0Y2=xsin日+ycos日(0的单位为弧度)
时间: 2024-03-10 10:46:30 浏览: 164
以下是 MATLAB 代码实现:
```matlab
% 定义三角形的三个顶点
A = [0, 0];
B = [2, 1];
C = [3, 2];
% 绘制原始三角形
figure;
fill([A(1), B(1), C(1)], [A(2), B(2), C(2)], 'b');
axis equal;
hold on;
% 将三角形绕顶点 A 依次旋转 90 度、180 度、270 度,并绘制
for i = 1:3
theta = i * pi / 2; % 计算旋转角度,单位为弧度
R = [cos(theta), -sin(theta); sin(theta), cos(theta)]; % 构造旋转矩阵
AB = B - A;
AC = C - A;
newB = R * AB' + A';
newC = R * AC' + A';
fill([A(1), newB(1), newC(1)], [A(2), newB(2), newC(2)], 'r');
end
% 添加图例
legend('原始三角形', '旋转后的三角形');
% 添加标题和坐标轴标签
title('三角形旋转示例');
xlabel('x');
ylabel('y');
```
代码首先定义了三角形的三个顶点坐标,并使用 `fill` 函数绘制了原始的三角形。然后,它使用循环将三角形分别绕顶点 A 旋转 90 度、180 度、270 度,并使用红色的填充色绘制旋转后的三角形。这里使用了上面提到的公式计算旋转后的点的坐标。最后,代码添加了图例、标题和坐标轴标签,使图形更加清晰易懂。
阅读全文
相关推荐

















