/* Ċ Ġ* ĠCopyright Ġ 2 0 2 2 ĠL ars ĠT enn st ed t Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġio . github . lt enn st ed t . fin n math . geometry Ċ Ċ import Ġcom . google . common . annotations . Beta Ċ import Ġcom . google . error pr one . annotations . Immutable Ċ import Ġio . github . lt enn st ed t . fin n math . linear . field . BigDecimal Quot ient Field Ċ import Ġio . github . lt enn st ed t . fin n math . linear . field . Quot ient Field Ċ import Ġio . github . lt enn st ed t . fin n math . linear . vector . BigDecimal Vector Ċ import Ġorg . ap igu ard ian . api . API Ċ import Ġjava . math . BigDecimal Ċ import Ġjava . math . BigInteger Ċ Ċ /** Ċ Ġ* ĠImmutable Ġimplementation Ġof Ġa Ġpoint Ġwhich Ġuses Ġ[ Double ] Ġas Ġtype Ġfor Ġits Ġcoordinates Ċ Ġ* Ċ Ġ* Ġ@ property Ġx Ġx Ċ Ġ* Ġ@ property Ġy Ġy Ċ Ġ* Ġ@ constructor ĠConstructs Ġa ĠPoint Ċ Ġ* Ġ@ author ĠL ars ĠT enn st ed t Ċ Ġ* Ġ@ since Ġ 0 . 0 . 1 Ċ Ġ*/ Ċ @ API ( status Ġ= ĠAPI . Status . EXPERIMENT AL , Ġsince Ġ= Ġ" 0 . 0 . 1 ") Ċ @ Beta Ċ @ Immutable Ċ public Ġclass ĠBig Point ( ĊĠĠĠ Ġx : ĠBigDecimal , ĊĠĠĠ Ġy : ĠBigDecimal Ċ ) Ġ: ĠAbstract Point < BigDecimal , ĠBigDecimal Vector , ĠBig Point , ĠBigDecimal >( ĊĠĠĠ Ġx , ĊĠĠĠ Ġy Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġval Ġquot ient Field : ĠQu ot ient Field < BigDecimal , ĠBigDecimal , ĠBigDecimal Vector , Ġ*> ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠBigDecimal Quot ient Field ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConstructs Ġa ĠBig Point Ġfrom Ġ[ x ] Ġand Ġ[ y ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ since Ġ 0 . 0 . 1 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġconstructor ( x : ĠInt , Ġy : ĠInt ) Ġ: Ġthis ( x . to BigDecimal (), Ġy . to BigDecimal ()) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConstructs Ġa ĠBig Point Ġfrom Ġ[ x ] Ġand Ġ[ y ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ since Ġ 0 . 0 . 1 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġconstructor ( x : ĠLong , Ġy : ĠLong ) Ġ: Ġthis ( x . to BigDecimal (), Ġy . to BigDecimal ()) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConstructs Ġa ĠBig Point Ġfrom Ġ[ x ] Ġand Ġ[ y ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ since Ġ 0 . 0 . 1 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġconstructor ( x : ĠFloat , Ġy : ĠFloat ) Ġ: Ġthis ( x . to BigDecimal (), Ġy . to BigDecimal ()) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConstructs Ġa ĠBig Point Ġfrom Ġ[ x ] Ġand Ġ[ y ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ since Ġ 0 . 0 . 1 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġconstructor ( x : ĠDouble , Ġy : ĠDouble ) Ġ: Ġthis ( x . to BigDecimal (), Ġy . to BigDecimal ()) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConstructs Ġa ĠBig Point Ġfrom Ġ[ x ] Ġand Ġ[ y ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ since Ġ 0 . 0 . 1 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġconstructor ( x : ĠBigInteger , Ġy : ĠBigInteger ) Ġ: Ġthis ( x . to BigDecimal (), Ġy . to BigDecimal ()) ĊĊĠĠĠ Ġpublic Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ 0 ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ since Ġ 0 . 0 . 1 ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Field ĊĠĠĠĠĠĠĠ Ġpublic Ġval ĠZERO : ĠBig Point Ġ= ĠBig Point ( BigDecimal . ZERO , ĠBigDecimal . ZERO ) ĊĠĠĠ Ġ} Ċ } Ċ