Adding deg<->rad number conversion methods.

This commit is contained in:
Marco Lizza
2015-03-04 00:28:44 +01:00
parent 90aa43450b
commit 5007e1ff33

View File

@ -878,6 +878,11 @@ DEF_PRIMITIVE(num_cos)
RETURN_NUM(cos(AS_NUM(args[0]))); RETURN_NUM(cos(AS_NUM(args[0])));
} }
DEF_PRIMITIVE(num_deg)
{
RETURN_NUM(floor(AS_NUM(args[0]) * 57.2957795130823208768));
}
DEF_PRIMITIVE(num_floor) DEF_PRIMITIVE(num_floor)
{ {
RETURN_NUM(floor(AS_NUM(args[0]))); RETURN_NUM(floor(AS_NUM(args[0])));
@ -888,6 +893,11 @@ DEF_PRIMITIVE(num_isNan)
RETURN_BOOL(isnan(AS_NUM(args[0]))); RETURN_BOOL(isnan(AS_NUM(args[0])));
} }
DEF_PRIMITIVE(num_rad)
{
RETURN_NUM(floor(AS_NUM(args[0]) / 57.2957795130823208768));
}
DEF_PRIMITIVE(num_sin) DEF_PRIMITIVE(num_sin)
{ {
RETURN_NUM(sin(AS_NUM(args[0]))); RETURN_NUM(sin(AS_NUM(args[0])));
@ -1514,8 +1524,10 @@ void wrenInitializeCore(WrenVM* vm)
PRIMITIVE(vm->numClass, "abs", num_abs); PRIMITIVE(vm->numClass, "abs", num_abs);
PRIMITIVE(vm->numClass, "ceil", num_ceil); PRIMITIVE(vm->numClass, "ceil", num_ceil);
PRIMITIVE(vm->numClass, "cos", num_cos); PRIMITIVE(vm->numClass, "cos", num_cos);
PRIMITIVE(vm->numClass, "deg", num_deg);
PRIMITIVE(vm->numClass, "floor", num_floor); PRIMITIVE(vm->numClass, "floor", num_floor);
PRIMITIVE(vm->numClass, "isNan", num_isNan); PRIMITIVE(vm->numClass, "isNan", num_isNan);
PRIMITIVE(vm->numClass, "rad", num_rad);
PRIMITIVE(vm->numClass, "sin", num_sin); PRIMITIVE(vm->numClass, "sin", num_sin);
PRIMITIVE(vm->numClass, "sqrt", num_sqrt); PRIMITIVE(vm->numClass, "sqrt", num_sqrt);
PRIMITIVE(vm->numClass, "toString", num_toString); PRIMITIVE(vm->numClass, "toString", num_toString);