2

Windows Phone 7 用の C# を使用してアプリを作成しています。コンパスを使用して、キブラの方向 (または希望する方向) を表示したいと考えています。どうすれば作れますか?現在地からラングと緯度を使用してキブラ方向の度数を計算できます (たとえば、結果は北から東へ 150 度です)。

しかし、その後、方向線を引くことができません。それは、私が望む方向ではなく、北を示しています。だから今、私は線を描くためにこのコードを使用しています:

magneticLine.X2 = magneticLine.X1 - (200 * Math.Sin(MathHelper.ToRadians((float)compassReading.MagneticHeading)));

magneticLine.Y2 = magneticLine.Y1 - (200 * Math.Cos(MathHelper.ToRadians((float)compassReading.MagneticHeading)));

これを作る方法を教えてください。ありがとう。

4

1 に答える 1

1

現在作成している方法では、画面の中心を原点として使用し、常に 200 ピクセルの長さの線をレンダリングしています。線を引く前に、角度の読み取り値を調整/改ざんする必要があります (そのため、線が正しい方向を指していません)。

また、正しいと思われる点が見つかったら、Windows Phone エミュレーターを使用して、メッカのカーバ神殿周辺に GPS ポイントをプロットします (つまり、カーバ神殿周辺にポイントの円を作成し、シミュレーションを実行します)。これにより、ソリューションが 360* 半径内の個人に対して正しく機能するかどうかを確認できます。

さらに、拡張現実に関するこのツールキットは、GPS の位置情報に基づいて方向を計算する際に、いくつかの計算を行うのに役立つ場合があります: http://gart.codeplex.com/

これが役立つことを願っています。上記を読んでもまだ行き詰まっている場合は、コードを書いて理解を深めることができます。

最後に、これを調べます: http://www.jeffblankenburg.com/2011/11/04/31-days-of-mango-day-4-compass/

これは、記事の下部でダウンロードできる、動作するソース コードを使用してコンパスを作成する方法に関するチュートリアルです。幸運を!

于 2012-12-12T17:03:20.983 に答える