스크립팅 마스크의 플래시


  Share  
|


를 사용하여 드로잉 api를 만들려면 모양을하고 다음을 사용 movicclip.setmask ()를 적용가 마스크입니다.

마스크를 만드는 데 사용할 수있습니다 독특한 모양이나 시각 효과입니다. 예를 들어, 사용하실 수있습니다 마스크를 만들 천 및 전환이나 재미있는 애니메이션이 어떤만이 마스킹 부분을 예술 작품은 주어진 시간에 볼 수있습니다. 마스크를 만들 수도있습니다 시간이 지남에 변경되는 모양을 사용하고, 이들을 마스크 비트맵 그래픽 (이 영화 클립)입니다.

모든 동영상 클립을 사용하실 수있습니다으로 마스크의 또 다른 동영상 클립을 사용하여 setmask () 메소드입니다. 가 setmask () 메소드가 호출 영화에서 클립으로 복면, 그리고 그것에 대한 참조를 통과해야합니다 동영상 클립이 역할을 마스크 :

  maskedmovieclip.setmask (maskmovieclip); 

대부분의 경우, 마스크는 단순한 도형과 같은 사각형 또는 동그라미입니다. 하실 필요가없습니다를 사용하여 드로잉 api를 이끌어가 마스크 동영상 클립지만 그렇게하지 않는 것이 좋습니다 마스크가의 비정상적인 모양입니다.

첫 번째, 여기에 들어있는 마스크를 따라가 마우스를합니다. 가 마스크가 할당을 동영상 클립을 포함하는로드 이미지, 그래서는 효과는 사용자가 이미지의 부분을 통해서만 볼 수있는 자신이 위치에서 마우스를합니다.

  / / 포함합니다 그리기 방법, 어떤이 필요한 drawcircle () 메소드입니다.  # 포함 "drawingmethods.as" 
  / / 만드는 동영상 클립과 중첩된 동영상 클립에 대한 로딩 이미지가있습니다.  / /에 대한 더 많은 정보가 필요합니다 중첩된 영화를 만들기 위해 클립을로드하면 / / 외부 jpeg.  _ root.createemptymovieclip ( "image_mc", 1); _root.image_mc.createemptymovieclip ( "imageholder_mc", 1); 
  / / 부하의 이미지를 영화를 클립합니다.  이은 원할 경우 사용하실 수있습니다되지만 / / 업무만을 테스트 또는 독립형 플레이어를 사용하는 동안합니다.  / / image_mc.imageholder_mc.loadmovie ( "http://www.person13.com/ascb/images/image1.jpg"); 
  / / 무승부가 마스킹 동영상 클립을합니다.  _ root.createemptymovieclip ( "mask_mc", 2); mask_mc.linestyle (3, 0x000000, 0); mask_mc.beginfill (0, 100); mask_mc.drawcircle (60); mask_mc . endfill (); 
  / / 전화를 setmask () 메소드를 숨겨 동영상 클립을 통과 그것을 마스킹 영화 / / 클립을 매개 변수로합니다.  image_mc.setmask (mask_mc); 
  / / 전화를 startdrag () 메소드의 마스킹 동영상 클립 그래서 마스크를하실 수있습니다 / / 옮긴으로 커서를합니다.  mask_mc.startdrag (진정한); 

다음으로, 이곳은 예제에있는 마스크를 사용하여 두 개 사이의 영상을 만들 닦아로드 이미지가있습니다.

  # 포함 "drawingmethods.as" 
  / / 만드는 동영상 클립과 중첩된 동영상 클립 및로드의 첫 번째 이미지로 적절합니다.  _ root.createemptymovieclip ( "image0_mc", 1); _root.image0_mc.createemptymovieclip ( "imageholder_mc", 1); image0_mc.imageholder_mc.loadmovie ( "http://www.person13 . com/ascb/images/image1.jpg "); 
  / / 만드는 또 다른 동영상 클립과 중첩된 동영상 클립을로드하는 두 번째 이미지로 적절합니다.  / / 둘 다 image0_mc 및 image1_mc이 만들어집니다시 (0,0).  즉, 그들은 / / 중복입니다.  이것은 무엇을 우리가 원하는합니다.  _ root.createemptymovieclip ( "image1_mc", 2); _root.image1_mc.createemptymovieclip ( "imageholder_mc", 1); image1_mc.imageholder_mc.loadmovie ( "http://www.person13 . com/ascb/images/image2.jpg "); 
  / / 무승부가 마스킹 동영상 클립을합니다.  크기의 이미지는 640 x 480 (면 / / 부하의 이미지를 사용하여 링 제공), 그래서 마스크를해야한다 사각형 / /와 동일한 치수입니다.  _ root.createemptymovieclip ( "mask_mc", 3); mask_mc.linestyle (3, 0x000000, 0); mask_mc.beginfill (0, 100); mask_mc.drawrectangle (640, 480); 마스크 _ mc.endfill (); 
  / / 순위가 마스크 있도록이 해제하려면 왼쪽의 무대입니다.  mask_mc._x = -320; mask_mc._y = 240; 
  / / 전화를 setmask () 메소드를 설정 mask_mc으로 마스크를 image1_mc.  이로 인해 / / image0_mc를 표시하려면 처음에, 비록 그것이 아래 image1_mc.  image1_mc.setmask (mask_mc); 
  / / 정의하는 이벤트 처리기 방법에 대한 image0_mc 그래서 마스크를 동영상 클립으로 이동 / / 경우에 사용자가 클릭 image0_mc.  image0_mc.onrelease = 함수 () ( 
  / / 사용하는 onenterframe () 이벤트 처리기 메서드를 이동하는 마스크입니다.  이 정합니다 / /이 초당 프레임의 기본 설정은 12입니다.  _ root.mask_mc.onenterframe = 함수 () ( 
  / / 이동하는 마스크를 오른쪽으로 12 픽셀입니다.  this._x + = 12; 
  / / 경우에 마스크가 완전히 마스킹의 이미지를 삭제합니다 onenterframe () 메소드입니다.  만약 (this._x> = 320) (this._x = 320; 삭제 this.onenterframe;))) 

이 예제에서 제공되는 링을 사용하는 경우, 그 이미지가로드도의 크기는 640 x 480입니다. 따라서해야 할 수있습니다 동영상의 증가 외형의 전체 이미지가 표시됩니다. 자신의 이미지를 사용하는 경우, 그들의 동일한 해상도를 지원해야합니다 설명대로이 효과가 작동합니다.

이것은 문서가 추가 elis frugalo

Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions