ActionScript 3
기하학 작업
수색…
두 점 사이의 각도 구하기
바닐라 수학 사용 :
var from:Point = new Point(100, 50);
var to:Point = new Point(80, 95);
var angle:Number = Math.atan2(to.y - from.y, to.x - from.x);
처음 두 개 사이의 차이를 나타내는 새 벡터 사용 :
var difference:Point = to.subtract(from);
var angle:Number = Math.atan2(difference.y, difference.x);
참고 :
atan2()
는 각도가 아닌 라디안을 반환합니다.
두 점 사이의 거리 구하기
바닐라 수학 사용 :
var from:Point = new Point(300, 10);
var to:Point = new Point(75, 40);
var a:Number = to.x - from.x;
var b:Number = to.y - from.y;
var distance:Number = Math.sqrt(a * a + b * b);
Point
inbuilt 기능 사용 :
var distance:Number = to.subtract(from).length; // or
var distance:Number = Point.distance(to, from);
라디안을도 단위로 변환
var degrees:Number = radians * 180 / Math.PI;
도를 라디안으로 변환
var radians:Number = degrees / 180 * Math.PI;
도 및 라디안 단위의 원 값
- 전체 원은
360
도 또는Math.PI * 2
라디안입니다. - 이 값의 절반은
180
도 또는Math.PI
라디안입니다. - 다음 분기는
90
도 또는Math.PI / 2
라디안입니다.
세그먼트를 라디안 단위로 전체 원의 비율로 표시하려면 다음을 수행하십시오.
function getSegment(percent:Number):Number {
return Math.PI * 2 * percent;
}
var tenth:Number = getSegment(0.1); // One tenth of a circle in radians.
점을 따라 점 이동하기
이동하려는 각도와 이동하려는 x
및 y
값을 가진 객체가 있다고 가정합니다.
var position:Point = new Point(10, 10);
var angle:Number = 1.25;
Math.cos
를 사용하여 x
축을 따라 이동할 수 있습니다.
position.x += Math.cos(angle);
그리고 Math.sin
가진 y
축 :
position.y += Math.sin(angle);
물론 Math.cos
와 Math.sin
의 결과에 여행하려는 거리를 곱할 수 있습니다.
var distance:int = 20;
position.x += Math.cos(angle) * distance;
position.y += Math.sin(angle) * distance;
참고 : 입력 각도는 라디안이어야합니다.
점이 사각형 영역 안에 있는지 확인합니다.
Rectangle.containsPoint()
사용하여 점이 사각형 안에 있는지 테스트 할 수 있습니다.
var point:Point = new Point(5, 5);
var rectangle:Rectangle = new Rectangle(0, 0, 10, 10);
var contains:Boolean = rectangle.containsPoint(point); // true
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow