您现在的位置是:首页» 生活» 用matlab编程做的动态心形曲线,为什么心形曲线要叫心形函数

用matlab编程做的动态心形曲线,为什么心形曲线要叫心形函数

2023-10-23 18:58:45
今天小编为大家分享生活中的小常识、日常问题解答等相关内容,希望能够帮助大家。1、首先使用html定义一个画布标签。2、Js绘制画布图形3、script4、var cr=document.getElementById('cardioid');5、 var W=cr.width/2, H=cr.height/3, R=150;6、 var c=cr.getContext('2d'); var G=360, g=0, T=Math.PI*2, t=T/G;7、 c.save(); c.translate(W,

今天小编为大家分享生活中的小常识、日常问题解答等相关内容,希望能够帮助大家。

1、首先使用html定义一个画布标签。

2、Js绘制画布图形

3、script

4、var cr=document.getElementById('cardioid');

5、 var W=cr.width/2, H=cr.height/3, R=150;

6、 var c=cr.getContext('2d'); var G=360, g=0, T=Math.PI*2, t=T/G;

7、 c.save(); c.translate(W, H);c.rotate(-T/4);

8、 //c.fillStyle='red';

9、 while(g G){

10、c.save();//c.translate(W, H);c.rotate(g*t);c.beginPath();c.arc(0, -R*(1-Math.sin(++g*t)), 13, 0, 360, false);c.closePath();c.fill();c.restore();

11、 }

12、 c.restore(); g=0;

13、 (function draw(){

14、 if(g G){ c.save(); c.translate(W, H); c.rotate(-T/4 + g*t);c.fillStyle='red';c.beginPath();c.arc(0, -R*(1-Math.sin(++g*t)), 5, 0, 360, false); c.closePath(); c.fill(); c.restore();

15、 } setTimeout(draw, 1);

16、 })();

17、/script

18、绘制完整的圆心类型

19、var $id=function(n) {

20、return document.getElementById(n) || n;

21、}window.addEventListener('load', draw, false);

22、var con=$id('pad').getContext('2d');

23、con.fillStyle='#e21f27'

24、con.translate(200, 100);

25、function draw() {

26、var r=0,a=100,start=0,end=0;con.rotate(Math.PI);

27、for (var q=0; q 500; q++) {

28、start +=Math.PI * 2/500;

29、end=start + Math.PI * 2/500;

30、r=a *(1-math . sin(start));//心形极坐标表示

31、con.arc(0, 0, r, start, end, false);

32、}

33、con.fill();

34、}

35、var $id=function(n) {

36、return document.getElementById(n) || n;

37、}

38、window.addEventListener('load', draw, false);

39、var con=$id('pad').getContext('2d');

40、con.fillStyle='#e21f27'

41、con.translate(100, 100);

42、function draw() {

43、var r=0,a=20,

44、start=0,end=0;

45、con.rotate(Math.PI);

46、for (var q=0; q 1000; q++) {

47、start +=Math.PI * 2/1000;

48、end=start + Math.PI * 2/1000;

49、r=a * Math.sqrt(225/(17 - 16 * Math.sin(start) * Math.sqrt(Math.cos(start) * Math.cos(start))))

50、con.arc(0, 0, r, start, end, false);

51、}

52、con.fill();

53、}

本文到此结束,希望对大家有所帮助。

Www.yiLeen.com.CN艺莲園提供生活百科,美食,购物,旅游,房产,交通,家居,数码,科技,财经,教育,健康,娱乐,历史,汽车,生活消费门户网站

本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

联系邮箱:773537036@qq.com

标签: 曲线 代码 matlab