ã¡ã¨ä»äºã§è¤åæ²ç·ãåçã«æç»ããå¿
è¦ããã£ãã®ã ãã©ããã¸ã§ã ã¨ããã¾ãããã«ã§ããªãã£ã¦ã¡ã¨ã¯ã¾ãä¸ãclipãattachãã¦ã©ã°ã©ã³ã¸ã§è£éãã¦ã¹ãã©ã¤ã³æç»ã¨ãã¯å¥ã«ãããã ãã©ãdrawing methodã®curveToã£ã¦ãã¾ãã¡ä½¿ãããªãã¦ããªããï¼ã©ã¼ãåé ç¹ããçæããæ²ç·ãã³ã³ããã¼ã«ãã¤ã³ãã¨ã¢ã³ã«ã¼ãã¤ã³ãã¸ç½®æããã¨ããã§é¬±ã«ãªãã»ã»ï¼3次å
ãã¸ã§ã«ããã°ãããã«ãªãã¨ãã話ãªã®ã ãã©é ãã¤ãã¦ãã£ã¦ããã¾ãããæ³ã ã»ã»ã»ã
ããããåãæãã®ã«
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
mc.moveTo(x+r, y);
mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x, -Math.sin(Math.PI/4)*r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x, -Math.sin(Math.PI/4)*r+y);
mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
ã¨ãããªãé¢åèãã§ãã»ã»ãï¼ã¾ããããããããªãã¾ã ãããã ãã©ãï¼
åèï¼Introduction to Macromedia Flash MX Drawing Methods
Advanced drawing methods in Macromedia Flash MX
「curveToの憂鬱」への2件の返信
この前の某案件では、思ったように曲線が引けなくて、ポイント400個ぐらい管理して、全部直線で引きましたよ。
orz
それやるとウチの場合はCPU負荷高くなっちゃって使い物にならなくなるんで、トゥーインでやると思いマフ。