本文整理汇总了Python中pygame.Rect.right方法的典型用法代码示例。如果您正苦于以下问题:Python Rect.right方法的具体用法?Python Rect.right怎么用?Python Rect.right使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pygame.Rect
的用法示例。
在下文中一共展示了Rect.right方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: scrollbar_rect
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
def scrollbar_rect(self):
# Get the distance between the scroll buttons (d)
sub = self.scroll_up_rect().bottom
t = self.scroll_down_rect().top
d = t - sub
# Get the total row number (n).
n = self.num_items() / getattr(getattr(self, 'parent', None), 'num_cols', lambda: 1)()
# Get the displayed row number (v)
v = self.num_rows()
if n:
s = float(d) / n
else:
s = 0
h = s * v
if type(h) == float:
if h - int(h) > 0:
h += 1
top = max(sub, sub + (s * self.scroll) + self.scroll_rel)
r = Rect(0, top, self.scroll_button_size, h)
m = self.margin
r.right = self.width - m
r.bottom = min(r.bottom, t)
r.inflate_ip(-4, -4)
if r.h < 1:
r.h = int(h)
return r
示例2: scroll_down_rect
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
def scroll_down_rect(self):
d = self.scroll_button_size
r = Rect(0, 0, d, d)
m = self.margin
r.bottom = self.height - m
r.right = self.width - m
r.inflate_ip(-4, -4)
return r
示例3: scroll_up_rect
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
def scroll_up_rect(self):
d = self.scroll_button_size
r = Rect(0, 0, d, d)
m = self.margin
r.top = m
r.right = self.width - m
r.inflate_ip(-4, -4)
return r
示例4: test_calculate_tile_coverage
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
def test_calculate_tile_coverage(self):
v = Rect(0,0,11,11)
m = map.MapBase(50,50)
e = map.MapEntity(1)
m.place_character(e,(25,25))
c = m.map_tile_coverage
#Normal centered
e.move_to((25,25))
v.center = (25,25)
m.calculate_tile_coverage(v)
self.assertEqual(16,c.width)
self.assertEqual(16,c.height)
self.assertEqual((25,25),c.center)
#Not enough map on up and left
e.move_to((1,1))
v.center = (6,6)
m.calculate_tile_coverage(v)
self.assertEqual(0,c.left)
self.assertEqual(0,c.top)
#Not enough map on down and right
e.move_to((48,48))
v.right = 50
v.bottom = 50
m.calculate_tile_coverage(v)
self.assertEqual(50,c.right)
self.assertEqual(50,c.bottom)
#Refresh while walking north
e.move_to((25,21))
v.center = (25,25)
m.calculate_tile_coverage(v)
self.assertEqual(v.bottom + 1,c.bottom)
self.assertEqual(25,c.centerx)
#Refresh while walking south
e.move_to((25,29))
v.center = (25,25)
m.calculate_tile_coverage(v)
self.assertEqual(v.top - 1,c.top)
self.assertEqual(25,c.centerx)
#Refresh while walking east
e.move_to((29,25))
v.center = (25,25)
m.calculate_tile_coverage(v)
self.assertEqual(v.left - 1,c.left)
self.assertEqual(25,c.centery)
#Refresh while walking west
e.move_to((21,25))
v.center = (25,25)
m.calculate_tile_coverage(v)
self.assertEqual(v.right + 1,c.right)
self.assertEqual(25,c.centery)
示例5: test_right
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
def test_right( self ):
"""Changing the right attribute moves the rect and does not change
the rect's width
"""
r = Rect( 1, 2, 3, 4 )
new_right = r.right + 20
expected_left = r.left + 20
old_width = r.width
r.right = new_right
self.assertEqual( new_right, r.right )
self.assertEqual( expected_left, r.left )
self.assertEqual( old_width, r.width )
示例6: hscrollbar_rect
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
def hscrollbar_rect(self):
# Get the distance between the scroll buttons (d)
slr, slt = self.scroll_left_rect().topright
d = self.scroll_right_rect().left - slr
# The predefined step value
_s = self.cell_size[1]
# Get the total step number
n = float(self.virtual_width) / _s
# Get the visible step number
v = float(self.width) / _s
s = float(d) / n
w = s * v
if type(w) == float:
if w - int(w) > 0:
w += 1
left = max(slr, slr + (d * (float(self.hscroll) / self.virtual_width)) + self.hscroll_rel)
r = Rect(left, slt, w, self.scroll_button_size)
r.right = min(r.right, d + slr)
r.inflate_ip(-4, -4)
return r
示例7: calculate_deltas
# 需要导入模块: from pygame import Rect [as 别名]
# 或者: from pygame.Rect import right [as 别名]
return center
def calculate_deltas(self):
ang, distance = self.angle, self.speed
return sin(ang) * distance, cos(ang) * distance
def collide(self):
angle = self.angle
x, y = self.center
radius = self.get_radius()
rect = Rect(x - radius, y - radius, radius * 2, radius * 2)
bandit = self.parent.bandit.rect
if rect.colliderect(bandit):
if bandit.left - rect.right > rect.top - bandit.bottom:
angle = -angle
rect.right = bandit.left
else:
angle = pi - angle
rect.top = bandit.bottom
field = self.parent.rect
if rect.right > field.w or rect.left < 0:
angle = -angle
if rect.right > field.w:
rect.right = field.w
else:
rect.left = 0
if rect.top < 0 or rect.bottom > field.h:
angle = pi - angle
if rect.top < 0:
rect.top = 0
else: