package Ġcom . your ss u . design . under car riage . draw Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Path Ċ import Ġandroid . graphics . Rect F Ċ import Ġcom . your ss u . design . under car riage . size . dp To Px ĊĊ Ċ interface ĠClip Radius Ġ{ ĊĠĠĠ Ġvar Ġrect : ĠRect F ĊĊĠĠĠ Ġfun ĠContext . getPath ( radius Dp : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Left : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Right : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbottom Right : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbottom Left : ĠBoolean ): ĠPath Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġradius Px Ġ= Ġthis . dp To Px ( radius Dp ) ĊĊĠĠĠĠĠĠĠ Ġval Ġpath Ġ= ĠPath () ĊĠĠĠĠĠĠĠ Ġval Ġradius Back Ġ= ĠFloat Array ( 8 ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( top Left ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 0 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 1 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( top Right ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 2 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 3 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( bottom Right ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 4 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 5 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( bottom Left ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 6 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Back [ 7 ] Ġ= Ġradius Px ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġpath . add Round Rect ( rect , Ġradius Back , ĠPath . Direction . CW ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġpath ĊĠĠĠ Ġ} Ċ }