MATLAB表白玫瑰花绘制——旋转玫瑰蓝色玫瑰

Posted 脑壳二

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB表白玫瑰花绘制——旋转玫瑰蓝色玫瑰相关的知识,希望对你有一定的参考价值。

MATLAB表白玫瑰花绘制——旋转玫瑰、蓝色玫瑰

搬运不易,路过的各位大佬请点个赞

一、旋转玫瑰花绘制

在这里插入图片描述

function drawrose2
grid on
[x,t]=meshgrid((0:24)./24,(0:0.5:575)./575.*20.*pi-4*pi);
p=(pi/2)*exp(-t./(8*pi));
change=sin(20*t)/150;
u=1-(1-mod(3.3*t,2*pi)./pi).^4./2+change;
y=2*(x.^2-x).^2.*sin(p);

r=u.*(x.*sin(p)+y.*cos(p)).*1.5;
h=u.*(x.*cos(p)-y.*sin(p));

map=[1.0000    0.6471    0.8275
    0.9984    0.6353    0.8130
    0.9969    0.6236    0.7985
    0.9953    0.6118    0.7840
    0.9937    0.6000    0.7695
    0.9921    0.5882    0.7550
    0.9906    0.5765    0.7404
    0.9890    0.5647    0.7259
    0.9874    0.5529    0.7114
    0.9859    0.5412    0.6969
    0.9843    0.5294    0.6824
    0.9757    0.5149    0.6730
    0.9670    0.5004    0.6636
    0.9584    0.4859    0.6541
    0.9498    0.4714    0.6447
    0.9411    0.4568    0.6353
    0.9325    0.4423    0.6259
    0.9239    0.4278    0.6165
    0.9153    0.4133    0.6070
    0.9066    0.3988    0.5976
    0.8980    0.3843    0.5882
    0.8937    0.3780    0.5756
    0.8894    0.3718    0.5631
    0.8851    0.3655    0.5505
    0.8808    0.3592    0.5380
    0.8764    0.3529    0.5254
    0.8721    0.3467    0.5129
    0.8678    0.3404    0.5003
    0.8635    0.3341    0.4878
    0.8592    0.3279    0.4752
    0.8549    0.3216    0.4627
    0.8561    0.3165    0.4596
    0.8573    0.3114    0.4564
    0.8584    0.3063    0.4533
    0.8596    0.3012    0.4502
    0.8608    0.2961    0.4471
    0.8620    0.2910    0.4439
    0.8632    0.2859    0.4408
    0.8643    0.2808    0.4377
    0.8655    0.2757    0.4345
    0.8667    0.2706    0.4314
    0.8549    0.2620    0.4165
    0.8432    0.2533    0.4016
    0.8314    0.2447    0.3867
    0.8196    0.2361    0.3718
    0.8078    0.2274    0.3569
    0.7961    0.2188    0.3420
    0.7843    0.2102    0.3271
    0.7725    0.2016    0.3122
    0.7608    0.1929    0.2973
    0.7490    0.1843    0.2824
    0.7553    0.1827    0.2855
    0.7616    0.1812    0.2887
    0.7678    0.1796    0.2918
    0.7741    0.1780    0.2949
    0.7804    0.1764    0.2980
    0.7867    0.1749    0.3012
    0.7930    0.1733    0.3043
    0.7992    0.1717    0.3074
    0.8055    0.1702    0.3106
    0.8118    0.1686    0.3137
    0.7977    0.1631    0.3023
    0.7836    0.1576    0.2910
    0.7694    0.1521    0.2796
    0.7553    0.1466    0.2682
    0.7412    0.1411    0.2569
    0.7271    0.1357    0.2455
    0.7130    0.1302    0.2341
    0.6988    0.1247    0.2227
    0.6847    0.1192    0.2114
    0.6706    0.1137    0.2000
    0.6686    0.1141    0.1996
    0.6667    0.1145    0.1992
    0.6647    0.1149    0.1988
    0.6628    0.1153    0.1984
    0.6608    0.1157    0.1981
    0.6588    0.1160    0.1977
    0.6569    0.1164    0.1973
    0.6549    0.1168    0.1969
    0.6530    0.1172    0.1965
    0.6510    0.1176    0.1961];
set(gca,'CameraPosition',[2 2 2])
hold on
Xset=r.*cos(t);Yset=r.*sin(t);
sf=surface(Xset,Yset,h,'EdgeAlpha',0.1,...
    'EdgeColor',[0.5 0.5 0.5],'FaceColor','interp');
colormap(map)


theta=0;
while 1
    theta=theta+0.02;
    set(sf,'XData',Xset.*cos(theta)-Yset.*sin(theta),...
        'YData',Xset.*sin(theta)+Yset.*cos(theta))
    pause(0.01)
end


end


二、蓝色玫瑰花绘制

在这里插入图片描述

function drawrose
grid on
[x,t]=meshgrid((0:24)./24,(0:0.5:575)./575.*20.*pi+4*pi);
p=(pi/2)*exp(-t./(8*pi));
change=sin(15*t)/150;
u=1-(1-mod(3.6*t,2*pi)./pi).^4./2+change;
y=2*(x.^2-x).^2.*sin(p);

r=u.*(x.*sin(p)+y.*cos(p));
h=u.*(x.*cos(p)-y.*sin(p));

map=[0.9176    0.9412    1.0000
    0.9094    0.9341    0.9992
    0.9011    0.9271    0.9984
    0.8929    0.9200    0.9977
    0.8847    0.9130    0.9969
    0.8764    0.9059    0.9961
    0.8682    0.8988    0.9953
    0.8600    0.8918    0.9945
    0.8518    0.8847    0.9938
    0.8435    0.8777    0.9930
    0.8353    0.8706    0.9922
    0.8337    0.8698    0.9910
    0.8322    0.8690    0.9898
    0.8306    0.8682    0.9887
    0.8290    0.8674    0.9875
    0.8275    0.8667    0.9863
    0.8259    0.8659    0.9851
    0.8243    0.8651    0.9839
    0.8227    0.8643    0.9828
    0.8212    0.8635    0.9816
    0.8196    0.8627    0.9804
    0.8078    0.8521    0.9765
    0.7961    0.8415    0.9726
    0.7843    0.8310    0.9686
    0.7726    0.8204    0.9647
    0.7608    0.8098    0.9608
    0.7490    0.7992    0.9569
    0.7373    0.7886    0.9530
    0.7255    0.7781    0.9490
    0.7138    0.7675    0.9451
    0.7020    0.7569    0.9412
    0.6836    0.7400    0.9396
    0.6651    0.7232    0.9381
    0.6467    0.7063    0.9365
    0.6282    0.6894    0.9349
    0.6098    0.6725    0.9334
    0.5914    0.6557    0.9318
    0.5729    0.6388    0.9302
    0.5545    0.6219    0.9286
    0.5360    0.6051    0.9271
    0.5176    0.5882    0.9255
    0.5027    0.5776    0.9271
    0.4878    0.5670    0.9286
    0.4729    0.5565    0.9302
    0.4580    0.5459    0.9318
    0.4431    0.5353    0.9334
    0.4282    0.5247    0.9349
    0.4133    0.5141    0.9365
    0.3984    0.5036    0.9381
    0.3835    0.4930    0.9396
    0.3686    0.4824    0.9412
    0.3623    0.4742    0.9404
    0.3561    0.4659    0.9396
    0.3498    0.4577    0.9388
    0.3435    0.4494    0.9380
    0.3372    0.4412    0.9373
    0.3310    0.4330    0.9365
    0.3247    0.4247    0.9357
    0.3184    0.4165    0.9349
    0.3122    0.4082    0.9341
    0.3059    0.4000    0.9333
    0.2981    0.3918    0.9235
    0.2902    0.3835    0.9137
    0.2824    0.3753    0.9039
    0.2745    0.3670    0.8941
    0.2667    0.3588    0.8843
    0.2589    0.3506    0.8745
    0.2510    0.3423    0.8647
    0.2432    0.3341    0.8549
    0.2353    0.3258    0.8451
    0.2275    0.3176    0.8353
    0.2169    0.3086    0.8165
    0.2063    0.2996    0.7977
    0.1957    0.2906    0.7788
    0.1851    0.2816    0.7600
    0.1746    0.2726    0.7412
    0.1640    0.2635    0.7224
    0.1534    0.2545    0.7036
    0.1428    0.2455    0.6847
    0.1322    0.2365    0.6659
    0.1216    0.2275    0.6471];
set(gca,'CameraPosition',[2 2 2])
hold on
surface(r.*cos(t),r.*sin(t),h,'EdgeAlpha',0.1,...
    'EdgeColor',[0 0 0],'FaceColor','interp')
colormap(map)

end

三、粉色玫瑰花绘制

在这里插入图片描述

function drawrose2
grid on
[x,t]=meshgrid((0:24)./24,(0:0.5:575)./575.*20.*pi-4*pi);
p=(pi/2)*exp(-t./(8*pi));
change=sin(20*t)/150;
u=1-(1-mod(3.3*t,2*pi)./pi).^4./2+change;
y=2*(x.^2-x).^2.*sin(p);

r=u.*(x.*sin(p)+y.*cos(p)).*1.5;
h=u.*(x.*cos(p)-y.*sin(p));

map=[0.9176    0.7490    0.3765
    0.9188    0.7513    0.3879
    0.9200    0.7537    0.3992
    0.9211    0.7560    0.4106
    0.9223    0.7584    0.4220
    0.9235    0.7608    0.4334
    0.9247    0.7631    0.4447
    0.9259    0.7654    0.4561
    0.9270    0.7678    0.4675
    0.9282    0.7702    0.4788
    0.9294    0.7725    0.4902
    0.9298    0.7698    0.5008
    0.9302    0.7670    0.5114
    0.9306    0.7643    0.5220
    0.9310    0.7615    0.5326
    0.9314    0.7588    0.5432
    0.9317    0.7561    0.5537
    0.9321    0.7533    0.5643
    0.9325    0.7506    0.5749
    0.9329    0.7478    0.5855
    0.9333    0.7451    0.5961
    0.9290    0.7404    0.5894
    0.9247    0.7357    0.5828
    0.9204    0.7310    0.5761
    0.9161    0.7263    0.5694
    0.9118    0.7215    0.5627
    0.9074    0.7168    0.5561
    0.9031    0.7121    0.5494
    0.8988    0.7074    0.5427
    0.8945    0.7027    0.5361
    0.8902    0.6980    0.5294
    0.8890    0.6976    0.5388
    0.8878    0.6972    0.5482
    0.8867    0.6968    0.5576
    0.8855    0.6964    0.5670
    0.8843    0.6961    0.5765
    0.8831    0.6957    0.5859
    0.8819    0.6953    0.5953
    0.8808    0.6949    0.6047
    0.8796    0.6945    0.6141
    0.8784    0.6941    0.6235
    0.8827    0.6988    0.6364
    0.8870    0.7035    0.6494
    0.8914    0.7082    0.6623
    0.8957    0.7129    0.6753
    0.9000    0.7177    0.6882
    0.9043    0.7224    0.7011
    0.9086    0.7271    0.7141
    0.9130    0.7318    0.7270
    0.9173    0.7365    0.7400
    0.9216    0.7412    0.7529
    0.9153    0.7275    0.7545
    0.9090    0.7137    0.7560
    0.9028    0.7000    0.7576
    0.8965    0.6863    0.7592
    0.8902    0.6725    0.7608
    0.8839    0.6588    0.7623
    0.8776    0.6451    0.7639
    0.8714    0.6314    0.7655
    0.8651    0.6176    0.7670
    0.8588    0.6039    0.7686
    0.8580    0.5906    0.7557
    0.8572    0.5772    0.7427
    0.8565    0.5639    0.7298
    0.8557    0.5506    0.7168
    0.8549    0.5373    0.7039
    0.8541    0.5239    0.6910
    0.8533    0.5106    0.6780
    0.8526    0.4973    0.6651
    0.8518    0.4839    0.6521
    0.8510    0.4706    0.6392
    0.8420    0.4447    0.6110
    0.8330    0.4188    0.5827
    0.8239    0.3930    0.5545
    0.8149    0.3671    0.5263
    0.8059    0.3412    0.4980
    0.7969    0.3153    0.4698
    0.7879    0.2894    0.4416
    0.7788    0.2636    0.4134
    0.7698    0.2377    0.3851
    0.7608    0.2118    0.3569];
set(gca,'CameraPosition',[2 2 2])
hold on
surface(r.*cos(t),r.*sin(t),h,'EdgeAlpha',0.1,...
    'EdgeColor',[0.5 0.5 0.5],'FaceColor','interp')
colormap(map)

end

四、旋转蓝色玫瑰花

在这里插入图片描述

function drawrose2
grid on
[x,t]=meshgrid((0:24)./24,(0:0.5:575)./575.*20.*pi-4*pi);
p=(pi/2)*exp(-t./(8*pi));
change=sin(20*t)/150;
u=1-(1-mod(3.3*t,2*pi)./pi).^4./2+change;
y=2*(x.^2-x).^2.*sin(p);

r=u.*(x.*sin(p)+y.*cos(p)).*1.5;
h=u.*(x.*cos(p)-y.*sin(p));

map=[0.9176    0.9412    1.0000
    0.9094    0.9341    0.9992
    0.9011    0.9271    0.9984
    0.8929    0.9200    0.9977
    0.8847    0.9130    0.9969
    0.8764    0.9059    0.9961
    0.8682    0.8988    0.9953
    0.8600    0.8918    0.9945
    0.8518    0.8847    0.9938
    0.8435    0.8777    0.9930
    0.8353    0.8706    0.9922
    0.8337    0.8698    0.9910
    0.8322    0.8690    0.9898
    0.8306    0.8682    0.9887
    0.8290    0.8674    0.9875
    0.8275    0.8667    0.9863
    0.8259    0.8659    0.9851
    0.8243    0.8651    0.9839
    0.8227    0.8643    0.9828
    0.8212    0.8635    0.9816
    0.8196    0.8627    0.9804
    0.8078    0.8521    0.9765
    0.7961    0.8415    0.9726
    0.7843    0.8310    0.9686
    0.7726    0.8204    0.9647
    0.7608    0.8098    0.9608
    0.7490    0.7992    0.9569
    0.7373    0.7886    0.9530
    0.7255    0.7781    0.9490
    0.7138    0.7675    0.9451
    0.7020    0.7569    0.9412
    0.6836    0.7400    0.9396
    0.6651    0.7232    0.9381
    0.6467    0.7063    0.9365
    0.6282    0.6894    0.9349
    0.6098    0.6725    0.9334
    0.5914    0.6557    0.9318
    0.5729    0.6388    0.9302
    0.5545    0.6219    0.9286
    0.5360    0.6051    0.9271
    0.5176    0.5882    0.9255
    0.5027    0.5776    0.9271
    0.4878    0.5670    0.9286
    0.4729    0.5565    0.9302
    0.4580    0.5459    0.9318
    0.4431    0.5353    0.9334
    0.4282    0.5247    0.9349
    0.4133    0.5141    0.9365
    0.3984    0.5036    0.9381
    0.3835    0.4930    0.9396
    0.3686    0.4824    0.9412
    0.3623    0.4742    0.9404
    0.3561    0.4659    0.9396
    0.3498    0.4577    0.9388
    0.3435    0.4494    0.9380
    0.3372    0.4412    0.9373
    0.3310    0.4330    0.9365
    0.3247    0.4247    0.9357
    0.3184    0.4165    0.9349
    0.3122    0.4082    0.9341
    0.3059    0.4000    0.9333
    0.2981    0.3918    0.9235
    0.2902    0.3835    0.9137
    0.2824    0.3753    0.9039
    0.2745    0.3670    0.8941
    0.2667    0.3588    0.8843
    0.2589    0.3506    0.8745
    0.2510    0.3423    0.8647
    0.2432    0.3341    0.8549
    以上是关于MATLAB表白玫瑰花绘制——旋转玫瑰蓝色玫瑰的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB 3D玫瑰花绘制(内附旋转版本)

python表白玫瑰花绘制——情人节表白

python表白玫瑰花绘制——情人节表白

520还在画玫瑰?教你用MATLAB画个玫瑰花球

520还在画玫瑰?教你用MATLAB画个玫瑰花球

520还在画玫瑰?教你用MATLAB画个玫瑰花球