2012. 8. 11. 11:24
안드로이드 - Math 삼각함수 기본 안드로이드 이야기2012. 8. 11. 11:24
728x90
반응형
안드로이드 - Math 삼각함수 기본
출처: http://butterguy.tistory.com/
개발시 특히 AS3로 개발하는 것은 보통 UI나 front 단계가 많이 있다... 앞으로 Math를 변형하거나 개량한 NumberUtilies클래스에 들어가기게 앞서 Math클래스를 간단하 살펴보고 넘어가도록 한다.
Math클래스는 상수로서 어디서든 delegate없이 사용이 가능하며 수학적 함수나 값을 표현하는 메서드들로 구성되어있다.
sin = b/c -> b = sin * c : y좌표를 구할 수 있다.
cos = a/c -> a = cos * c : x좌표를 구할 수 있다.
그림처럼 높이 b는 y축에 관한 값을 구할 수 있고 밑변 a는 x축의 값을 구할 수 있다.
소스)
var degree:int = 0;
this.addEventListener( Event.ENTER_FRAME, onEnter);
function onEnter ( e:Event ):void
{
var radian:Number = degree * Math.PI/180 ; //radian 값 구하기
mc.x = 200 + 150*Math.cos ( radian ); //x축 200 반지름 150, radian만큼 Math.cos
mc.y = 200 + 150*Math.sin ( radian ); //y축 200 반지름 150, radian 만큼 Math.sin
degree++; //증가
}
고딩때 학습했었던...cos와 sin의 움직임을 비교해 봐야겠다...
물리학자가 된 기분이다 ㅋ... 점점 미쳐가고 있다.
소스)
var t:Number = 0;
this.addEventListener( Event.ENTER_FRAME, onEnter);
function onEnter ( e:Event ):void
{
//cos와 sin의 비교.
mc.x = 200 + 150*Math.cos ( t );
mc2.x = 200 + 150*Math.sin ( t );
t = t + .1;
}
개발시 특히 AS3로 개발하는 것은 보통 UI나 front 단계가 많이 있다... 앞으로 Math를 변형하거나 개량한 NumberUtilies클래스에 들어가기게 앞서 Math클래스를 간단하 살펴보고 넘어가도록 한다.
Math클래스는 상수로서 어디서든 delegate없이 사용이 가능하며 수학적 함수나 값을 표현하는 메서드들로 구성되어있다.
* 라디안 값을 계산하려면 다음 공식을 사용합니다.
radians = degrees * Math.PI/180
* 라디안에서 각도를 계산하려면 다음 공식을 사용합니다.
degrees = radians * 180/Math.PI
다음 예제에서는 45도 각도의 사인을 계산하기 위해 수식을 매개 변수로 전달합니다.
이 공식은 Math
.sin(45 * Math.PI/180)
공식과 같습니다.Math
.sin(.7854)
어떠한 객체를 회전운동하고 싶을 때는 원의 자취를 구하는 식을 이용하면 된다.
이는 sin과 cos을 이용하여 기본적인 삼각비를 구한다.
sin = b/c -> b = sin * c : y좌표를 구할 수 있다.
cos = a/c -> a = cos * c : x좌표를 구할 수 있다.
그림처럼 높이 b는 y축에 관한 값을 구할 수 있고 밑변 a는 x축의 값을 구할 수 있다.
소스)
var degree:int = 0;
this.addEventListener( Event.ENTER_FRAME, onEnter);
function onEnter ( e:Event ):void
{
var radian:Number = degree * Math.PI/180 ; //radian 값 구하기
mc.x = 200 + 150*Math.cos ( radian ); //x축 200 반지름 150, radian만큼 Math.cos
mc.y = 200 + 150*Math.sin ( radian ); //y축 200 반지름 150, radian 만큼 Math.sin
degree++; //증가
}
고딩때 학습했었던...cos와 sin의 움직임을 비교해 봐야겠다...
물리학자가 된 기분이다 ㅋ... 점점 미쳐가고 있다.
소스)
var t:Number = 0;
this.addEventListener( Event.ENTER_FRAME, onEnter);
function onEnter ( e:Event ):void
{
//cos와 sin의 비교.
mc.x = 200 + 150*Math.cos ( t );
mc2.x = 200 + 150*Math.sin ( t );
t = t + .1;
}
728x90
반응형
'안드로이드 이야기' 카테고리의 다른 글
안드로이드 - drag & drop으로 아이템 이동시키는 GridView (0) | 2012.08.11 |
---|---|
안드로이드 - 캘린더 소스코드 (0) | 2012.08.11 |
안드로이드 - 스크린샷 소스코드 (0) | 2012.08.11 |
안드로이드 - 현재 화면을 그림으로 저장 (0) | 2012.08.11 |
안드로이드 - 스마트폰 아이콘 500개 모음 (0) | 2012.08.11 |