Recent Posts
Recent Comments
Link
11-25 19:13
동글동글 라이프
Goo::Canvas 본문
얼마전 cpan에서 테트리스게임을 구현한 코드를 발견하였다.
yewenbin이란 중국사람이 만들었는데 멋지다.
소스 코드를 다운받아서 분석하던 중 ( perl은 소스코드를 바로 확인할 수 있어 좋은듯 )
Goo::Canvas 라는 모듈을 발견하고 이게 뭘까?? cpan에서 검색해 보았다.
Goo::Canvas
Perl interface to the GooCanvasGoo-Canvas-0.05 - 29 Mar 2008 - 叶文彬
오옷!! Gtk+ 를 사용하여 자동으로 그림을 그려주는 모듈인데
재밌는 기능이 많은듯 +_+
4각의 틀을 그려주고 그 틀에 이벤트를 넣는것,
글자 출력 및 회전(rotate) 기능까지 있어
yewenbin이 테트리스 및 지뢰찾기까지
이 모듈을 사용하여 구현한 것을 확인 할 수 있었다.
테스트를 코드를 작성하던 중
재밌는 기능이 많은듯 +_+
my $canvas = Goo::Canvas->new();
$canvas->set_size_request(450, 280); #Windows 크기와 동일하게 지정
$canvas->set_bounds(0, 0, 450, 280); #출력범위 설정
my $root = $canvas->get_root_item();
my $rect = Goo::Canvas::Rect->new(
$root, 20, 20, 180, 180, #처음 x(가로 좌표) , 처음 y (세로자표) , 가로넓이 , 세로 넓이
'line-width' => 2, # 테두리 두께
'radius-x' => 0, #끝을 뭉퉁하게~
'radius-y' => 0,
'stroke-color' => 'blue', #테두리 색
'fill-color' => 'skyblue' # rect를 채울 색
);
rect->signal_connect('button-press-event', # 버튼이 눌러졌을때 이벤트
\&on_rect_button_press);
|
4각의 틀을 그려주고 그 틀에 이벤트를 넣는것,
글자 출력 및 회전(rotate) 기능까지 있어
yewenbin이 테트리스 및 지뢰찾기까지
이 모듈을 사용하여 구현한 것을 확인 할 수 있었다.
테스트를 코드를 작성하던 중
좀 재밌게 응용할 수 없을까? 해서
사각틀을 클릭하면 문자열이 프로펠러처럼
슝슝~ 돌아가는 프로그램을 작성해 보았다.
Glib::Timeout을 사용하면 알아서 작동을 후욱후욱...
'개발자 이야기 > Perl' 카테고리의 다른 글
정규 표현식에 대하여... (6) | 2008.12.29 |
---|---|
플래시 게임을 즐기자. (6) | 2008.12.11 |
연결 리스트 (0) | 2008.12.05 |
알고리즘에서의 재귀적인 방법 (5) | 2008.12.03 |
이진 탐색 (Binary-Search) (5) | 2008.12.03 |
Comments