티스토리 뷰
포물선 운동과 공
step07 : 그림자 사이즈 조절
그림자가 공의 너비를 그대로 가지므로 아직 어색하다.
그림자는 공의 너비 70%를 가지게 조절하도록 해보자.
공식은 아래와 같다.
그림자 너비 = 공의 너비 * 70 / 100
이것을 함수로 바꾸면
function percent($target:Number, $per:Number):Number
{
return $target * $per / 100;
}
이렇게 만들어 놓으면 percent(공.width, 70) 만 넣어주면 70%에 해당하는 수치를 반환해 줄 것이다.
소스)
import flash.events.Event;
import flash.display.Sprite;
import flash.filters.BlurFilter;
import flash.filters.BitmapFilterQuality;
var g:Number = 1;
var vy:Number = 8;
var vx:Number = 10;
var rot:Number = vx;
var _eclipse_sizeW:Number;
var bottom:Number = stage.stageHeight - (ball.height/2) - 20;
var _eclipse:Sprite = new Sprite();
_eclipse.graphics.beginFill(0x000000, 0.7);
_eclipse.graphics.drawEllipse(-ball.width/2, -20/2, ball.width, 20);
_eclipse.graphics.endFill();
_eclipse.x = ball.x;
_eclipse.y = bottom + (ball.height/2) + 10;
_eclipse_sizeW = ball.width * 70 / 100; //그림자는 볼의 70%사이즈
_eclipse.width = _eclipse_sizeW;
_eclipse_sizeW = percent(ball.width, 70);
_eclipse.width = _eclipse_sizeW;
var blur:BlurFilter = new BlurFilter(10, 5, BitmapFilterQuality.HIGH);
_eclipse.filters = [blur];
addChild(_eclipse);
var num:int = this.numChildren;
this.setChildIndex(ball, num-1);
//addChild(ball);
this.addEventListener(Event.ENTER_FRAME, function(e:Event):void{
vy += g;
ball.y += vy;
ball.x += vx;
ball.rotation += rot;
_eclipse.x = ball.x;
if( ball.x > stage.stageWidth - (ball.width/2) ) {
ball.x = stage.stageWidth - (ball.width/2);
vx = -vx;
rot = -rot;
}
if( ball.x < (ball.width/2) ) {
ball.x = ball.width/2;
vx = -vx;
rot = -rot;
}
if( ball.y > stage.stageHeight - (ball.height/2) ) {
ball.y = stage.stageHeight - (ball.height/2);
vy = -vy;
}
if( ball.y < (ball.height/2) ) {
ball.y = ball.height/2;
vy = -vy;
}
});
function percent($target:Number, $per:Number):Number
{
return $target * $per / 100;
}
21 : 일반적인 백분율로 표현한 모습
24 : percent 함수로 만들고 사용한 모습
결과)
'■ 개발관련 ■ > 산수와 알고리즘' 카테고리의 다른 글
| 포물선 운동과 공 step09:움직임과 위치를 랜덤하게 설정하기 (0) | 2014.08.31 |
|---|---|
| 포물선 운동과 공 step08:그림자의 투명도와 크기 변화 (0) | 2014.08.31 |
| 포물선 운동과 공 step06:그림자 따라다니기 (0) | 2014.08.31 |
| 포물선 운동과 공 step05:그림자 만들기 (0) | 2014.08.31 |
| 포물선 운동과 공 step04:공의 회전 (0) | 2014.08.31 |
댓글
step07.fla