21xrx.com
2024-11-25 05:05:55 Monday
登录
文章检索 我的文章 写文章
C++制作爱心的方法
2023-07-10 16:23:46 深夜i     --     --
C++ 制作 爱心 方法

C++是一种流行的编程语言,用于开发各种类型的软件。虽然它通常用于开发应用程序和操作系统,但它也可以用于制作艺术品。其中一项很流行的艺术作品是用C++制作爱心。下面是一个简单的方法,可用于用C++编写一个爱心。

第一步是定义爱心的形状。需要定义一个椭圆以及两个半圆。椭圆会成为爱心的底部,而半圆则是爱心的顶部。代码如下:


#include <iostream>

#include <cmath>

using namespace std;

const double PI = 3.14159265358979323846;

double getElliX(int t)

{

  return 16*pow(sin(t), 3);

}

double getElliY(int t)

{

  return (13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t));

}

double getCircX(int t)

{

  return 16*pow(sin(t), 3);

}

double getCircY(int t)

{

  return (13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t))-14;

}

int main()

{

  for (int t = 0; t <= 360; t++)

  {

    if (t == 0)

    {

      cout << "M " << getElliX(t) << " " << getElliY(t) << " ";

    }

    else if (t > 0 && t < 180)

    {

      cout << "L " << getElliX(t) << " " << getElliY(t) << " ";

    }

    else if (t == 180)

    {

      cout << "L " << getElliX(t) << " " << getElliY(t) << " ";

      cout << "Q " << getCircX(t) << " " << getCircY(t) << " ";

    }

    else if (t > 180 && t < 360)

    {

      cout << "L " << getCircX(t) << " " << getCircY(t) << " ";

    }

    else

    

      cout << "Z";

    

  }

  return 0;

}

此代码将生成一个类似于下面的ASCII艺术的效果:

ascii

              ,#####,

             #_  _ #

             |a` `a| |

             | u | |

             \ = /#|

         ___   ___)=(_/ \

        ( ( \_.-'   `-.\

        \'-.\       `\

         \  `-.      |

         `.  `-._____  |

          |    ___ `-. /

      _______/ ____.' /\  /

     ,' _  /,-'~  ~  \_/ /

    //  `~/ |       /

    /'   | \___,     |

   |  ___/\ /  `\\    |

   |  /  (    |    |

   |  /   \   |    |

   |      )__/     \

    \_________/       \

第二步是将代码保存为SVG格式。SVG是可缩放矢量图形的缩写,它是一种XML文件格式,可用于显示Vector图形。使用SVG可将代码转换为可在浏览器中查看的独立艺术品。将文件保存为SVG格式,只需将文件名更改为“heart.svg”。

第三步是在浏览器中查看爱心艺术品。使用任何现代浏览器,都可以打开SVG文件并查看它。可以在文本编辑器中打开SVG文件,然后复制并粘贴以下代码:

svg

<svg viewBox="0 0 32 32" width="200" height="200">

<path fill="#FF0000" stroke="#000000" stroke-width="0.5" d="

M 0.000000 13.417878

L 2.303851 12.834541

L 4.607238 12.265123

L 6.909857 11.712158

L 9.210354 11.181156

L 11.507387 10.676632

L 13.798614 10.207068

L 16.082696 9.766919

L 18.358294 9.351585

L 20.624072 8.964099

L 22.878701 8.604258

L 25.120861 8.274755

L 27.349243 7.977820

L 29.562555 7.715225

L 31.759520 7.488180

L 32.000000 7.464893

L 32.000000 5.447990

L 30.437248 5.588228

L 28.859911 5.765515

L 27.267704 5.979941

L 25.661348 6.231121

L 24.041570 6.518270

L 22.409105 6.840185

L 20.764692 7.195285

L 19.109068 7.581594

L 17.442974 7.996857

L 15.767148 8.438608

L 14.082324 8.904351

L 12.489242 9.391603

L 10.888641 9.897871

L 9.281268 10.420691

L 7.667874 10.957626

L 6.049208 11.506324

L 4.425020 12.064535

L 2.794057 12.630622

L 1.157068 13.203302

L 0.000000 13.417878

Q 0.000000 -0.008752 -2.384001 -12.932729

L -2.623443 -13.199496

Q -1.392821 -15.428441 -0.000000 -17.455573

Q 1.392821 -15.428441 2.623443 -13.199496

L 2.384001 -12.932729

Q 0.000000 -0.008752 0.000000 13.417878

Z"/>

</svg>

在浏览器中打开SVG文件,即可欣赏C++编写的爱心艺术品。

最后,C++制作爱心需要一定的编程技能,并且需要仔细定义形状。但是,使用上面的方法,即使没有太多的编程经验,也可以轻松地创建一个令人印象深刻的爱心。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复