2013-10-03 1 views
1

파이 게임 1.9.1release에서 안티 앨리어싱 된 원을 만들어 내려고하므로 pygame.gfxdraw에 액세스 할 수 없으며 시험 적으로 명확하게 표시되었으므로이 서브 모듈을 사용하고 싶지 않습니다.어떻게 numpy 배열에 포함 된 원을 에티 알리아싱 할 수 있습니까?

이것은 안티 에일리어싱 된 원을 만들고 싶습니다. 따라서 numpy 배열의 픽셀을 참조하는 파이 게임의 기능을 사용하여이를 달성 할 수있는 방법이 있는지 궁금합니다.

다음은 그러한 원의 예입니다. 원을 3D 배열로 포함하는 절 임된 배열 (here)을 찾을 수 있습니다. 다음과 같이

Aliased circle drawn by pygame

내 질문은 : 어떻게 내가 무승부가 원의 가장자리를 부드럽게 할 수 있습니다, 바람직하게는 NumPy와를 사용하고 계십니까?

+0

pygame.gfxdraw에 대한 경험이 없지만 한 줄의 앤티 앨리어싱 트릭 (예 : OpenGL)은 배경에 선을 혼합하는 것입니다. 또 다른 아이디어는 미리 생성 된 (부드러운) 원 이미지를 텍스처로 사용하는 것입니다. –

+1

@ M-V, 당신의 의견은 약간 혼란 스럽습니다. 저는 pygame.gfxdraw에 접근 할 수 없으며, 특별히 *이 모듈을 사용하지 않고 이것을 어떻게 달성 할 것인지를 묻고 있습니다. 그대로 배경에 라인을 블렌딩하는 아이디어는 매우 좋은 옵션처럼 들리지만, 어떻게해야합니까? – blz

+0

죄송합니다. 귀하의 게시물을 잘못 읽었습니다. 하지만 당신이 해결책을 찾은 것 같아요. 내가 제안한 것은 너무 많은 것을 바꾸어야 할 수도 있지만, 아마도 여러분은 opengl 안티 알리아싱에 대한 연구를 할 수있을 것입니다. [Here] (http://stackoverflow.com/questions/3512456/how-to-draw-smooth-line-with-antialias)는 관련 게시물 중 하나입니다. –

답변

0

Here은 Wu의 알고리즘을 사용한 솔루션입니다.

예상대로 보이므로 예상대로 수행하면 내게 답변을 제공합니다.

관련 문제