728x90
** 2021.01.22 일부 오타수정
1. PC 좌표 이해
* 일반적으로 수학에서 사용하는 2차원 좌표와 프로그래밍에서 사용하는 2차원 좌표의 개념은 다릅니다.
pc 좌표는 위과 같이 생겼다고 생각하시면 됩니다.
2. 도형그리기_사각형/원/타원/선
python.draw.도형 함수(rect, cicle, ellipsis, line)로 원하는 도형을 그릴 수 있습니다.
1. 사각형
rect.(surface객체, 색, (위치와 크기), 테두리 굵기)
pygame.draw.rect(SURFACE, color_green, (20, 100, 50, 50), width_draw)
2. 원
circle.(surface객체, 색, 중심좌표, 반경, 테두리 굵기)
#원그리기
pygame.draw.circle(SURFACE, color_red, (50, 50), width_draw)
pygame.draw.circle(SURFACE, color_red, (150, 50), radius_circle, width_draw)
3. 타원
ellipse.(surface객체, 색, (타원에 외접하는 사각형의 위치와 크기), 테두리 굵기)
* 타원은 사각형을 먼저 그리고 사각형에 타원을 채운다는 생각을 해야합니다.
ellipsis_rect = (100, 100, 110, 60)
pygame.draw.ellipse(SURFACE, color_blue, ellipsis_rect, width_draw)
4. 선
line.(surface객체, 색, 시작좌표, 끝좌표, 테두리 굵기)
line_start = (250, 100) #시작좌표
line_end = (250, 150) #끝좌표
pygame.draw.line(SURFACE, color_green, line_start, line_end, width_draw)
#소스코드
import sys
import pygame
from pygame.locals import QUIT, Rect
pygame.init()
SURFACE = pygame.display.set_mode((400, 300))
color_red = (255, 0, 0)
color_green = (0, 255, 0)
color_blue = (0, 0, 255)
width_draw = 5
radius_circle = 20
FPSCLOCK = pygame.time.Clock()
def main():
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
#surface 객체 색(바탕색)
SURFACE.fill((255, 255, 255))
#원그리기
pygame.draw.circle(SURFACE, color_red, (50, 50), width_draw)
pygame.draw.circle(SURFACE, color_red, (150, 50), radius_circle, with_draw)
#사각형그리기
pygame.draw.rect(SURFACE, color_green, (20, 100, 50, 50), with_draw)
#타원그리기
ellipsis_rect = (100, 100, 110, 60)
pygame.draw.ellipse(SURFACE, color_blue, ellipsis_rect, with_draw)
#선그리기
line_start = (250, 100) #시작좌표
line_end = (250, 150) #끝좌표
pygame.draw.line(SURFACE, color_green, line_start, line_end, width_draw)
pygame.display.update()
FPSCLOCK.tick(1)
if __name__ == '__main__':
main()
728x90
'# Programming Language > Python' 카테고리의 다른 글
[Python] 파이썬 정리(2)_iterator/컴프리헨션/람다/map/filter (0) | 2021.03.23 |
---|---|
[Python] 파이썬 정리(1)_얕은 복사와 깊은 복사 (0) | 2021.03.22 |
[Python] 파이썬 게임 라이브러리_PyGame 설명과 다운(파이참) (0) | 2021.01.19 |
[Python] 파이썬 기본_연산자/데이터형/데이터구조/제어문/함수 (0) | 2021.01.18 |
[Python] 파이썬&비주얼스튜디오 설치 (0) | 2021.01.15 |