home *** CD-ROM | disk | FTP | other *** search
/ Practice Anatomy Lab / PAL.ISO / pc / PAL.swf / scripts / __Packages / com / drawing / drawUtil.as
Encoding:
Text File  |  2007-03-19  |  5.6 KB  |  118 lines

  1. class com.drawing.drawUtil
  2. {
  3.    function drawUtil()
  4.    {
  5.    }
  6.    static function drawRect(mc, x, y, w, h, cornerRadius)
  7.    {
  8.       if(cornerRadius > 0)
  9.       {
  10.          var _loc2_ = undefined;
  11.          var _loc3_ = undefined;
  12.          var _loc8_ = undefined;
  13.          var _loc7_ = undefined;
  14.          var _loc10_ = undefined;
  15.          var _loc9_ = undefined;
  16.          if(cornerRadius > Math.min(w,h) / 2)
  17.          {
  18.             cornerRadius = Math.min(w,h) / 2;
  19.          }
  20.          _loc2_ = 0.7853981633974483;
  21.          mc.moveTo(x + cornerRadius,y);
  22.          mc.lineTo(x + w - cornerRadius,y);
  23.          _loc3_ = -1.5707963267948966;
  24.          _loc8_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  25.          _loc7_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  26.          _loc10_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  27.          _loc9_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  28.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  29.          _loc3_ += _loc2_;
  30.          _loc8_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  31.          _loc7_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  32.          _loc10_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  33.          _loc9_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  34.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  35.          mc.lineTo(x + w,y + h - cornerRadius);
  36.          _loc3_ += _loc2_;
  37.          _loc8_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  38.          _loc7_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  39.          _loc10_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  40.          _loc9_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  41.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  42.          _loc3_ += _loc2_;
  43.          _loc8_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  44.          _loc7_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  45.          _loc10_ = x + w - cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  46.          _loc9_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  47.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  48.          mc.lineTo(x + cornerRadius,y + h);
  49.          _loc3_ += _loc2_;
  50.          _loc8_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  51.          _loc7_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  52.          _loc10_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  53.          _loc9_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  54.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  55.          _loc3_ += _loc2_;
  56.          _loc8_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  57.          _loc7_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  58.          _loc10_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  59.          _loc9_ = y + h - cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  60.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  61.          mc.lineTo(x,y + cornerRadius);
  62.          _loc3_ += _loc2_;
  63.          _loc8_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  64.          _loc7_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  65.          _loc10_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  66.          _loc9_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  67.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  68.          _loc3_ += _loc2_;
  69.          _loc8_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  70.          _loc7_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_ / 2) * cornerRadius / Math.cos(_loc2_ / 2);
  71.          _loc10_ = x + cornerRadius + Math.cos(_loc3_ + _loc2_) * cornerRadius;
  72.          _loc9_ = y + cornerRadius + Math.sin(_loc3_ + _loc2_) * cornerRadius;
  73.          mc.curveTo(_loc8_,_loc7_,_loc10_,_loc9_);
  74.       }
  75.       else
  76.       {
  77.          mc.moveTo(x,y);
  78.          mc.lineTo(x + w,y);
  79.          mc.lineTo(x + w,y + h);
  80.          mc.lineTo(x,y + h);
  81.          mc.lineTo(x,y);
  82.       }
  83.    }
  84.    static function drawOval(mc, x, y, radius, yRadius)
  85.    {
  86.       var _loc4_ = undefined;
  87.       var _loc14_ = undefined;
  88.       var _loc13_ = undefined;
  89.       var _loc1_ = undefined;
  90.       var _loc3_ = undefined;
  91.       var _loc8_ = undefined;
  92.       var _loc7_ = undefined;
  93.       var _loc6_ = undefined;
  94.       var _loc5_ = undefined;
  95.       if(yRadius == undefined)
  96.       {
  97.          yRadius = radius;
  98.       }
  99.       _loc4_ = 0.7853981633974483;
  100.       _loc14_ = radius / Math.cos(_loc4_ / 2);
  101.       _loc13_ = yRadius / Math.cos(_loc4_ / 2);
  102.       _loc1_ = 0;
  103.       mc.moveTo(x + radius,y);
  104.       var _loc2_ = 0;
  105.       while(_loc2_ < 8)
  106.       {
  107.          _loc1_ += _loc4_;
  108.          _loc3_ = _loc1_ - _loc4_ / 2;
  109.          _loc6_ = x + Math.cos(_loc3_) * _loc14_;
  110.          _loc5_ = y + Math.sin(_loc3_) * _loc13_;
  111.          _loc8_ = x + Math.cos(_loc1_) * radius;
  112.          _loc7_ = y + Math.sin(_loc1_) * yRadius;
  113.          mc.curveTo(_loc6_,_loc5_,_loc8_,_loc7_);
  114.          _loc2_ = _loc2_ + 1;
  115.       }
  116.    }
  117. }
  118.