用代码画爱心:多种编程语言示例
您想用哪种编程语言来实现爱心代码呢?
Python
import turtle
turtle.speed(0)
turtle.hideturtle()
turtle.penup()
turtle.goto(-100, 0)
turtle.pendown()
for i in range(144):
turtle.forward(1)
turtle.right(1.25)
turtle.penup()
turtle.goto(100, 0)
turtle.pendown()
for i in range(144):
turtle.forward(1)
turtle.left(1.25)
turtle.done()
JavaScript (HTML Canvas)
<!DOCTYPE html>
<html>
<head>
<title>爱心代码</title>
</head>
<body>
<canvas id='myCanvas' width='300' height='300'></canvas>
<script>
var canvas = document.getElementById('myCanvas');
var ctx = canvas.getContext('2d');
ctx.beginPath();
ctx.moveTo(75, 40);
ctx.bezierCurveTo(75, 37, 70, 25, 50, 25);
ctx.bezierCurveTo(20, 25, 20, 62.5, 20, 62.5);
ctx.bezierCurveTo(20, 80, 40, 102, 75, 120);
ctx.bezierCurveTo(110, 102, 130, 80, 130, 62.5);
ctx.bezierCurveTo(130, 62.5, 130, 25, 100, 25);
ctx.bezierCurveTo(80, 25, 75, 37, 75, 40);
ctx.fill();
</script>
</body>
</html>
C#
using System.Drawing;
using System.Drawing.Drawing2D;
namespace DrawHeart
{
class Program
{
static void Main(string[] args)
{
Bitmap bmp = new Bitmap(300, 300);
Graphics g = Graphics.FromImage(bmp);
g.SmoothingMode = SmoothingMode.AntiAlias;
// 创建路径
GraphicsPath path = new GraphicsPath();
path.AddBezier(new Point(75, 40), new Point(75, 37), new Point(70, 25), new Point(50, 25));
path.AddBezier(new Point(20, 25), new Point(20, 62.5), new Point(20, 62.5), new Point(20, 80));
path.AddBezier(new Point(20, 80), new Point(40, 102), new Point(75, 120), new Point(110, 102));
path.AddBezier(new Point(110, 102), new Point(130, 80), new Point(130, 62.5), new Point(130, 62.5));
path.AddBezier(new Point(130, 62.5), new Point(130, 25), new Point(100, 25), new Point(80, 25));
path.AddBezier(new Point(80, 25), new Point(75, 37), new Point(75, 40), new Point(75, 40));
// 填充颜色
g.FillPath(Brushes.Red, path);
bmp.Save("heart.png");
}
}
}
更多语言示例
您可以使用其他编程语言来实现爱心代码,例如:
- Java
- C++
- Ruby
- Swift
请告诉我您想使用哪种语言,我将为您提供相应的代码示例。
原文地址: https://www.cveoy.top/t/topic/lQ35 著作权归作者所有。请勿转载和采集!