zoukankan      html  css  js  c++  java
  • AS3复制图形镜像

    在做开发的时候遇到了图形镜像的问题,感觉这个不难但是写起来应该是挺麻烦的。不过看了网上的一篇文章以后发现其实解决的方法是很多的。

     1 var container:Sprite = new Sprite();
    2 var Sprite = new Sprite();
    3 //设置镜像中心点的位置set mirror center
    4 brush.x = 600/2;
    5 brush.y = 400/2;
    6 container.addChild ( brush );
    7 addChild ( container );
    8
    9 var canDraw:Boolean = false;
    10 var pen:Graphics = brush.graphics;
    11
    12 //复制镜像部分 copy mirror
    13 var mirrorBmd:BitmapData = new BitmapData(600,400,true,0x00ffffff );
    14 var mirrorImage:Bitmap = new Bitmap( mirrorBmd );
    15 addChild ( mirrorImage );
    16 //镜像的数量
    17 var mirrorNum = 8;
    18 //镜像生成函数
    19 function showMirrorImage () {
    20 var angle = 360 / mirrorNum;
    21 mirrorBmd.draw ( container );
    22 for (var i:int = 1; i < mirrorNum; i++) {
    23 brush.rotation = angle * i;
    24 mirrorBmd.draw ( container );
    25 }
    26 brush.rotation = 0;
    27 }
    28
    29 stage.addEventListener ( MouseEvent.MOUSE_DOWN, beginPaint );
    30 stage.addEventListener ( MouseEvent.MOUSE_MOVE, onPaint );
    31 stage.addEventListener ( MouseEvent.MOUSE_UP, endPaint );
    32 function beginPaint (_evt:MouseEvent ) {
    33 canDraw = true;
    34 pen.lineStyle (1, 0x006699, 0.75, true, "normal", CapsStyle.ROUND, JointStyle.ROUND, 0.5);
    35 pen.moveTo (brush.mouseX, brush.mouseY);
    36 }
    37 function onPaint ( evt:MouseEvent ) {
    38 if ( canDraw ) {
    39 pen.lineTo ( brush.mouseX, brush.mouseY );
    40 showMirrorImage ();
    41 }
    42 }
    43 function endPaint ( evt:MouseEvent ) {
    44 if ( canDraw ) {
    45 pen.lineTo ( brush.mouseX, brush.mouseY );
    46 pen.clear ();
    47 canDraw = false;
    48 }
    49 }
  • 相关阅读:
    面向对象三大特性五大原则
    如何快速的浏览项目
    网页测速
    截取字符串
    iOS-tableView点击下拉菜单
    iOS_block内存分析
    iOS_ @property参数分析
    iOS-设计模式之Block
    iOS-设计模式之代理反向传值
    iOS-设计模式之通知
  • 原文地址:https://www.cnblogs.com/AS30/p/2236100.html
Copyright © 2011-2022 走看看