pygame中绘制线条的方法

本文介绍了使用Pygame库绘制不同类型的线条方法,包括普通线条、抗锯齿线条及多段线,并通过示例代码展示了如何调整颜色、宽度及启用抗锯齿等功能。

pygame初学篇四: 绘制线条的方法

绘制线条方法:pygame.draw.arc(Surface, color, Rect, start_angle, stop_angle,width), pygame 官网介绍说明方法:http://www.pygame.org/docs/ref/draw.html#pygame.draw.circle
lines(Surface, color, closed, pointlist, width=1) -> Rect lines方法介绍: Surfuce参数: 传入需要在该Surface对象上绘制圆形的Surface对象; color参数: 需要绘制圆形的线的颜色,传入一个rgb三原色元组 . closed参数: 表示是否需要把线条闭合,pointlist 参数: 需要绘制线条各个折点的坐标,width参数:表示绘制线的宽度. 注意此参数为0,则不显示线条。
line(Surface, color, start_pos, end_pos, width=1) -> Rect line方法介绍: Surfuce参数: 传入需要在该Surface对象上绘制圆形的Surface对象;
color参数: 需要绘制圆形的线的颜色,传入一个rgb三原色元组 . closed参数: 表示是否需要把线条闭合,start_pos 参数: 需要绘制线条的起始坐标,
end_pos 参数: 需要绘制线条的终点坐标,width参数:表示绘制线的宽度. 注意此参数为0,则不显示线条。
aaline(Surface, color, startpos, endpos, blend=1) -> Rect aaline方法介绍: Surfuce参数: 传入需要在该Surface对象上绘制圆形的Surface对象;
color参数: 需要绘制圆形的线的颜色,传入一个rgb三原色元组 . start_pos 参数: 需要绘制线条的起始坐标,end_pos 参数: 需要绘制线条的终点坐标blend参数:表示是否开启抗锯齿,值为1时开启,值为0时不开启。

示例程序:
# -*- coding: utf-8 -*-
# @Author: 四叶草
# @Date:   2017-11-04 19:15:46
# @Last Modified by:   Administrator
# @Last Modified time: 2017-11-08 17:03:48

import pygame
import sys
import math 
from pygame.locals import *

# pygame 初始化
pygame.init()

# 设置背景颜色和线条颜色
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
RED = (255, 0, 0)
BLUE = (0, 0, 255)

# 设置直线的坐标
points = [(200, 75), (300, 25), (400, 75)]

# 设置背景框大小
size = width, height = 600, 600
#position = width // 2, height // 2

# 设置帧率,返回clock 类
clock = pygame.time.Clock()

screen = pygame.display.set_mode(size)
pygame.display.set_caption("llls make")

while True:
	for event in pygame.event.get():
		# 查找关闭窗口事件
		if event.type == QUIT:
			sys.exit()
	
	# 填充背景色
	screen.fill(WHITE)

	# 画不封闭的两条直线
	pygame.draw.lines(screen, GREEN, 0, points, 1)

	# 画不抗锯齿的一条直线
	pygame.draw.line(screen, BLUE, (100, 200), (540, 250), 1)

	# 画抗锯齿的一条直线
	pygame.draw.aaline(screen, BLUE, (100, 250), (540, 300), 1)
	
	# 刷新图s
	pygame.display.flip()

	clock.tick(60)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

零涂

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值