2017-07-03 5 views
2

ARKitシーンの特定のポイントをタップすると、デバイスの位置に対するポイントのX、Y、Z座標が取得されます。私のデバイスとの関係だけでなく、地球上のポイントの絶対的な位置を知りたい。ARKitのポイントの絶対位置の取得

これまでのところ、私の論理は、デバイスの経度、緯度、高度、見出し(コンパス方向)、姿勢(回転)を取得し、それに基づいてポイントの絶対位置を計算することです。

これより簡単な方法があるのだろうか。

答えて

3

ARKitには、デバイスの位置を追跡したり、コンテンツを「絶対的な」地理空間座標に配置するための機能はありません。実際にそれをやって(そしてそれをうまくやって)いるのは難しい問題です...しかし、あなたを助けるいくつかのことがあります。

まず、ARSessionConfigurationworldAlignmentの設定を確認してください。デフォルトのgravityオプションでは、xとzの方向は、セッションを開始した時点のデバイスのオリジナルのという見出しを基準にしています。そこから地理空間座標に到達することは不可能です。

しかし、gravityAndHeadingオプションでは、軸は北/南および東/西に固定されます - ARKit座標系の原点の位置は、まだデバイスがセッションの開始位置にある相対的なものですが、絶対の。これは、地理空間座標に変換する/変換するための基礎を提供します。

しかし、依然として精度の問題があります。 ARKitは、数ミリメートルの距離まで、数ミリメートルの精度までフィーチャを追跡します。コアの位置は数メートルの精度でデバイスを追跡します。実際の機能があり、その上にバーチャルコンテンツを配置したいのであれば、ARKitスペースの緯度/経度に変換することができますが、コンテンツが本当に近くに並んでいない。

解決できない問題ではありませんが、簡単な問題ではありません。がんばろう!