메뉴 건너뛰기

XE : Xpress Engine




웹디자인 강의

http://sena.bizhrd.com/senaflash/draw.html

일단 미리보시고.. 아무것도 안뜨는데.. 익스플로러 왼쪽 위쪽에서 한번 마우스를 클릭하신채로
움직여보세요.. 포토샵에서 브러시툴로 그림그리듯이.. 무비를 별로 크게 안만들어서 화면 4분의 1정도까지
밖에 안그려집니다..



시간관계상 액션만 그냥 써드립니다..
액션만 몇줄이면 다 끝나거든요..^_^;;


아무 무비클립이나 만듭니다..그냥 액션을 넣기 위한 무비클립이니깐 스테이지 밖에 놓으셔도 되고
빈무비클립만드셔서 스테이지에 올려놓으셔도 되고..

그다음 그 무비클립에 아래의 액션을 넣어줍니다...

onClipEvent (load) {
        _root.createEmptyMovieClip( "line1", 20 );
        
}
onClipEvent (mouseDown) {
        _root.down=1;
        _root.line1.moveTo(_root._xmouse,_root._ymouse );
}
onClipEvent (mouseUp) {
        _root.down=0;
}


onClipEvent (enterFrame) {
                        
                if(_root.down){
                        
                _root.line1.lineStyle( 0, 0x336699, 100 );
          
          _root.line1.lineTo(_root._xmouse,_root._ymouse);
          updateAfterEvent();
                }
}


설명을 드리죠..

먼저원리는 플래시의 moveTo와 lineTo를 이용해서 선을 그리는거구요..
하나하나 짚어 나가보죠..


onClipEvent (load) {
        _root.createEmptyMovieClip( "line1", 20 );

// 무비클립이 로드됐을때..그러니까 이 액션은 처음에 한번만 실행됩니다.
    createEmptymovieClip은 무비클립을 생성시키는 겁니다..
   위에서 line1은 무비클립의 인스턴스네임.. 20은 depth입니다..즉 무비상에서의 높이죠..
클수록 위쪽에 위치하게 되서 하위의 것들을 덮어버리게 되죠...
레퍼런스를 보면 어차피 다 나옵니다..^_^;; 영어로 나오긴 하지만..;;
        
}
onClipEvent (mouseDown) {
        _root.down=1;
        _root.line1.moveTo(_root._xmouse,_root._ymouse );
}

마우스가 눌렸을때...
down에다가 1이란 참값을 넣어줍니다..
마우스가 눌렸다는 것을 무비에 전달해주는 역할을 합니다..
그리고 moveTo는 draw하기위한 메써드중에 하나인데요..
선의 시작점을 지정해줍니다..
마우스를 클릭할 당시에 마우스의 위치로 시작점을 이동해줍니다..
그래야 마우스가 눌려진 위치부터 그림을 그리기 시작하겠죠?...


onClipEvent (mouseUp) {
        _root.down=0;
}

마우스클릭을 그만 두면 즉..release하면.. down값에 거짓값을 넣어줍니다..
그리기를 그만두게하기위한 액션이죠..


