Definición
$degreesToRadiansConvierte un valor de entrada medido en grados a radianes.
$degreesToRadianstiene la siguiente sintaxis:{ $degreesToRadians: <expression> } $degreesToRadianstoma cualquier válido expresión que se resuelve en un número.De forma predeterminada, devuelve
$degreesToRadiansvaloresdoublecomo. también puede$degreesToRadians128devolver valores como un decimal de bits siempre que se<expression>resuelva en un 128valor decimal de bits.Para obtener más información sobre las expresiones, consulta Expresiones.
Comportamiento
null, NaN y +/- Infinity
Si el argumento resuelve a un valor de null o hace referencia a un campo que falta, $degreesToRadians devuelve null. Si el argumento se resuelve como NaN, $degreesToRadians devuelve NaN. Si el argumento se resuelve como infinito negativo o positivo, $degreesToRadians negativo o positivo infinito, respectivamente.
Ejemplo | Resultados |
|---|---|
|
|
|
|
|
|
|
|
Ejemplo
La colección trigonometry contiene un documento que contiene tres ángulos medidos en grados:
{ "angle_a" : Decimal128("53.13010235415597870314438744090659"), "angle_b" : Decimal128("36.86989764584402129685561255909341"), "angle_c" : Decimal128("90") }
La siguiente operación de agregación utiliza la expresión para convertir cada valor a su equivalente en $degreesToRadians $addFields radianes y agregarlos al documento de entrada utilizando la etapa de canalización.
db.trigonometry.aggregate([ { $addFields: { "angle_a_rad" : { $degreesToRadians : "$angle_a"}, "angle_b_rad" : { $degreesToRadians : "$angle_b"}, "angle_c_rad" : { $degreesToRadians : "$angle_c"} } } ])
La operación devuelve el siguiente documento:
{ "_id" : ObjectId("5c50aec71c75c59232b3ede4"), "angle_a" : Decimal128("53.13010235415597870314438744090660"), "angle_b" : Decimal128("36.86989764584402129685561255909341"), "angle_c" : Decimal128("90"), "angle_a_rad" : Decimal128("0.9272952180016122324285124629224290"), "angle_b_rad" : Decimal128("0.6435011087932843868028092287173227"), "angle_c_rad" : Decimal128("1.570796326794896619231321691639752") }
Dado angle_a que, angle_b y angle_c se almacenan como 128decimales de bits, la salida de es $degreesToRadians un 128decimal de bits.