% 定义正方体的边长和螺旋参数
side_length = 1; % 正方体边长
turns = 2; % 螺旋的圈数
steps_per_turn = 100; % 每圈的步数
theta = linspace(0, turns*2*pi, turns * steps_per_turn); % 角度范围
radius = linspace(0, side_length/2, turns * steps_per_turn)'; % 半径变化,从中心到边长一半
x = radius .* cos(theta);
y = radius .* sin(theta);
z = (theta / (2*pi)) * side_length; % 螺旋高度与角度成比例
% 确保坐标位于正方体内
x(x > side_length/2) = side_length/2;
y(y > side_length/2) = side_length/2;
z(z > side_length) = side_length;
% 绘制三维螺旋线
figure;
plot3(x, y, z, 'LineWidth', 2, 'Color', 'r');
axis equal; % 保持轴的比例一致
xlim([-side_length/2 side_length/2]);
ylim([-side_length/2 side_length/2]);
zlim([0 side_length]);
grid on;
xlabel('X');
ylabel('Y');
zlabel('Z');
title('正方体内的螺旋图');
% 若要更精细地控制螺旋线贴合正方体边缘,可能需要对每个点进行判断并调整坐标值
开发工具:MATLAB 2022b
微信Alt+A截屏工具