onClipEvent (enterFrame) {
                        
                if(_root.down){

down값을 체크해서 마우스가 눌렸을때만 아래의 액션..즉 선을 그리는 액션을 실행시킵니다..
                        
                _root.line1.lineStyle( 0, 0x336699, 100 );
선의 스타일을 정해주는 메써드입니다..
앞에 0은 선의 두께..0일때는 플래시의 hairline의 두께를 가지게 됩니다.. 없는게 아니구요...
그다음 0x336699는 눈치채셨겠지만 컬러를 나타냅니다.. 0x는 가만 두시구요..(플래시에서의 컬러 표현
법중 하나입니다..) 뒤에다가 rgb의 16진수 값을 넣어주면 됩니다..
그다음의 100은 알파값을 나타냅니다.. 100보다 작은값을 가지게 되면 점점 투명해지죠...
          
          _root.line1.lineTo(_root._xmouse,_root._ymouse);
lineTo가 직선의 끝점.. 아까 moveTo는 시작점을 지정해주고..lineTo로 끝점을 지정해주는거죠..
끝점을 마우스의 위치로 해주면서 계속 그림이 그려지게 됩니다..


          updateAfterEvent();

이건 넣으셔도 되고 안넣으셔도 되는...
setInterval액션을 사용하시거나 할때 fps에 상관없이 플래시에서 화면에 계속 뿌려주게 해주는
역할입니다.. 저는 그냥 습관적으로 넣습니다..그냥 버벅거림을 최소화 시켜주기 위한것이라고
보시면 됩니다..
                }

역시 질문있으시면 홈페이지오셔서 질문게시판에... 일일히 확인을 잘 못해서..-_-a....
개선점이 있으면 말씀해주시구요..^_^;; 저도 공부하고 있는거니깐요...
이건 드로우 메써드의 기본 원리입니다..
이걸 좀만 활용하시면 얼마든지 많은 효과에 적용시킬수 있습니다..
레퍼런스 찾아보시면 curveTo메써드도 있는데 이걸로 일러스트에서 그리듯이
곡선도 그릴수 있습니다..
이런걸로 몰할수 있냐 하시는 분이 계실까봐..제가 한거는 아니지만 재밌는 예제를 하나 첨부하죠..

http://feople.com/run/oo/data/dkn/1043948279/elasticBox.swf
휘플에서 칼럼쓰고계시는 dkn님의 무비입니다...



이것도 여러 액션이 물려있지만 기본은 이 curveTo를 이용한겁니다..
한 액션만으로 많은 효과를 낼순 없죠..
마치 덧셈뺄셈만 할줄안다고 삼각함수의 적분을 할수 없는것처럼..
하지만 적분을 하기위해서는 반드시 필요한것이죠.. 그럼..^_^;;
번호 제목 글쓴이 날짜 조회 수
공지 공지 강좌를 올리기전 공지사항을 읽어주세요 [12] Eccen 2004.12.15 48031
755 그림판으로 도트를 그려보자 ! [3] file yeon 2004.04.17 9487
754 독특하고 멋진 테두리를 만들어 보자!! [4] file 태풍주의보 2004.04.18 23633
753 그런지한 테두리 만들기 [8] file hozz호찌 2004.04.18 27638
752 [초급] 맞물려 돌아가는 Gear 만들기 - 1 file 박승제 2004.04.19 11772
751 [초급] 맞물려 돌아가는 Gear 만들기 - 2 [4] file 박승제 2004.04.19 10174
750 [웹사이트만들기]홈페이지 제작 강좌에 앞서 한마디 [3] file HomeBox™ 2004.04.19 8453
749 [웹사이트만들기]홈페이지 제작전 준비해야 할 것들 file HomeBox™ 2004.04.19 8228
748 [웹사이트만들기]매핑테이블을 만들어 보세요 [13] file HomeBox™ 2004.04.19 11303
747 [중급] lineTo()로 그리는 플래시 그래픽 [5] 박승제 2004.04.20 9581
746 도장만들기 -동그라미- [10] file 김두용 2004.04.24 27073
745 [중급] 플래시로 만드는 가위 바위 보 게임 [8] file 박승제 2004.04.24 13472
744 [ Hard ] 유리구체형 버튼만들기 [9] file Nersion 2004.04.25 26060
743 빙글빙글 돌아가는 네비게이션 [18] file 여어자 2004.04.26 29154
742 [중급] 가위,바위,보 게임 승패 판정법 [4] file 박승제 2004.04.26 7737
741 [웹사이트만들기]사용자를 위한 디자인 file HomeBox™ 2004.04.29 10875
740 [웹디자인]폰트사용과 적용하기 [12] file 미스디쟌 2004.04.30 18865
739 [웹사이트만들기]화면설계와 구성요소 上(스터디에 사용한 폰트 설정법 추가) [5] file HomeBox™ 2004.05.05 9956
738 [웹디자인]확장브러쉬의 적용과 응용 [7] file 미스디쟌 2004.05.06 9269
737 [문자디자인①]Smudge툴을 이용한 그냥.. 문자디자인...;; [9] file Smileru 2004.05.07 14922
736 [초급] 가이드라인에 대해 [3] 차우 2004.05.07 8805