이미지 및 rect 의 이미지지 않은 서로의 상단에,그들은 바뀌었습니다. 무엇이 잘못된 것입

0

질문

때 나는 이미지를 그릴 및 rect Wof 이미지,그 후 왼쪽 상단 모서리의 직사각형은 정확하게 중심에서의 이미지입니다.

def blitRotateCenter(image, left, top, angle):
    rotated_image = pygame.transform.rotate(image, angle)
    new_rect = rotated_image.get_rect(center = image.get_rect(center = (left, top)).center)
    screen.blit(rotated_image, new_rect)
self.image = pygame.image.load("Bilder/car.png")   
self.rect = self.image.get_rect()
    
blitRotateCenter(auto.image, auto.rect.x, auto.rect.y, auto.wagen_winkel)
draw.rect(screen,red,auto.rect)
pygame python
2021-11-22 07:36:57
1

최고의 응답

1

그냥 돌아 new_rectblitRotateCenter 고 그것을 사용하여 사각형을 그립니다:

def blitRotateCenter(image, left, top, angle):
    rotated_image = pygame.transform.rotate(image, angle)
    new_rect = rotated_image.get_rect(center = image.get_rect(center = (left, top)).center)
    screen.blit(rotated_image, new_rect)
    return new_rect
new_auto_rect = blitRotateCenter(auto.image, auto.rect.x, auto.rect.y, auto.wagen_winkel)
draw.rect(screen,red, new_auto_rect)

그러나,당신이 원을 그리는 회전 사각형을 볼 수 를 얻기 회전형의 자전 이미지에 Pygame.

2021-11-23 05:24:46

그러나 나는 사용할 수 없습니다 new_auto_rect 에 대한 충돌 검출합니다.나는 무엇을 관리할 수 있습니까?
Joachim

왜 당신은 그것을 사용에 대한 충돌 감지?
Rabbid76

왜 당신은 그것을 사용에 대한 충돌 감지? 저장할 수 있습니다 new_auto_rectself.rect. self.rect = new_auto_rect. 또는 당신 검색에 대한 PyGame 과 충돌 마스크?
Rabbid76

나는 설정합니다.rect=new_auto_rect. 그러나 이미지를 통해 실행 화면이다. 나는 생각해야를 중심 그것은? 어디? 는 경우 그것은 작품을 사용하고 싶 히=pygame.sprite.spritecollide(자동차,토지,거짓,pygame.sprite.collide_mask)
Joachim

@요아킴 없이 필요하지 않습 센터습니다. 그것은 중앙에 있습니다. 그것은 사각형을 그립니다. 도 뭔가 엉망에서 당신의 코드입니다. 내가하고 새로운 질문입니다.
Rabbid76

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................