아 백만년만에 블로그 글 쓰는거 같네요~
그러므로 간단하게 ㄱㄱ
BitmapData를 동그랗게 보여주고 싶을 때
마스크는 부담스러울 때 쓸 수 있는 메소드입니다.
이런 고양이 비트맵을
이렇게 나타내줄 수 있습니다.
아래는 코드입니다.
|
원리는 draw를 해주는 두줄의 코드입니다.
data.draw( $target );
일단 복사를 한번 해주고요
미리 동그라미 모양을 Shape으로 그려놓은 다음에
data.draw( circle, null, null, BlendMode.ERASE );
BlendMode를 ERASE로 그려주면
됩니다.
※ 이때 동그라미 모양이 중요한데
반전된 동그라미 모양입니다.
사각형에서 가운데가 동그라미로 빠진 모습입니다.
이렇게요~
저 빨간 모양을 Shape으로 그려주는게 포인트인데
Shape의 Vector drawing을 이용하면 쉽습니다.
circle.graphics.drawRect( 0, 0, DIAMETER, DIAMETER );
circle.graphics.drawCircle( RADIUS, RADIUS, RADIUS );
그냥 사각형을 그려주고 그다음에 원을 그려주면
겹치는 영역은 자동으로 색이 빠져버립니다.
동그라미 두개를 겹쳐서 그리면 겹치는 부분은 색이 빠지는 것과 같은 원리입니다.
메소드 저장해놓고 ㄱㄱ~
p.s) draw 이기 때문에 sand box type에 유의해야합니다.
'ActionScript 3.0 > 팁 & 노하우' 카테고리의 다른 글
if in 구문을 써보자. (7) | 2013.05.07 |
---|---|
new Sprite() 클래스 생성 구조를 샅샅히 뜯어보자. (7) | 2012.12.26 |
[AS3] int 대신 Number를 쓴다면 얼마까지 안전할까? (26) | 2011.07.21 |
[플러그인] 브라우져에서 JSON 편하게 보자 (3) | 2011.05.19 |
Eureka~ 비트맵 속도 높이기 팁~ (7) | 2011.05.12 |