マーカーを配置する必要がある Winkel Tripel マップがあります。緯度/経度のマーカーの位置が与えられます。だから私はそれをX、Yに変換する方法が必要です。
いくつかのコード (以下) を見つけましたが、試してみると、45 度の対角線のプロットには適度な S カーブがあります。したがって、それは明らかに正しくありません。
どんな助けでも素晴らしいでしょう。これは PHP で行っていますが、任意の言語を変換できるはずです。
private function sinc($x){
if($x == 0) return 1;
return sin($x) / $x;
}
private function winkelTripelToCartesian($lat, $lng){
$lat = deg2rad($lat);
$lng = deg2rad($lng);
$alpha = acos(cos($lat) * cos($lng / 2));
$x = ($lng * M_2_PI + (2 * cos($lat) * sin($lng / 2)) / $this->sinc($alpha)) / 2;
$y = ($lat + (sin($lat) / $this->sinc($alpha))) / 2;
return array('x'=> strval($x), 'y' => strval($y));
}