XScript 매뉴얼 · Chapter 31
title: "MATH — 수학 함수" chapter: 31
MATH — 수학 유틸리티
MATH 는 삼각함수·거리·각도·비교 등 장비 제어에서 자주 쓰는 수학 함수를 모아둔
글로벌 객체입니다. 각도 기반 API 는 Degree 단위 가 기본입니다.
기본 예제
double x1 = 0.0;
double y1 = 0.0;
double x2 = 100.0;
double y2 = 100.0;
double dist = MATH.CalcDistance(x1, y1, x2, y2);
Log("DIST = {0}", dist);
double angle = MATH.CalcAngle(x1, y1, x2, y2);
Log("ANGLE = {0}", angle);
double a = 10.2;
double b = 9.3;
double min = MATH.Min(a, b);주요 메서드
삼각함수 (Degree)
| 시그니처 | 설명 |
|---|---|
double Sin(double deg) | Sine |
double Cos(double deg) | Cosine |
double Tan(double deg) | Tangent |
double Asin(double value) / Acos(double value) / Atan(double value) | 역 함수 |
double Atan2(double y, double x) | 사분면 고려 역탄젠트 |
기본 수학
| 시그니처 | 설명 |
|---|---|
double Abs(double value) | 절댓값 |
double Sqrt(double value) | 제곱근 |
double Pow(double base, double exp) | 거듭제곱 |
double Log10(double value) / Log(double value) | 로그 |
double Exp(double value) | 지수 |
double Round(double value, int digits = 0) | 반올림 |
double Ceiling(double value) / Floor(double value) | 올림/내림 |
비교 · 집합
| 시그니처 | 설명 |
|---|---|
double Min(double a, double b) / Max(double a, double b) | 최소/최대 |
double Clamp(double value, double min, double max) | 범위 고정 |
좌표 기하
| 시그니처 | 설명 |
|---|---|
double CalcDistance(double x1, double y1, double x2, double y2) | 두 점 거리 |
double CalcAngle(double x1, double y1, double x2, double y2) | 두 점 각도(°) |
double DegToRad(double deg) / RadToDeg(double rad) | 각도 변환 |
팁
- 삼각함수 기본은 Degree. Radian 이 필요하면
DegToRad로 먼저 변환. - 소프트 리미트·속도 제한에
Clamp를 적극 사용하면 조건문이 단순해짐. - 비교 연산에서 부동소수 오차가 걱정될 때는
MATH.Abs(a - b) < eps패턴.