̃eLXĝ̂́AShift-JISsR[hCR+LFŏĂ܂A
@vÕ\[XR[ht@C(*.java)́AUTF-8sR[hLF݂̂
@Ă܂ƂɒӂB

{vO̖ړI
E北qȞvZ̎̃vOł͂́A̎ړIƂĂ̂ł͂ȂB
@ĩTv́A2023N݃lbgeՂɓłBchatGPTĕԂĂBj
EIuWFNgwɂ鑽Ԑi|tH[tBYj𗘗pAėpAgeՐ̊m
@Ƃ́A̓IȎł͂ǂĂƂɂĐ藧̂A𗝉邱ƂłB
EJava̗pƂŁAȉ̎wKB
@W̃K[̎g
@WIȃvpeBt@C̎g

݌vj
EgpvO~ÓAJavaƂB
EASÝAʎOp@Vincenty's FormulaeƂ̂QƂAւ\
@悤ɍlBiXgeWp^[̗Kj
Eñf́ApӁi^AGRS80AWGS84ABessel...jAւ\
@悤ɍlBiaEGmainASYɃn[hR[hȂj
EASYƒnf͑aƂĂB

EJavaWAPIȊÓi̒̒NjLpȃNXCu݂Ă
@{ł̓vO~O̕׋̂߂ɁA͎gȂB
E삷NXɂāAuׂẴNXׂvƂĂC^tF[X
@(interface)̎ȗ邱ƂBi傽׋̎|Ƃ͈قȂ邽߁j
E̗O(exception)͒`ȂBJavaWAPIŒ`Ă̂̒
@KOgpB
EOifobOO܂ށj́Ajava.util.loggingpbP[WgpB
@(log4Jł͂ȂāBj

Emain() ̈i܂́Ast@Cւ̃p[^wjɂāAȉw肷̂ƂA
@w肪Ăꍇ̓G[ƂB(p[^̑啶E͋ʂȂj
@- direct Ainverse̎w
@- direct̏ꍇ́AɁAn_̈ʒuAʊpA
@- inversȅꍇ́AɁAn_̈ʒuAI_̈ʒu

@(jjava GreatArc direct 10.0N 135.0E 72.0 10000
@@@ java GreatArc inverse 10.0N 135.0E 40.0S 60.0W

Emain()vO̍ŏłP̂݁Anȉ~̂̋ۃNXAASY̋ۃNX
@ӎ̂̃\[XR[hł́AׂāAzC^tF[XANZXi\bh̎gpj
@邱ƂӎB
@̂ƂA{vOgԐi|[tBYj̗Ƌ̓I̖ړIłB
@
@ɁA炽ȏnȉ~̂уASYǉۂɁÃ\[XR[h
@ijƂȂAǉ̂Kpł悤ɂɂ́Aǂ̂悤ȎƂ̗̂K
@Bigp鏀nȉ~̂ƃASÝAO̐ݒt@CŎw肷邱ƂƂA
@main()ł͓Yݒt@CǂݍŁAꂼ̋ۃNX̃CX^X쐬B
@Javał邪䂦ɁA̎dg݂͎eՂłi͂jB

E[UC^tF[Xǂ邩́A{vO쐬̖ړIł͂Ȃ̂ŁAB
@iPȂR}hCvÔ܂܂ƂĂj

̒ӁEl_
E北qHi~qHj͉pł́Agreat circleƌ炵B
@AȐł͂ȂƂA͊arciʁjgp
@"great arc"ƌĂԂƂƂAvÕNXGreatArcƂĂB
EܓxAoxAAʊpȂǂ́A{xl^(double)gAvZ덷ɒӂKvłB
@i܂ߌ덷AjAeXgP[XpӂĐxĂꍇɂ̂
@řvẐǂŐxĂ邩l@邱ƂƂB
E{xĺAPȓlri==rZqł̔rj͊댯B
@l`A̐ΒlYli܂͈ȉjłƂɁAlƂ݂ȂB
@iႦ΁A0.1ϐƁAvZʂϐl0.1ł邩Ƃ̃eXgɂ͕sKB
@@A0.1ϐ0.1ʂ̕ϐ́AlrłľʂoBj
EOZǖʂ͓ɍlȂBJava{xϐł̂OŹuv̌vZʂoA
@OO͔ȂB
EVincenty̌vZ@ł́AɂȂꍇ݂B̏ꍇ͗O𔭐B
EܓxoxێNXł́AIɂ̓WAlێA
@ݒɂ́Aȉ̂Q񋟂ƂƂɁAێl̐ێB
@@Exij^B
@@ExijAijAbij^B
EK[ɊւĂ͂s낵B
@ɔY񂾂̂́AK[̏͂ǂŁiĵǂ̂Hƌ_B
@C++Ȃ΁AY܂ɃO[oϐiO[oIuWFNgjƂĂPA
@VOgp^[ARXgN^ɂďiݒjƂI񂾂
@낤BĩR[h́Amain()JnOɓ̂j
@ŁAJavaɂ̓O[oϐȂB
@ŁAŏ́AŏgetLogger()̌ĂяoɈx삳悤ɂĂ݂B
@̌Astatic blockȂ́iNX[hꂽ^C~OŃNXϐ邽
@ɓ삷R[hj݂̑mAvOł́A̗pĂB

NXAC^tF[X̃tXPb`
E@class LatLng EEEn_̈ܓxoxێNX
@@@@@@@@@@@@k܂𐳒lƂALl i-/2`/2WA [ -90.0` +90.0x]j
@@@@@@@@@@@@o𐳒lƂALl i-  `  WA [-180.0`+180.0x]j

E@abstract class EarthEllipsoid EEEaƝGԂ\bhB̓Il͋ۃNXŐݒB
E@@class PerfectSphere extends EarthEllipsoid   ^
E@@class Grs80         extends EarthEllipsoid   GRS80f
E@@class Wgs84         extends EarthEllipsoid   WGS84f
E@@class Bessel        extends EarthEllipsoid   Besself
@@Kvɉăf𑫂Ă

E@interface GreatArcAlg EEEdirectAinverse\bhiʉj
E@@class SphericalTrigo    implements GreatArcAlg   ʎOp@gp@
E@@class VincentyFormulae  implements GreatArcAlg   Vincenty's formulaegp@

E@class DirectResult   direct̉ƂĂ̕ԋpl iB_̈ʒuAB_n_ւ̕ʊpj
E@class InverseResult  inversẻƂĂ̕ԋpliAP_ڂ̕ʁAQ_ڂ̕ʂ̂Rlj

E@class GreatArcLogger {vO̊eNXɂĎgp郍K[т̐ݒꌳ邽߂ɗpӁB
@@@@@@@@@@@@ CX^X͐łȂBK[̎QƂ̕ԋpƃK[̑̂߂̐ÓI\bhB

E@ʁipj́A^k0xƂAv肪łBi0 ` 2΃WA[0`360x])

eXg̕j
Eyn@񋟂TCgȂǂ̌vZʂƓvǑvZʂ̔rȂA
@vǑvZʂÓ؂B
E̓_y܂ށzeXg{B
@- kɂ܂߂
@- ɂ܂߂
@- ԓ̒n_܂߂
@- o180xio180xj؂郋[gƂȂ悤ɂ
@- directɂāA^k̕ʊpw肷
@- directɂāA^̕ʊpw肷
@- directɂāAԓ̒n_^̕ʊpw肷
@- directɂāAԓ̒n_^̕ʊpw肷
@- directɂāAOw肷
@- inverseɂāAqߐ̂Q_w肷ioxȂ̂Qn_j
@- inverseɂāAԓ̂Q_w肷
@- inverseɂāAG_ƂȂQ_w肷
@- inverseɂāAG_ߖTƂȂQ_w肷
@- inverseɂāAPn_ڂƂQn_ڂɓn_w肷

̑iʂȂǁj
EJavaMathNX(java.lang.Math)ł̒萔`li̕\ʁj
	Math.PI = 3.141592653589793
	Math.E  = 2.718281828459045
EOp֐(sin, cos, tanȂ)̔{xϐł邪䂦̒`ł̔ωɑ΂l̕ω̍l@
