package Ġtur f kt Ċ Ċ import Ġgeo json kt .* Ċ Ċ import Ġkotlin . math . asin Ċ import Ġkotlin . math . atan 2 Ċ import Ġkotlin . math . cos Ċ import Ġkotlin . math . sin Ċ Ċ fun ĠPosition . destination ( distance : ĠDouble , Ġbe aring : ĠDouble , Ġunits : ĠString Ġ= Ġ" ki lo meters "): ĠPosition Ġ{ ĊĠĠĠ Ġval Ġr lon Ġ= Ġlongitude . to Radians () ĊĠĠĠ Ġval Ġr lat Ġ= Ġlatitude . to Radians () ĊĠĠĠ Ġval Ġr be aring Ġ= Ġbe aring . to Radians () ĊĠĠĠ Ġval Ġr distance Ġ= Ġlength To Radians ( distance , Ġunits ) ĊĊĠĠĠ Ġval Ġlat Ġ= Ġas in ( sin ( rl at ) Ġ* Ġcos ( r distance ) Ġ+ Ġcos ( rl at ) Ġ* Ġsin ( r distance ) Ġ* Ġcos ( r be aring )) ĊĠĠĠ Ġval Ġlon Ġ= Ġr lon Ġ+ Ġatan 2 ( sin ( r be aring ) Ġ* Ġsin ( r distance ) Ġ* Ġcos ( rl at ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcos ( r distance ) Ġ- Ġsin ( rl at ) Ġ* Ġsin ( lat )) ĊĊĠĠĠ Ġreturn ĠPosition ( lon . to Degrees (), Ġlat . to Degrees (), Ġelevation ) Ċ } Ċ Ċ @ Suppress (" NOTH ING _ TO _ INLINE ") Ċ inline Ġfun ĠPoint . destination ( distance : ĠDouble , Ġbe aring : ĠDouble , Ġunits : ĠString Ġ= Ġ" ki lo meters "): ĠPosition Ġ= ĊĠĠĠĠĠĠĠ Ġcoordinate . destination ( distance , Ġbe aring , Ġunits ) Ċ Ċ @ Suppress (" NOTH ING _ TO _ INLINE ") Ċ inline Ġfun ĠFeature < Point >. destination ( distance : ĠDouble , Ġbe aring : ĠDouble , Ġunits : ĠString Ġ= Ġ" ki lo meters ") Ġ= ĊĠĠĠĠĠĠĠ Ġgeometry . destination ( distance , Ġbe aring , Ġunits )