package Ġsol a . ange l . geom 2 d Ċ Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠPoint Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` compute Ġdistance Ġto Ġanother Ġpoint `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġp Ġ= ĠPoint ( 1 . 0 , Ġ 2 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġq Ġ= ĠPoint ( 4 . 0 , Ġ 8 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠMath . sqrt ( 4 5 . 0 ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp . distance To ( q ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` interpolate Ġat Ġstart Ġpoint `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstart Ġ= ĠPoint ( 1 . 0 , Ġ 2 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġend Ġ= ĠPoint ( 3 . 0 , Ġ 6 . 0 ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart . interpolate ( end , ĠT Param . min ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` interpolate Ġat Ġend Ġpoint `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstart Ġ= ĠPoint ( 1 . 0 , Ġ 2 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġend Ġ= ĠPoint ( 3 . 0 , Ġ 6 . 0 ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġend , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart . interpolate ( end , ĠT Param . max ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` interpolate Ġbetween Ġtwo Ġpoints `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstart Ġ= ĠPoint ( 1 . 0 , Ġ 2 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġend Ġ= ĠPoint ( 3 . 0 , Ġ 6 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠPoint ( 2 . 0 , Ġ 4 . 0 ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart . interpolate ( end , ĠT Param . half ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` dis placed Ġa Ġvector Ġa Ġgiven Ġnumber Ġof Ġtimes `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġp Ġ= ĠPoint ( 1 . 0 , Ġ 3 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠVector . make ( 4 . 0 , Ġ 5 . 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠPoint ( 9 . 0 , Ġ 1 3 . 0 ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp . dis placed ( v , Ġ 2 . 0 ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }