슬라이딩 공식에서 일정한 수를 계속 더하고 곱해서 탄성 효과를 만들 수 있다. 선행되어야 할 값들 이동거리 : var dis:Number = 0; 목표값 : 최종 도착지점 현재값 : x혹은 y 속도 : n < 1 (기본값 0.3) 탄성계수 : n < 1 (기본값 0.55) 공식 이동거리 = (목표값 - 현재값) * 속도 + (이동거리 * 탄성계수); 현재값 += 이동거리 한줄로 쓰면 현재값+= 이동거리 = (목표값 - 현재값) * 속도 + (이동거리 * 탄성계수); import flash.events.Event; import flash.events.MouseEvent; import flash.utils.setTimeout; [SWF(frameRate = "30",width = "800",height = ..
이전에 설명한 공식에서, 도착 지점을 마우스 좌표로 바꿔주기만 하면 된다.import flash.events.Event; import flash.events.MouseEvent; [SWF(frameRate="30", width="800", height="600", backgroundColor="0x91A4AC")] mc.addEventListener(Event.ENTER_FRAME, loop); function loop(e:Event):void{ mc.x += (mouseX - mc.x) * 0.3; mc.y += (mouseY - mc.y) * 0.3; }
현재위치 = (목표위치 - 현재위치) x n (n 640) { setTimeout (function(){ mc.x = 0; mc.removeEventListener(Event.ENTER_FRAME, loop); }, 1000); } } 8: 마우스를 오버하면 실행 16: 공식적용 18: 도착지점은 650인데 객체mc가 x좌표 640을 넘게되면, 1초뒤 ENTER_FRAME을 remove시키고 mc객체를 다시 0으로 가져다 놓는다.
대부분의 프로그램 언어에는 Math.atan2 라는 아크탄젠트 메서드를 지원한다. 해당 메서드의 API는 다음과 같다. atan2() public static function atan2(y:Number, x:Number):Number 언어 버전: ActionScript 3.0 런타임 버전: AIR 1.0, Flash Player 9, Flash Lite 4 설명) y/x 점의 각도를 라디안 단위로 계산하여 반환합니다. 각도는 원의 x 축부터 반시계 방향으로 측정되며 원의 중심은 0,0입니다. 반환 값의 범위는 +pi에서 -pi 사이입니다. atan2의 첫 번째 매개 변수는 항상 y 좌표입니다. 매개 변수) y:Number — 점의 y 좌표입니다. x:Number — 점의 x 좌표입니다. 반환값) Numb..
이전에 작성한 삼각함수1 ~ 3편을 모두 읽고 직접 프로그램에 응용해 보자. 특정 점(point)에서 마우스가 움직일때마다 원의 형태로 객체가 rotation되는 프로그램을 만들어보자. 피타고라스의 정리를 이용하여 마우스까지의 거리를 구하고, 그 거리까지의 cos을 구하여 끼인각을 구한다. 끼인각은 라디안 단위 이므로 라디안을 다시 각도로 변환하는 공식을 구하여 객체에 대입한다. import flash.display.Sprite; import flash.display.Graphics; import flash.events.Event; import flash.display.Stage; [SWF(frameRate="30", width="550", height="420", backgroundColor="0xCC..
60분법 : 원주를 360등분한 것의 하나를 1도로 정한것. 수치를 직관적으로 이해하기 좋다는 장점. 임의로 지정한 단위라는 단점이 존재한다. 호도법 : 1rad를 기반으로 하는 호도법은 원의 반지름과 호의 길이를 기반으로 정의한 것으로 그러한 단점을 극복하였다. 라디안 : 1라디안은 반지름의 길이와 호의 길이가 같은 부채꼴의 끼인각의 크기를 말한다. 즉, 반지름(r)이 1이고, 원의 둘레 길이도 1일때의 각. 그림으로 보면 다음과 같다. 만일 반지름의 배수만큼 움직이면 라디안도 배수만큼 변한다. 2r = 2라디안 원의 전체 둘레 = 지름(2r) x ㅠ(파이) 원이 360도 회전을 할때 라디안(단위)의 값은 '2ㅠ' 가 된다. 즉 'ㅠ' 이면 180도 Math 메서드의 Radian단위의 값의 예) Mat..
*수정. 2016.05.08. calc 함수에서 dy = mouseX-rec_mc.x; 를dy = mouseY-rec_mc.y;로 수정됨. 제보 : 범이아빠님 ---------------------------------------------------------------------------------------------------------------- 삼각함수1. 피타고라스의 정리. 직각삼각형의 두 변 (인접변과 대변)의 제곱의 합은 빗변의 제곱근과 동일하다. a:인접변, b:대변, c:빗변 이 공식을 프로그래밍에 응용해 보자. 한점 rec_mc 가 있을때, rec_mc로 부터 마우스의 거리는 피타고라스의 공식을 응용하면 쉽게 구할수 있다. dx * dx + dy * dy = vLine * vLi..