文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

2023-10-07 22:18

关注

活动地址:CSDN21天学习挑战赛

用代码写出浪漫合集(爱心、玫瑰花)

     

本文目录:

​一、前言

二、用python、matplotlib、Matlab、java绘制爱心

(1)爱心图形1(弧线型)(显示的文字写在代码里)

(2)爱心图形2(直线型)(显示的文字写在代码里)

(3)爱心图形3(弧线型)(通过输入方式显示文字)

(4)用python绘制爱心树

(5)用matplotlib绘制一颗2D的红心

(6)三维爱心

(7)Matlab 3D心形代码

(8)双心(java)

(9)C语言动态爱心代码

(10)、Python《点燃我温暖你》李峋爱心代码

三、用python、java字符画绘制爱心 

(1)一行代码画爱心

(2)用字符输出 I 爱 U (2种形式)

(3)输出五个爱心,由Dear I love you forever! 五个单词填充而成

(4).java 实现 ❤

四、绘制玫瑰花

 (1)、6种python玫瑰花绘图源码(立体多层玫瑰、红玫瑰)

(2)、前端canvas玫瑰花

五、前端特效爱心

(1)前端 CSS "I Love You "爱心效果

(2)各国语言“爱”字组成爱心效果

(3)上升爱心效果

(4)变幻爱心

(5)红心下落动画

 (6)《点燃我温暖你》中李峋的爱心代码

六、特色推荐


​一、前言

  有缘遇到真心对你好的人不容易,像父母、朋友、真爱你的人,如果遇到了,请好好珍惜,因为有时,有些你想象不到的事情会突然发生,如果遇到了,请别慌乱害怕,那些真心对你的人会陪在你身边和你一起度过最难熬的日子,所以请抓住每一分每一秒,好好对待身边人,凡事别计较太多,把心放宽。在你遇到。。。时,请记住,你并不是唯一一个,这世界上有很多人正在经历着和你一样的事情,虽然他们没有或者无法说出来。

  命始于缘分,爱忠于坚守,情长于陪伴,珍惜每一次相识,珍惜每一分温暖,生活细细品味,真情慢慢体会,不枉此生。

  这里搜集了一些爱心和玫瑰花的代码,供大家学习参考。代码版权属原作者。

二、用python、matplotlib、Matlab、java绘制爱心

python 绘制爱心图片索引:

8、最先复现李峋爱心代码的作者9、跳动爱心10、爱心

粒子组成爱心,中间加字

粒子组成爱心

粒子组成爱心

1、(弧线型)(显示文字)

(直线型)(显示文字)

(弧线型)(输入显示文字)

4、爱心树

python字符画爱心

(1)一行代码画爱心(2)用字符输出 I 爱 U (2种形式)(2)用字符输出 I 爱 U (2种形式)

(3)输出五个爱心(Dear I love you forever! )五个单词填充而成(4)爱心(5)爱心

因数量增加,页面篇幅太长,python 绘制的爱心将更新至此新页面,想查看python爱心绘图的请点击以下链接:

python爱心源代码集锦

(1)爱心图形1(弧线型)(显示的文字写在代码里)

转载地址:https://blog.csdn.net/qq_55342245/article/details/120904578

import turtleimport timedef LittleHeart():    for i in range(200):        turtle.right(1)        turtle.forward(2)# love = input('请输入表白语句,然后回车,默认为"I Love You":\n')# me = input('请输入要表白的人:\n')# if love=='':# # 如果未输入表白语句,则使用默认语句#     love='I Love you'love='I Love you'me = '卧槽,这年轻人。'turtle.setup(width=900,height=600)  # 爱心的画布的大小turtle.color('red','red')          # 爱心的颜色及外边笔的颜色turtle.pensize(5)                   # 画笔的粗细turtle.speed(1000000)               # 绘制速度turtle.up()                         # 画笔向上turtle.hideturtle()turtle.goto(0,-180)turtle.showturtle()turtle.down()turtle.speed(5)turtle.begin_fill()# 开始填充turtle.left(140)turtle.forward(224)LittleHeart()turtle.left(120)LittleHeart()turtle.forward(224)turtle.end_fill()turtle.pensize(5)turtle.up()turtle.hideturtle()turtle.goto(0,0)turtle.showturtle()turtle.color('#CD5C5C','pink')turtle.write(love,font=('gungsuh',30,),align="center")turtle.up()turtle.hideturtle()if me !='':    turtle.color('black', 'pink')    time.sleep(2)    turtle.goto(180,-180)    turtle.showturtle()    turtle.write(me, font=(20,), align="center", move=True)    window=turtle.Screen()    window.exitonclick()


 

(2)爱心图形2(直线型)(显示的文字写在代码里)

转载地址:https://blog.csdn.net/qq_55342245/article/details/120904578

import turtleimport mathturtle.pen()t=turtlet.up()t.goto(0,150)t.down()t.color('red')t.begin_fill()t.fillcolor('red')t.speed(1)t.left(45)t.forward(150)t.right(45)t.forward(100)t.right(45)t.forward(100)t.right(45)t.forward(100)t.right(45)t.forward(250+math.sqrt(2)*100)t.right (90)t.speed(2)t.forward(250+100*math.sqrt(2))t.right(45)t.forward(100)t.right(45)t.forward(100)t.right(45)t.forward(100)t.right(45)t.forward(150)t.end_fill()t.goto(-10,0)t.pencolor('white')# Lt.pensize(10)t.goto(-50,0)t.goto(-50,80)t.up ()# It.goto(-100,0)t.down()t.goto(-160,0)t.goto(-130,0)t.goto(-130,80)t.goto(-160,80)t.goto(-100,80)t.up()# Ot.goto(10,25)t.down()t.right(45)t.circle(25,extent=180)t.goto(60,55)t.circle(25,extent=180)t.goto(10,25)t.up()t.goto(75,80)t.down()t.goto(100,0)t.goto(125,80)t.up()t.goto(180,80)t.down()t.goto(140,80)t.goto(140,0)t.goto(180,0)t.up()t.goto(180,40)t.down()t.goto(140,40)# Ut.up()t.goto(-40,-30)t.down()t.goto(-40,-80)t.circle(40,extent=180)t.goto(40,-30)t.hideturtle()window=turtle.Screen()window.exitonclick()

(3)爱心图形3(弧线型)(通过输入方式显示文字)

请输入表白语句,然后回车,(例如"I Love You"):

请输入要表白的人(例如"李思思"):

转载地址:https://changxin.blog.csdn.net/article/details/109842795 

# coding: utf-8 import turtleimport timedef LittleHeart():    for i in range(200):        turtle.right(1)        turtle.forward(2)love=input('请输入表白语句,然后回车,(例如"I Love You"):\n')me=input('请输入要表白的人(例如"李思思"):\n')if love=='':                        love='I Love you'turtle.setup(width=900,height=600)turtle.color('red','pink')turtle.pensize(15)turtle.speed(1000)turtle.up()turtle.hideturtle()turtle.goto(0,-180)turtle.showturtle()turtle.down()turtle.speed(500)turtle.begin_fill()turtle.left(140)turtle.forward(224)LittleHeart()turtle.left(120)LittleHeart()turtle.forward(224)turtle.end_fill()turtle.pensize(12)turtle.up()turtle.hideturtle()turtle.goto(0,-20)turtle.showturtle()turtle.color('#CD5C5C','pink')turtle.write(love,font=('gungsuh',50,),align="center")turtle.up()turtle.hideturtle()if me !='':    turtle.color('black', 'pink')    time.sleep(1)turtle.goto(180,-180)turtle.showturtle()turtle.write(me, font=(20,25), align="center", move=True)window=turtle.Screen()window.exitonclick()

(4)用python绘制爱心树

转载地址:https://blog.csdn.net/qq_55342245/article/details/120904578

import turtleimport randomdef love(x, y):         # 在(x,y)处画爱心lalala    lv = turtle.Turtle()    lv.hideturtle()    lv.up()    lv.goto(x, y)       # 定位到(x,y)    def curvemove():    # 画圆弧        for i in range(20):            lv.right(10)            lv.forward(2)    lv.color('red', 'pink')    lv.speed(10000000)    lv.pensize(1)    # 开始画爱心lalala    lv.down()    lv.begin_fill()    lv.left(140)    lv.forward(22)    curvemove()    lv.left(120)    curvemove()    lv.forward(22)    lv.write("YZ", font=("Arial", 12, "normal"), align="center")  # 写上表白的人的名字    lv.left(140)  # 画完复位    lv.end_fill()def tree(branchLen, t):    if branchLen > 5:       # 剩余树枝太少要结束递归        if branchLen < 20:  # 如果树枝剩余长度较短则变绿            t.color("green")            t.pensize(random.uniform((branchLen + 5) / 4 - 2, (branchLen + 6) / 4 + 5))            t.down()            t.forward(branchLen)            love(t.xcor(), t.ycor())  # 传输现在turtle的坐标            t.up()            t.backward(branchLen)            t.color("brown")            return        t.pensize(random.uniform((branchLen + 5) / 4 - 2, (branchLen + 6) / 4 + 5))        t.down()        t.forward(branchLen)        # 以下递归        ang = random.uniform(15, 45)        t.right(ang)        tree(branchLen - random.uniform(12, 16), t)  # 随机决定减小长度        t.left(2 * ang)        tree(branchLen - random.uniform(12, 16), t)  # 随机决定减小长度        t.right(ang)        t.up()        t.backward(branchLen)myWin = turtle.Screen()t = turtle.Turtle()t.hideturtle()t.speed(1000)t.left(90)t.up()t.backward(200)t.down()t.color("brown")t.pensize(32)t.forward(60)tree(100, t)myWin.exitonclick()

(5)matplotlib绘制一颗2D的红心

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(-np.pi/2, np.pi/2, 1000)

y1 = np.power(np.cos(x),0.5) * np.cos(200*x) + np.power(np.absolute(x),0.5) - 0.7

y2 = np.power(4-np.power(x, 2), 0.01)

plt.plot(x, y1*y2, c='r')

plt.show()

原:https://blog.csdn.net/xufive/article/details/126141038

import matplotlib.pyplot as plt  

import numpy as np               

import math

x = np.linspace(-2,2,500)

y=lambda x:np.power((x**2),(1/3))+0.99*np.sqrt(3.3-np.power(x,2))*np.sin(9.9*math.pi*x)

plt.plot(x,y(x))

plt.axis([-3,3,-2,3])

plt.show()

原 :https://zhuanlan.zhihu.com/p/271674164

(6)三维爱心

转载地址:https://blog.csdn.net/yunyun889901/article/details/117785181

#!/usr/bin/env python3from mpl_toolkits.mplot3d import Axes3Dfrom matplotlib import cmfrom matplotlib.ticker import LinearLocator, FormatStrFormatterimport matplotlib.pyplot as pltimport numpy as np  def heart_3d(x,y,z): return (x**2+(9/4)*y**2+z**2-1)**3-x**2*z**3-(9/80)*y**2*z**3  def plot_implicit(fn, bbox=(-1.5, 1.5)): ''' create a plot of an implicit function fn ...implicit function (plot where fn==0) bbox ..the x,y,and z limits of plotted interval''' xmin, xmax, ymin, ymax, zmin, zmax = bbox*3 fig = plt.figure() ax = fig.add_subplot(111, projection='3d') A = np.linspace(xmin, xmax, 100) # resolution of the contour B = np.linspace(xmin, xmax, 40) # number of slices A1, A2 = np.meshgrid(A, A) # grid on which the contour is plotted  for z in B: # plot contours in the XY plane  X, Y = A1, A2  Z = fn(X, Y, z)  cset = ax.contour(X, Y, Z+z, [z], zdir='z', colors=('r',))  # [z] defines the only level to plot  # for this contour for this value of z  for y in B: # plot contours in the XZ plane  X, Z = A1, A2  Y = fn(X, y, Z)  cset = ax.contour(X, Y+y, Z, [y], zdir='y', colors=('red',))  for x in B: # plot contours in the YZ plane  Y, Z = A1, A2  X = fn(x, Y, Z)  cset = ax.contour(X+x, Y, Z, [x], zdir='x',colors=('red',))  # must set plot limits because the contour will likely extend # way beyond the displayed level. Otherwise matplotlib extends the plot limits # to encompass all values in the contour. ax.set_zlim3d(zmin, zmax) ax.set_xlim3d(xmin, xmax) ax.set_ylim3d(ymin, ymax)  plt.show() if __name__ == '__main__': plot_implicit(heart_3d)#!/usr/bin/env python3from mpl_toolkits.mplot3d import Axes3Dfrom matplotlib import cmfrom matplotlib.ticker import LinearLocator, FormatStrFormatterimport matplotlib.pyplot as pltimport numpy as npdef heart_3d(x,y,z): return (x**2+(9/4)*y**2+z**2-1)**3-x**2*z**3-(9/80)*y**2*z**3def plot_implicit(fn, bbox=(-1.5, 1.5)): ''' create a plot of an implicit function fn ...implicit function (plot where fn==0) bbox ..the x,y,and z limits of plotted interval''' xmin, xmax, ymin, ymax, zmin, zmax = bbox*3 fig = plt.figure() ax = fig.add_subplot(111, projection='3d') A = np.linspace(xmin, xmax, 100) # resolution of the contour B = np.linspace(xmin, xmax, 40) # number of slices A1, A2 = np.meshgrid(A, A) # grid on which the contour is plotted for z in B: # plot contours in the XY plane  X, Y = A1, A2  Z = fn(X, Y, z)  cset = ax.contour(X, Y, Z+z, [z], zdir='z', colors=('r',))  # [z] defines the only level to plot  # for this contour for this value of z for y in B: # plot contours in the XZ plane  X, Z = A1, A2  Y = fn(X, y, Z)  cset = ax.contour(X, Y+y, Z, [y], zdir='y', colors=('red',)) for x in B: # plot contours in the YZ plane  Y, Z = A1, A2  X = fn(x, Y, Z)  cset = ax.contour(X+x, Y, Z, [x], zdir='x',colors=('red',)) # must set plot limits because the contour will likely extend # way beyond the displayed level. Otherwise matplotlib extends the plot limits # to encompass all values in the contour. ax.set_zlim3d(zmin, zmax) ax.set_xlim3d(xmin, xmax) ax.set_ylim3d(ymin, ymax) plt.show()if __name__ == '__main__': plot_implicit(heart_3d) 

