太陽系(ロケーションベース型AR)

太陽系(画像認識型AR)サンプルと同様に、このサンプルも太陽系の惑星を表示しますが、ロケーションベース型ARを使用してユーザーの近辺に惑星を配置します。

サンプルのスクリーンショット

各惑星の詳細情報はinit()関数で定義します。惑星を妥当な大きさにするためにスケーリング係数が定義され、すべての惑星がplanetsInfo配列に格納されています。

/* put sun, planets (and pluto) in an array */
    this.planetsInfo = [sun, mercury, venus, earth, mars, jupiter, saturn, uranus, neptun, pluto];
ソースコードをGitHubで見る

各惑星は、画像と名前を含むAR.GeoObjectによって拡張されています。各惑星のAR.GeoObjectは、ユーザーの位置を基準として拡張オブジェクトを配置できるように、AR.RelativeLocationを使用して配置されます。したがって、ユーザーの現在位置の実際の緯度と経度にかかわらず、北方向に太陽系を配置できます。

太陽のAR.GeoObjectにはインジケーターが付いており、ユーザーは"正しい"方向を見るように絶えず誘導されます。

惑星のアニメーションは3Dモデルサンプルに似ており、AR.AnimationGroupを使用して集約された複数のAR.PropertyAnimationによって円運動が構成されています。これらの移動する天体のアニメーションはanimate(planet)関数によって作成しています。

これも3Dモデルサンプルと同様に、onClickトリガーに割り当てられたplanetClicked()関数によって惑星の情報をカメラビューに表示します。