当前位置:首页 > 黑客业务 > 正文内容

QQ代码装x必备(代码装x黑客)

hacker2年前 (2022-12-20)黑客业务167

背景

最近大火的电视剧《点燃我温暖你》出现,令我的家庭地位进一步下降,因为男主“李峋”已经变成了她的大老公,而我就被打入冷宫. 为了满足她的“攀比心”,我连夜给她实现了粉红色爱心的跳动,让她看到满满的爱意.

本文特意将两种代码都进行分享, 为了能够让大家体会到两种代码实现的效果, 特意放出下面的效果图来帮助大家对比

效果1

效果2

代码

import random

from math import sin, cos, pi, log

from tkinter import *

CANVAS_WIDTH = 840 # 画布的宽

CANVAS_HEIGHT = 680 # 画布的高

CANVAS_CENTER_X = CANVAS_WIDTH / 2 # 画布中心的X轴坐标

CANVAS_CENTER_Y = CANVAS_HEIGHT / 2 # 画布中心的Y轴坐标

IMAGE_ENLARGE = 11 # 放大比例

HEART_COLOR = "RED" # 引号内修改颜色!

def heart_function(t, shrink_ratio: float = IMAGE_ENLARGE):

"""

“爱心函数生成器”

:param shrink_ratio: 放大比例

:param t: 参数

:return: 坐标

"""

# 基础函数

x = 17 * (sin(t) ** 3)

y = -(16 * cos(t) - 5 * cos(2 * t) - 2 * cos(3 * t) - cos(3 * t))

# 放大

# x *= shrink_ratio

# y *= shrink_ratio

x *= IMAGE_ENLARGE

y *= IMAGE_ENLARGE

# 移到画布中央

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 - dy

def 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 - dy

def curve(p):

"""

自定义曲线函数,调整跳动周期

:param p: 参数

:return: 正弦

"""

# 可以尝试换其他的动态函数,达到更有力量的效果(贝塞尔?)

return 2 * (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)

QQ代码装x必备(代码装x黑客)

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(10000):

x, y = random.choice(point_list)

x, y = scatter_inside(x, y, 0.27)

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.420) # 魔法参数

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 = 15 * 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=-15) # 魔法参数

x, y = shrink(x, y, halo_radius)

if (x, y) not in heart_halo_point:

# 处理新的点

heart_halo_point.add((x, y))

x += random.randint(-60, 60)

y += random.randint(-60, 60)

size = random.choice((1, 1, 2))

all_points.append((x, y, size))

all_points.append((x + 20, y + 20, size))

all_points.append((x - 20, y - 20, size))

all_points.append((x + 20, y - 20, size))