(7)Matlab 3D心形代码

原:https://blog.csdn.net/weixin_48117689/article/details/124082260

clear;  clc;  close all;  f = @(x, y, z)(x.^2 + 2.25*y.^2 + z.^2 - 1).^3 -  ...    x.^2.* z.^3 - 0.1125*y.^2.*z.^3; g = @(x, y, z)(sqrt(x.^2+y.^2)-2.5).^2 + z.^2 - 0.4^2; t = linspace(-5, 5); [x1, y1, z1] = meshgrid(t); [x2, y2, z2] = meshgrid(t); val1 = f(x1, y1, z1); val2 = g(x2, y2, z2); [p1, v1] = isosurface(x1, y1, z1, val1, 0); [p2, v2] = isosurface(x2, y2, z2, val2, 0); figure() subplot(1, 1, 1) h = patch('faces',p1,'vertices',v1,'facevertexcdata',jet(size(v1,1)),...    'facecolor','w','edgecolor','flat'); hold on; patch('faces',p2,'vertices',v2,'facevertexcdata',jet(size(v2,1)),...    'facecolor','w','edgecolor','flat'); grid on; axis equal; axis([-3,3,-3,3,-1.5,1.5]); view(3) title() warning('off'); T = suptitle("$I\ Love\ U\ !$");  set(T,'Interpreter','latex','FontSize',24) pic_num = 1; for i = 1:20        v1 = 0.98 * v1;        set(h, 'vertices', v1); drawnow;        F = getframe(gcf);        I = frame2im(F);        [I,map]=rgb2ind(I,256);        if pic_num == 1                imwrite(I,map,'BeatingHeart.gif','gif','Loopcount',inf,'DelayTime',0.05);            else                imwrite(I,map,'BeatingHeart.gif','gif','WriteMode','append','DelayTime',0.05);            end        pic_num = pic_num + 1;    end for i = 1:20        v1 = v1 / 0.98;        set(h, 'vertices', v1); drawnow;        F = getframe(gcf);        I = frame2im(F);        [I,map] = rgb2ind(I,256);        imwrite(I,map,'BeatingHeart.gif','gif','WriteMode','append','DelayTime',0.05);        pic_num = pic_num + 1;    end

(8)双心(java)

https://zhuanlan.zhihu.com/p/511112228

import javax.swing.*;import java.awt.*;​import static java.lang.Math.*;​public class DemoTest extends JFrame {    private static final long serialVersionUID = -1284128891908775645L;​    // 定义加载窗口大小​    public static final int GAME_WIDTH = 500;​    public static final int GAME_HEIGHT = 500;    // 获取屏幕窗口大小    public static final int WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width;​    public static final int HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height;​    public DemoTest() {​        // 设置窗口标题        this.setTitle("心形曲线");        // 设置窗口初始位置        this.setLocation((WIDTH - GAME_WIDTH) / 2, (HEIGHT - GAME_HEIGHT) / 2);        // 设置窗口大小        this.setSize(GAME_WIDTH, GAME_HEIGHT);        // 设置背景色        this.setBackground(Color.BLACK);        // 设置窗口关闭方式        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        // 设置窗口显示        this.setVisible(true);    }​    @Override    public void paint(Graphics g) {        double x, y, r;        Image OffScreen = createImage(GAME_WIDTH, GAME_HEIGHT);        Graphics drawOffScreen = OffScreen.getGraphics();        for (int i = 0; i < 90; i++) {            for (int j = 0; j < 90; j++) {                r = Math.PI / 45 * i * (1 - Math.sin(Math.PI / 45 * j)) * 18;                x = r * Math.cos(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i) + GAME_WIDTH / 2;                y = -r * Math.sin(Math.PI / 45 * j) + GAME_HEIGHT / 4;                //设置画笔颜色                drawOffScreen.setColor(Color.PINK);                // 绘制椭圆                drawOffScreen.fillOval((int) x, (int) y, 2, 2);            }            // 生成图片            g.drawImage(OffScreen, 0, 0, this);        }    }​    public static void main(String[] args) {        DemoTest demo = new DemoTest();        demo.setVisible(true);    }​}
#include #include #include #include  float f(float x, float y, float z) {float a = x * x + 9.0f / 4.0f * y * y + z * z - 1;return a * a * a - x * x * z * z * z - 9.0f / 80.0f * y * y * z * z * z;} float h(float x, float z) {for (float y = 1.0f; y >= 0.0f; y -= 0.001f)if (f(x, y, z) <= 0.0f)return y; return 0.0f;} int main() {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),                        0xc);//SetConsoleTextAttribute()是Windows系统中一个可以设置控制台窗口字体颜色和背景色的计算机函数HANDLE o = GetStdHandle(STD_OUTPUT_HANDLE);// GetStdHandle()检索指定标准设备的句柄(标准输入、标准输出或标准错误)_TCHAR buffer[25][80] = { _T(' ') };_TCHAR ramp[] = _T("vvvvvvvv");int count = 0;int count1 = 0; for (float t = 0.0f;; t += 0.1f) {int sy = 0;float s = sinf(t);float a = s * s * s * s * 0.2f; for (float z = 1.3f; z > -1.2f; z -= 0.1f) {_TCHAR *p = &buffer[sy++][0];float tz = z * (1.2f - a); for (float x = -1.5f; x < 1.5f; x += 0.05f) {float tx = x * (1.2f + a);float v = f(tx, 0.0f, tz); if (v <= 0.0f) {float y0 = h(tx, tz);float ny = 0.01f;float nx = h(tx + ny, tz) - y0;float nz = h(tx, tz + ny) - y0;float nd = 1.0f / sqrtf(nx * nx + ny * ny + nz * nz);float d = (nx + ny - nz) * nd * 0.5f + 0.5f;*p++ = ramp[(int)(d * 5.0f)];} else*p++ = ' ';}} for (sy = 0; sy < 25; sy++) {COORD coord = { 0, sy };SetConsoleCursorPosition(o, coord);//作用是设置控制台(cmd)光标位置WriteConsole(o, buffer[sy], 79, NULL, 0);//从当前光标位置开始,将字符串写入控制台屏幕缓冲区} if (count <= 22) {printf("I Love You") ;//表白内容printf("            To CSDN");// 被表白者的名字count++;} else {printf("You Are My Best Lover.\n");count++; if (count >= 44) {count = 0;}} Sleep(36);//Sleep函数:执行挂起一段时间,也就是等待一段时间在继续执行}}

(10)、Python《点燃我温暖你》李峋爱心代码

转载地址:【双十一特辑】爱心代码(程序员的浪漫)-李峋_天寒雨落的博客-CSDN博客
import randomfrom math import sin, cos, pi, logfrom tkinter import *CANVAS_WIDTH = 640  # 画布的宽CANVAS_HEIGHT = 480  # 画布的高CANVAS_CENTER_X = CANVAS_WIDTH / 2  # 画布中心的X轴坐标CANVAS_CENTER_Y = CANVAS_HEIGHT / 2  # 画布中心的Y轴坐标IMAGE_ENLARGE = 11  # 放大比例HEART_COLOR = "pink"  # 心的颜色def heart_function(t, shrink_ratio: float = IMAGE_ENLARGE):    """    “爱心函数生成器”    :param shrink_ratio: 放大比例    :param t: 参数    :return: 坐标    """    # 基础函数    x = 16 * (sin(t) ** 3)    y = -(13 * cos(t) - 5 * cos(2 * t) - 2 * cos(3 * t) - cos(4 * t))    # 放大    x *= shrink_ratio    y *= shrink_ratio    # 移到画布中央    x += CANVAS_CENTER_X    y += CANVAS_CENTER_Y    return int(x), int(y)def scatter_inside(x, y, beta=0.15):    """    随机内部扩散    :param x: 原x    :param y: 原y    :param beta: 强度    :return: 新坐标    """    ratio_x = - beta * log(random.random())    ratio_y = - beta * log(random.random())    dx = ratio_x * (x - CANVAS_CENTER_X)    dy = ratio_y * (y - CANVAS_CENTER_Y)    return x - dx, y - dydef shrink(x, y, ratio):    """    抖动    :param x: 原x    :param y: 原y    :param ratio: 比例    :return: 新坐标    """    force = -1 / (((x - CANVAS_CENTER_X) ** 2 + (y - CANVAS_CENTER_Y) ** 2) ** 0.6)  # 这个参数...    dx = ratio * force * (x - CANVAS_CENTER_X)    dy = ratio * force * (y - CANVAS_CENTER_Y)    return x - dx, y - dydef curve(p):    """    自定义曲线函数,调整跳动周期    :param p: 参数    :return: 正弦    """    return 4 * (2 * sin(4 * p)) / (2 * pi)class Heart:    """    爱心类    """    def __init__(self, generate_frame=20):        self._points = set()  # 原始爱心坐标集合        self._edge_diffusion_points = set()  # 边缘扩散效果点坐标集合        self._center_diffusion_points = set()  # 中心扩散效果点坐标集合        self.all_points = {}  # 每帧动态点坐标        self.build(2000)        self.random_halo = 1000        self.generate_frame = generate_frame        for frame in range(generate_frame):            self.calc(frame)    def build(self, number):        # 爱心        for _ in range(number):            t = random.uniform(0, 2 * pi)  # 随机不到的地方造成爱心有缺口            x, y = heart_function(t)            self._points.add((x, y))        # 爱心内扩散        for _x, _y in list(self._points):            for _ in range(3):                x, y = scatter_inside(_x, _y, 0.05)                self._edge_diffusion_points.add((x, y))        # 爱心内再次扩散        point_list = list(self._points)        for _ in range(4000):            x, y = random.choice(point_list)            x, y = scatter_inside(x, y, 0.17)            self._center_diffusion_points.add((x, y))    @staticmethod    def calc_position(x, y, ratio):        # 调整缩放比例        force = 1 / (((x - CANVAS_CENTER_X) ** 2 + (y - CANVAS_CENTER_Y) ** 2) ** 0.520)        dx = ratio * force * (x - CANVAS_CENTER_X) + random.randint(-1, 1)        dy = ratio * force * (y - CANVAS_CENTER_Y) + random.randint(-1, 1)        return x - dx, y - dy    def calc(self, generate_frame):        ratio = 10 * curve(generate_frame / 10 * pi)  # 圆滑的周期的缩放比例        halo_radius = int(4 + 6 * (1 + curve(generate_frame / 10 * pi)))        halo_number = int(3000 + 4000 * abs(curve(generate_frame / 10 * pi) ** 2))        all_points = []        # 光环        heart_halo_point = set()  # 光环的点坐标集合        for _ in range(halo_number):            t = random.uniform(0, 2 * pi)  # 随机不到的地方造成爱心有缺口            x, y = heart_function(t, shrink_ratio=11)            x, y = shrink(x, y, halo_radius)            if (x, y) not in heart_halo_point:                # 处理新的点                heart_halo_point.add((x, y))                x += random.randint(-11, 11)                y += random.randint(-11, 11)                size = random.choice((1, 2, 2))#控制外围粒子的大小                all_points.append((x, y, size))        # 轮廓        for x, y in self._points:            x, y = self.calc_position(x, y, ratio)            size = random.randint(1, 3)            all_points.append((x, y, size))        # 内容        for x, y in self._center_diffusion_points:            x, y = self.calc_position(x, y, ratio)            size = random.randint(1, 2)            all_points.append((x, y, size))        self.all_points[generate_frame] = all_points    def render(self, render_canvas, render_frame):        for x, y, size in self.all_points[render_frame % self.generate_frame]:            render_canvas.create_rectangle(x, y, x + size, y + size, width=0, fill=HEART_COLOR)def draw(main: Tk, render_canvas: Canvas, render_heart: Heart, render_frame=0):    render_canvas.delete('all')    render_heart.render(render_canvas, render_frame)    main.after(160, draw, main, render_canvas, render_heart, render_frame + 1)if __name__ == '__main__':    root = Tk()  # 一个Tk    canvas = Canvas(root, bg='black', height=CANVAS_HEIGHT, width=CANVAS_WIDTH)    canvas.pack()    heart = Heart()  # 心    draw(root, canvas, heart)  # 开始画画~    root.mainloop()

三、用python、java字符画绘制爱心 

(1)一行代码画爱心

print('\n'.join([''.join([('Love'[(x-y)%len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' ') for x in range(-30,30)]) for y in range(15,-15,-1)]))

a = [
        ''.join(
            [
                (
                    'Love'[(x-y)%len('Love')]
                    if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' '
                )
                for x in range(-30,30)
            ]
        )
        for y in range(15,-15,-1)
    ]

print('\n'.join(a))
 

(2)用字符输出 I 爱 U (2种形式)

import timey = 2.5while y>=-1.6:    x = -3.0    while x<=4.0:        if (x*x+y*y-1)**3<=3.6*x*x*y*y*y or (x>-2.4 and x<-2.1 and y<1.5 and y>-1) or (((x<2.5 and x>2.2)or(x>3.4 and x<3.7)) and y>-1 and y<1.5) or (y>-1 and y<-0.6 and x<3.7 and x>2.2):            print(' ',end="")        else:            print('*',end="")        x += 0.1    print()    time.sleep(0.25)    y -= 0.2

参考:https://blog.csdn.net/qq_55342245/article/details/120904578

import timey = 2.5while y>=-1.6:    x = -3.0    while x<=4.0:        if (x*x+y*y-1)**3<=3.6*x*x*y*y*y or (x>-2.4 and x<-2.1 and y<1.5 and y>-1) or (((x<2.5 and x>2.2)or(x>3.4 and x<3.7)) and y>-1 and y<1.5) or (y>-1 and y<-0.6 and x<3.7 and x>2.2):            print('*',end="")        else:            print(' ',end="")        x += 0.1    print()    time.sleep(0.25)    y -= 0.2

3)输出五个爱心,由Dear I love you forever! 五个单词填充而成

转载地址:https://blog.csdn.net/qq_55342245/article/details/120904578

import timesentence = "Dear, I love you forever!"for char in sentence.split():   allChar = []   for y in range(12, -12, -1):       lst = []       lst_con = ''       for x in range(-30, 30):            formula = ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3            if formula <= 0:                lst_con += char[(x) % len(char)]            else:                lst_con += ' '       lst.append(lst_con)       allChar += lst   print('\n'.join(allChar))   time.sleep(1)

4.java 实现 ❤

    public  static  void heart1(){

        float x,y,a;

        for(y=1.3f;y>-1.1f;y-=0.06f){   //这里的参数皆可以调,条件就是看着顺眼

            for(x=-1.2f;x<=1.2f;x+=0.025f){

                a=x*x+y*y-1;

                System.out.print(a*a*a-x*x*y*y*y<=0.0f?' ':'$');

            }

            System.out.println();

        }

    }

再来一个心中有无数爱的:

public static  void heart2(){

        double x,y,a;

        char s[]=new char[]{'I',' ','l','o','v','e',' ','y','o','u','!'};

        int index=0;

        for(y=1.3f;y>-1.1f;y-=0.06f){

            index=0;

            for(x=-1.1f;x<=1.1f;x+=0.025f){

                double result=x*x+pow((5.0*y/4.0-sqrt(abs(x))),2);

                if(result<=1){

                    System.out.print((s[index]));

                    index=(index+1)%11;

                }

                else{

                    System.out.print(' ');

                }

            }

            System.out.println(" ");

        }

    }

原:https://zhuanlan.zhihu.com/p/511112228

四、绘制玫瑰花

 (1)、6种python玫瑰花绘图源码(立体多层玫瑰、红玫瑰)

(1)立体多层玫瑰(2)红玫瑰(3)红玫瑰

(4)红玫瑰(5)红玫瑰(6)红玫瑰

篇幅太长,请点击查看: 立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

(2)前端canvas玫瑰花

                Document    

五、前端特效爱心

(1)前端 CSS "I Love You "爱心效果

    
点击每个单词查看效果

(2)各国语言“爱”字组成爱心效果

                Document            

(3)上升爱心效果

                Document    

(4)变幻爱心

                Document    
 
    New Document                  

六、特色推荐

作者:@_猿来如此作者:带中小学生玩转Python
https://blog.csdn.net/m0_63057469/article/details/126091105https://blog.csdn.net/m0_48190198/article/details/123235264
用Pygame制作一场漂亮的流星雨爱心字符云
https://blog.csdn.net/wangzirui32/article/details/115825539https://blog.csdn.net/weixin_55822277/article/details/121370628

           推荐阅读:

原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)更好的向你所喜欢的人表达内心的感受。

2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子
25

2023春节祝福系列第一弹(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载)
24

​​

HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码)

23

​​

​草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码

22

​​

【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码)

21

0a4256d5e96d4624bdca36433237080b.png​​

​​

python爱心源代码集锦
20

4d9032c9cdf54f5f9193e45e4532898c.png​​

​​

巴斯光年python turtle绘图__附源代码
19

074cd3c255224c5aa21ff18fdc25053c.png​​

​​​

Three.js实例详解___旋转的精灵女孩(附完整代码和资源)
18

daecd7067e7c45abb875fc7a1a469f23.png​​

​​​​

​草莓熊python turtle绘图(玫瑰花版)附源代码

17

fe88b78e78694570bf2d850ce83b1f69.png​​

​​​​

立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

16

c5feeb25880d49c085b808bf4e041c86.png​​

​​​​

皮卡丘python turtle海龟绘图(电力球版)附源代码

15

38266b5036414624875447abd5311e4d.png​​

​​​​

【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向)

14

03ed644f9b1d411ba41c59e0a5bdcc61.png​​

​​​​

草莓熊python turtle绘图(风车版)附源代码

13

09e08f86f127431cbfdfe395aa2f8bc9.png​​

​​​​

用代码过中秋,python海龟月饼你要不要尝一口?

12

40e8b4631e2b486bab2a4ebb5bc9f410.png​​

​​​​

《 Python List 列表全实例详解系列》__系列总目录

11

938bc5a8bb454a41bfe0d4185da845dc.jpeg​​

​​​​

用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

10

0f09e73712d149ff90f0048a096596c6.png​​

​​​​

Python函数方法实例详解全集(更新中...)

9

93d65dbd09604c4a8ed2c01df0eebc38.png​​

​​​​

matplotlib 自带绘图样式效果展示速查(28种,全)

8

aa17177aec9b4e5eb19b5d9675302de8.png​​

​​​​

手机屏幕坏了____怎么把里面的资料导出(18种方法)

7

1750390dd9da4b39938a23ab447c6fb6.jpeg​​

​​​​

2023年6月多家权威机构____编程语言排行榜__薪酬状况

6

dc8796ddccbf4aec98ac5d3e09001348.jpeg​​

​​​​

Python中Print()函数的用法___实例详解(全,例多)

5

1ab685d264ed4ae5b510dc7fbd0d1e55.jpeg​​

​​​​

色彩颜色对照表(300种颜色)(16进制、RGB、CMYK、HSV、中英文名)

4

80007dbf51944725bf9cf4cfc75c5a13.png​​

​​​​

Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细)

3

c6374d75c29942f2aa577ce9c5c2e12b.png​​

​​​​

Tomcat 启动闪退问题解决集(八大类详细)

2

5218ac5338014f389c21bdf1bfa1c599.png​​

​​​​

Tomcat端口配置(详细)

1

fffa2098008b4dc68c00a172f67c538d.png​​

​​​​

Tomcat10 安装(Windows环境)(详细)

来源地址:https://blog.csdn.net/weixin_69553582/article/details/126110424

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