package Ġcom . m ata design s . spot light . utils Ċ Ċ import Ġandroid . graphics . Point Ċ import Ġandroid . graphics . PointF Ċ import Ġandroid . graphics . Rect Ċ import Ġandroid . graphics . Rect F Ċ import Ġandroid . view . View Ċ import Ġandroidx . core . graphics . to PointF Ċ import Ġandroidx . core . graphics . to Rect F Ċ Ċ class ĠSpot light Math Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠGet Ġthe Ġtop Ġleft Ġposition Ġfor Ġthe Ġgiven Ġview Ġrelative Ġto Ġthe Ġscreen . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġview ĠThe Ġview Ġyou Ġwant Ġthe Ġpoint Ġon Ġthe Ġscreen Ġfor . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThe Ġtop Ġleft Ġposition Ġof Ġthe Ġview Ġas Ġa Ġpoint Ġon Ġthe Ġscreen ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġpoint On Screen ( view : ĠView ): ĠPoint Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlocation Ġ= ĠInt Array ( 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . getLocation On Screen ( location ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠPoint ( location [ 0 ], Ġlocation [ 1 ]) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠGet Ġthe Ġtop Ġleft Ġposition Ġfor Ġthe Ġgiven Ġview Ġrelative Ġto Ġthe Ġscreen . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġview ĠThe Ġview Ġyou Ġwant Ġthe Ġpoint Ġon Ġthe Ġscreen Ġfor . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThe Ġtop Ġleft Ġposition Ġof Ġthe Ġview Ġas Ġa Ġpoint Ġon Ġthe Ġscreen ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġpoint FO n Screen ( view : ĠView ): ĠPoint F Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġpoint On Screen ( view ). to PointF () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠGet Ġthe Ġview 's Ġrect Ġrelative Ġto Ġthe Ġscreen . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġview ĠThe Ġview Ġyou Ġwant Ġthe Ġrect Ġon Ġthe Ġscreen Ġfor . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThe Ġrect Ġfor Ġthe Ġview Ġrelative Ġto Ġthe Ġscreen . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġrect On Screen ( view : ĠView ): ĠRect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscreen Point Ġ= Ġpoint On Screen ( view ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRect ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Point . x , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Point . y , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Point . x Ġ+ Ġview . width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Point . y Ġ+ Ġview . height ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠGet Ġthe Ġview 's Ġrect Ġrelative Ġto Ġthe Ġscreen . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġview ĠThe Ġview Ġyou Ġwant Ġthe Ġrect Ġon Ġthe Ġscreen Ġfor . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThe Ġrect Ġfor Ġthe Ġview Ġrelative Ġto Ġthe Ġscreen . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġrect FO n Screen ( view : ĠView ): ĠRect F Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġrect On Screen ( view ). to Rect F () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }