日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

matlab画心形曲线_笛卡尔心形曲线方程(MathWorks)

發(fā)布時間:2023/12/15 综合教程 37 生活家
生活随笔 收集整理的這篇文章主要介紹了 matlab画心形曲线_笛卡尔心形曲线方程(MathWorks) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Jetbrains全系列IDE穩(wěn)定放心使用

MATLAB 心形曲線


基本知識

clc;指令可以清除屏幕,所以你可以通過clc指令來清理屏幕

clc

hold on;指令可以將畫的圖連起來

hold on

clear;清除之前所留的定義

clear

笛卡爾愛心曲線

ezpolar('1-sin(t)')

a=1;
theta = 0 : 0.01 : 2 * pi;
r = a*(1 - sin(theta));
polar(theta, r, '-r');

特別定制


第一種實現(xiàn)方式

clear
t=-pi:pi/100:pi;

r=abs(t);
x=r.*sin(t);
y=r.*cos(t);
plot(x,y)
title('I love you.')
axis equal

方法二:grid on可以加上網(wǎng)格,可以通過刪除下面代碼中的grid on刪除表格

clear
x=-2:0.01:2;
y=sqrt(2*sqrt(x.^2)-x.^2);
z=asin(abs(x)-1)-pi./2;plot(x,y);
grid on;
hold on;
plot(x,z);
axis equal;

fill語句填色

clear
x=-2:0.01:2;
y=sqrt(2*sqrt(x.^2)-x.^2);
z=asin(abs(x)-1)-pi./2;plot(x,y);
grid on;
hold on;
plot(x,z);
axis equal;
fill(x,y,'r')
fill(x,z,'r')

方案3

t=0:0.1:2*pi;
x=16*sin(t).^3;
y=13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t);
figure;
axis([-10,10,-10,10]);
plot(x,y)

axis off 可以關(guān)閉坐標軸,進行動態(tài)繪圖

clear
t=0:0.1:2*pi;
x=16*sin(t).^3;
y=13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t);
figure;
h = plot(x(1),y(1),'r');
axis([-20,20,-20,20]);
axis off

for idx = 2:length(t)
    h.XData(idx) = x(idx);
    h.YData(idx) = y(idx);
    drawnow
end

如果你需要保存到本地的話,你需要進一步添加imwrite保存到本地,delayTime延時畫圖

clear
t=0:0.1:2*pi;
x=16*sin(t).^3;
y=13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t);
figure;
h = plot(x(1),y(1),'r');
axis([-20,20,-20,20]);
axis off
[A,map] = rgb2ind(frame2im(getframe),256);
imwrite(A,map,'love.gif','LoopCount',inf,'DelayTime',0.1);
for idx = 2:length(t)
    h.XData(idx) = x(idx);
    h.YData(idx) = y(idx);
    drawnow
%這兩句話是為了在本地保存的圖片也能顯示出來,保存地址默認
    [A,map] = rgb2ind(frame2im(getframe),256);
    imwrite(A,map,'love.gif','WriteMode','append','DelayTime',0.1);  
end

最終實現(xiàn)版本


進一步動態(tài)實現(xiàn) (借用movie函數(shù))再進行本地保存改進

https://blog.csdn.net/lpsl1882/article/details/50806694?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

首先添加函數(shù)保存

function ratio=HeartRate(i,heartSpeed)
i=mod(i,heartSpeed);
if i < heartSpeed / 2
    ratio=sin( i/heartSpeed*pi);
elseif i >= heartSpeed / 2 && i < heartSpeed * 3/4
    ratio=2*cos(i/heartSpeed*2/3*pi);
else
    ratio = 0;
end

通過Movie函數(shù)進行跳動Heartbeats

clear
gcp=figure;
M=moviein(100,gcp);
heartSpeed=15;
radiusRate=3;

for i = 1:100
    
    axis([-20 20 -20 20]);
axis off
[A,map] = rgb2ind(frame2im(getframe),256);
imwrite(A,map,'1.gif','LoopCount',inf,'DelayTime',0.1);
    cla(gcp);
    x=[];
    y=[];
    
    for t = 0:0.01:2*pi
        r=(sin(t)*sqrt(abs(cos(t))))/(sin(t)+7/5)-2*sin(t)+2;
        r = radiusRate * r;
        x=[x,r*cos(t)*(0.5+0.5*HeartRate(i,heartSpeed))];
        y=[y,r*sin(t)*(0.5+0.5*HeartRate(i,heartSpeed))];
    end
    hold on;
    fill(x,y,'r');
    
    M(:,i)=getframe;
    [A,map] = rgb2ind(frame2im(getframe),256);
    imwrite(A,map,'1.gif','WriteMode','append','DelayTime',0.1);  
end
movie(M,1);

后記


既然提到heartbeats天使的跳動,自然是我們的天使(不是天降之物啦,可怕想什么呢)

這個才是正確的✔

總結(jié)

以上是生活随笔為你收集整理的matlab画心形曲线_笛卡尔心形曲线方程(MathWorks)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。