1

さて、床のイメージがあります。私がする必要があるのは、ユーザーの現在の場所を取得し、それを床の画像に表示することです。latとlonをピクセルに変換し、カスタムマップ上にポイントする必要があることはわかっています。

私はこのGPS座標を座標平面に変換しました。しかし、私はそれを正しく得ることができませんでした。程遠い。建物の面積が小さいからかもしれません(狭い面積で開発できるのではないかと思います)。そして、私は他の質問を調べました。その単なるハードコーディング。やりたくない。

したがって、誰かが私に論理的なアイデアやコードサンプル、またはチュートリアルを提供してくれると役に立ちます。何でもいいでしょう。前もって感謝します!!:-)

lat = 12.875538;
longitudeVal = 80.227112;

delta_lat = 0.0001;      // Adjust Y
delta_long = 0.0001;    // Adjust X 

/* length */ delta_x = 130; // 130 
/* width */ delta_y = 70;  // 70

vertical_scale = delta_y/delta_lat;
horizontal_scale = delta_x/(cos(lat)*delta_long);

/* lati */ x = (6378.1 * (1+sin(lat))/cos(lat));
/* long */ y = (6378.1 * longitudeVal); 

x = x / horizontal_scale;
y = y / vertical_scale;

/*    y = ((-1 * lat) + 90) * (delta_x / 180);
x = (longitudeVal + 180) * (delta_y / 360);*/

NSLog(@"lat %f long %f x %d y %d",lat,longitudeVal,x,y); 
4

1 に答える 1

0

非常に一般的なエラーを犯しているように見えます。緯度と経度は度で測定されますがsin、他の三角関数はラジアンで測定される引数を取ります。

他にも間違いを犯している可能性がありますが、どのように間違っているかを説明せずに、コードが間違っているとだけ言っても、多くの手がかりは得られません。

于 2012-08-16T07:10:57.990 に答える