package Ġink applications . spon dee . spatial Ċ Ċ import Ġink applications . spon dee . structure .* Ċ import Ġkotlin . jvm . Jvm Inline Ċ import Ġkotlin . math . PI Ċ Ċ /** Ċ Ġ* ĠUnit Ġof Ġangle Ġor Ġbe aring . Ċ Ġ*/ Ċ @ Jvm Inline Ċ value Ġclass ĠAngle Ġinternal Ġconstructor ( override Ġval Ġraw Value : ĠDouble ): ĠDouble Measurement < Angle > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġstored Unit : ĠDouble Unit < Angle > Ġget () Ġ= ĠRad ians Ċ } Ċ Ċ object ĠRad ians : ĠStored Unit < Angle >( ĊĠĠĠ Ġsymbol Ġ= Ġ"" Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġof ( value : ĠNumber ): ĠAngle Ġ= ĠAngle ( value . toDouble ()) Ċ } Ċ Ċ object ĠDe grees : ĠDerived Unit < Angle >( ĊĠĠĠ Ġdefinition Ġ= ĠRad ians Ġ* Ġ( 1 8 0 . 0 Ġ/ ĠPI ), ĊĠĠĠ Ġsymbol Ġ= Ġ" Âº " Ċ ) Ċ Ċ /** Ċ Ġ* ĠConvert Ġa Ġcard inal Ġdirection Ġto Ġan Ġangle Ġin Ġdegrees Ġclock wise Ġfrom Ġ 0 Âº ĠNorth . Ċ Ġ*/ Ċ fun ĠAngle . to Nearest Card inal (): ĠCard inal Ġ{ ĊĠĠĠ Ġreturn Ġwhen Ġ{ ĊĠĠĠĠĠĠĠ Ġthis Ġ% ĠDe grees . of ( 3 6 0 ) Ġ<= ĠCard inal . North . to Angle () Ġ+ ĠDe grees . of ( 4 5 ) Ġ-> ĠCard inal . North ĊĠĠĠĠĠĠĠ Ġthis Ġ% ĠDe grees . of ( 3 6 0 ) Ġ<= ĠCard inal . East . to Angle () Ġ+ ĠDe grees . of ( 4 5 ) Ġ-> ĠCard inal . East ĊĠĠĠĠĠĠĠ Ġthis Ġ% ĠDe grees . of ( 3 6 0 ) Ġ<= ĠCard inal . South . to Angle () Ġ+ ĠDe grees . of ( 4 5 ) Ġ-> ĠCard inal . South ĊĠĠĠĠĠĠĠ Ġelse Ġ-> ĠCard inal . West ĊĠĠĠ Ġ} Ċ } Ċ