鱼C论坛

 找回密码
 立即注册
查看: 4547|回复: 3

关于pygame.sprite.collide_circle的self.radius值的设定

[复制链接]
发表于 2018-4-25 13:15:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
关于pygame.sprite.collide_circle的self.radius值的设定,在书中写到self.radius=self.rect.width/2,按照书中描述所实现的碰撞检测,发现球会在重叠一部分之后在在发生碰撞并反方向运动,
在我将self.radius改为self.radius改为之后才能够进行正常的碰撞检测。
  1. class Ball(pygame.sprite.Sprite):
  2.     def __init__(self,image,position,speed,bg_size):
  3.         pygame.sprite.Sprite.__init__(self)
  4.         self.image = pygame.image.load(image).convert_alpha()
  5.         self.rect = self.image.get_rect()
  6.         self.rect.left, self.rect.top = position
  7.         self.speed = speed
  8.         self.width,self.height = bg_size[0],bg_size[1]
  9.         #self.radius = self.rect.width/2
  10.         self.radius = math.sqrt(math.pow(self.rect.width/2,2)+math.pow(self.rect.height/2,2))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-4-25 13:19:31 | 显示全部楼层
有没有大佬给我解释一下哪里锤了问题啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-5 19:24:23 | 显示全部楼层
也正在学习,路过,加个联系方式,一起学习一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-5 21:16:28 | 显示全部楼层
我试过了可以正常碰撞
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-22 13:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表