package Ġio . github . to mpl um . libs . math . point Ċ Ċ /** Ċ Ġ* ĠA ĠFour - Dimension al ĠPoint Ċ Ġ* Ġ@ param Ġx ĠThe Ġx - ord inate Ċ Ġ* Ġ@ param Ġy ĠThe Ġy - ord inate Ċ Ġ* Ġ@ param Ġz ĠThe Ġz - ord inate Ċ Ġ* Ġ@ param Ġw ĠThe Ġw - ord inate Ċ Ġ*/ Ċ data Ġclass ĠPoint 4 D ( val Ġx : ĠInt , Ġval Ġy : ĠInt , Ġval Ġz : ĠInt , Ġval Ġw : ĠInt ) Ġ: ĠPoint Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġ 8 0 Ġpoints Ġthat Ġare Ġadjacent Ġto Ġthe Ġcurrent Ġpoint . ĊĠĠĠĠ Ġ* Ġ@ return ĠThe Ġ 8 0 Ġadjacent Ġpoints . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġadjacent (): ĠList < Point 4 D > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthird Dimension Ġ= Ġget Third Dimension () ĊĠĠĠĠĠĠĠ Ġval Ġthird Ġ= Ġthird Dimension . adjacent (). map Ġ{ ĠPoint 4 D ( it . x , Ġit . y , Ġit . z , Ġw ) Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġabove Ġ= ĠPoint 4 D ( x , Ġy , Ġz , Ġw Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġabove Plane Ġ= Ġabove . get Third Dimension (). adjacent (). map Ġ{ ĠPoint 4 D ( it . x , Ġit . y , Ġit . z , Ġw Ġ+ Ġ 1 ) Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġbelow Ġ= ĠPoint 4 D ( x , Ġy , Ġz , Ġw Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġbelow Plane Ġ= Ġbelow . get Third Dimension (). adjacent (). map Ġ{ ĠPoint 4 D ( it . x , Ġit . y , Ġit . z , Ġw Ġ- Ġ 1 ) Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġthird Ġ+ Ġabove Ġ+ Ġabove Plane Ġ+ Ġbelow Ġ+ Ġbelow Plane ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Third Dimension () Ġ= ĠPoint 3 D ( x , Ġy , Ġz ) Ċ }