all_points.append((x - 20, y + 20, 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._edge_diffusion_points:

x, y = self.calc_position(x, y, ratio)

size = random.randint(1, 2)

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(1, draw, main, render_canvas, render_heart, render_frame + 1)

if __name__ == '__main__':

root = Tk()

QQ代码装x必备(代码装x黑客)

root.title("晚上星月争辉,美梦陪你入睡")

canvas = Canvas(root, bg='black', height=CANVAS_HEIGHT, width=CANVAS_WIDTH)

canvas.pack()

heart = Heart()

draw(root, canvas, heart)

root.mainloop()

效果2地址(将冒号后地址复制后放入浏览器即可):

docs.qq.com/doc/DWXpIb1ZlaExUb1p3

运行

运行代码(用pycharm打开改代码然后运行即可)

注意: 该代码为Python代码, 运行时需要安装 pycharm 或 IDLE 等开发环境工具. 下面介绍下pycharm基本安装和使用方法. 在最后我们还会介绍如何将代码打包成可以直接运行的exe程序. 无需pycharm即可运行

展开全文

pycharm

PyCharm 出自 JetBrains 之手. 是一种 Python IDE,带有一整套可以帮助用户在使用 Python 语言开发时提高其效率的工具.

类似 IDEA, 作为 企业级软件, 用于快速开发 Python 程序, 之前使用过 IDEA 的非常推荐使用.

PyCharm破姐版下载地址(将冒号后地址复制后放入浏览器即可):

docs.qq.com/doc/DWXhBdktWSUFyWkxQ

Pycharm 的优点

方便的环境管理

自动导入包

方便的代码调试

Git 管理

Pycharm 的缺点

刚开始打开,索引包较慢

内存占用太高(3G 左右)

打包成exe程序

安装pyinstall

在左上角工具栏找到 File->Setting, 然后按照下图配置

将代码打包成.exe程序

pyinstaller -F -w .\爱心代码文件名.py

打包成功后, 会在当前代码所在目录下, 创建 build和dist目录, 而打包好的程序就在 dis目录下

找到改代码所在目录, 双击运行即可

运行效果如图

扫描二维码推送至手机访问。

版权声明:本文由黑客接单发布,如需转载请注明出处。

本文链接:http://therlest.com/138998.html

分享给朋友:

“QQ代码装x必备(代码装x黑客)” 的相关文章

今天发生的重大新闻5条,国内新闻最新消息10条

近期发生的额十件大新闻,伊朗重申继续实施核计划。本·拉登被击毙,近期国内外新闻要近期。 被关闭·国家最高科学技术奖揭晓"青藏铁路工程"等获奖·广西陆川一在建楼面坍塌14名工人坠地受伤,文汇报,执政党民族解放党总统,到了主要内容介绍完。 这是初中作业吧!月1日—德国总理默克尔倡议成立联合国经济理事会。...

本田汽车之家_本田2020款雅阁

它的动力,八代雅阁在外型,本田雅阁怎么样,看着都吓人,毕竟买车的话选择真很多,2004年第七代雅阁出现小改款. 的雅阁C—CON,现在1点5T标配报价17万,包括款现在马路上的一些,朋友你好新年伊始,独特的魅力所在,雅阁入围“2020年三十款国民车”榜单。 很少会有设计到维修的项目,有一说我觉得20...

宝马3系全下来多少钱 「宝马3系320li落地价」

全国最低价为24点36万,价数字的意思如下:1、一般下来要28下来左右,北京的 裸车是22点5万,字母的意思如下:L是,贵吗.钱2020款宝马。 最不满意的一点,适合追求高配置的消费者了,你会觉得这就是你最正确的选择。王斩2015/07/2023:22:05发表在板凳无事故果断拿下新车落地接近50万...

书黑客,黑客软件破解吃鸡,网站黑客攻击工具

关于较新版别的Windbg,官网已不再支撑独自下载,只能经过Windows SDK里边勾选来装置,不过装置之后Redist目录会有x64/x86/arm的装置包,也可独立装置。 此次评选活动的意图在于,在安全社区中宣扬这些技能,让职业进步对安全的注重,一起也能让这些技能能遭到认可和铭记。 因而,根据...

intense靶场-获取User权限

出品|MS08067实验室(www.ms08067.com) 本文作者:jokelove(Ms08067内网安全小组成员) Intense是HTB中一个难度中上的靶场,需要参与者具备下述能力: 1. Python源码审计 2. SQL注入原理 3. SNMP远程命令执行 4. 栈溢出...

西湖论剑 Flagshop 分析复现

本文首发于“合天智汇”公众号 作者:xiaoleung title: 西湖论剑 Flagshop 分析复现 date: 2020-10-13 13:12:04 tags: CTF 本文推荐实验 PWN综合练习(三) 实验:PWN综合练习(三)(合天网安实验室) CTF PWN进阶训练实...

评论列表

温人眼趣
2年前 (2022-12-20)

- 5 * cos(2 * t) - 2 * cos(3 * t) - cos(3 * t)) # 放大 # x *= shrink_ratio # y *= shrink_ratio x *= IMAGE_ENLARGE y *= IMAGE_ENL

酒奴邮友
2年前 (2022-12-21)

ratio) size = random.randint(1, 2) all_points.append((x, y, size)) self.all_points[generate_frame]

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。