コンテンツにスキップ

シーン

シーンについて

Mapray でデジタルツインサービスを開発する際に、複数のデータセットを使用することがあります。 これらのデータセットを管理するために「シーン」という概念が Mapray にあります。

scene-overview

「シーン」とは、場面や舞台を表します。複数のオブジェクト (データセット) をシーンに追加することで、一つの場面や舞台を作成することができます。 例えば、ゲームではステージがシーン、キャラクターや建物や道具などがオブジェクトに相当し、ステージ (シーン) の中にキャラクターや建物や道具など (オブジェクト) を複数配置することができます。 Mapray Cloud ではオブジェクトがデータセットであり、 シーンの中にデータセットを複数配置して、一つのシーンとして管理することができます。

シーンに配置されるデータセットのことを「シーンエンティティ」と呼びます。 「シーンエンティティ」は Mapray Cloud に登録した 2D、3D、点群などのデータセットの情報をもとに、シーン内に独立したオブジェクトを作成します。 データセットとシーンエンティティは親子関係にあり、データセットが親、 シーンエンティティが子になります。 シーンエンティティを編集、削除しても Mapray Cloud に登録しているデータセットには影響ありません。 また、シーンエンティティを複製した際、元のシーンエンティティを編集や削除をしても複製先のシーンエンティティは影響を受けません。
シーンに追加したデータセットは削除することができません。

現在は 3D データセット、Point Cloud データセット、Building データセット、Image データセットのみ対応しています。
以下のシーンエンティティの作成や編集などの操作では 3D データセットが必要になるため、3D データのアップロード をご参照頂きアップロードしてください。

シーンの利用例

通常、複数のデータセットをアプリケーションに追加する場合、ひとつずつコードを書いて追加する必要があります。 しかし、シーンを利用することで、複数のデータセットを一元管理することができ、アプリケーションにシーンを追加することで複数のデータセットをまとめて追加できます。

例えば、下の scene-sample では、1 つの 3D データセットからシーンエンティティを 3 つ作成しています。 シーン内では、同じ 3D データセットを異なる位置や向きで複数配置することができます。 scene-sample2 では、2 つの異なる 3D データセットからシーンエンティティを作成しています。

scene-sample scene-sample2
scene-sample scene-sample2

作成したシーンを最小構成のアプリケーションに追加し、表示した例を以下に示します。 左は scene-sample のみ、右は scene-sample と scene-sample2 を追加した場合の表示例をそれぞれ示しています。

1 つのシーンを追加 複数のシーンを追加
viewer-mono-scene viewer-multi-scene

このように、シーンを利用することで、複数のデータセットを簡単に管理、編集したり、アプリケーションに追加したりすることができます。

作成数の上限

Organization に紐づいたシーンの数に制限があります。
作成できるシーンの数は 1000 個です。

シーンの作成

  1. 「Scenes」ページの「New Scene」ボタンをクリックします。

    scene_01

  2. ダイアログが表示されたら、必要事項を入力します。
    入力が完了したら「OK」ボタンをクリックします。

    プロパティ
    Name 任意の名前を指定します。1文字以上128文字以下で入力してください。
    Description 任意の説明を指定します。300文字以下で入力してください。
    Origin 緯度、経度、標高でシーンの原点位置を指定します。

    scene_02

  3. 作成に成功したら、下記のようにメッセージが表示され、リストに新しい項目が追加されます。

    scene_03

シーンの編集

編集ページではシーンの編集、保存、ストーリー機能が利用できます。

  1. 編集したいシーンの編集アイコンをクリックします。

    scene_04

  2. 編集ページに遷移したら、右側の編集パネルで編集します。

    シーンエンティティの編集パネルが表示されているときは、地図上でシーンエンティティ以外をクリックするとシーンの編集パネルが表示されます。

    scene_05

DEM 設定

Standard DEM の表示・非表示、DEM データセットの追加・削除ができます。

DEM データセットの追加

  1. DEM Settings の追加アイコンをクリックします。

    scene_06

  2. ダイアログが表示されたら、データセットを選択します。

    scene_11

  3. データセットを選択したら、データセットの値が初期値として表示されます。

    入力が完了したら「OK」ボタンをクリックします。
    Name は追加したあとに変更できません。

    プロパティ 説明
    Name 任意の名前を指定します。1 文字以上 128 文字以下で入力してください。

    scene_12

環境設定

Environment Settings で空、太陽の光、月の光、星を設定できます。

プロパティ 説明
Atmosphere 大気の利用を設定します。空が表示できます。
Sun 太陽の表示を設定します。方角と角度を設定できます。
Moon 月の表示を設定します。方角と角度を設定できます。
Stars 星の表示を設定します。

シーンの保存

シーン、シーンエンティティ、ストーリーを保存します。
編集後、保存せずにページを離れると変更が保存されないので注意してください。

  1. 保存アイコンをクリックします。

    scene_07

  2. 確認ダイアログが表示されたら「OK」ボタンをクリックします。

    scene_08

シーンの削除

  1. 削除したいシーンの削除アイコンをクリックします。

    scene_09

  2. 確認ダイアログが表示されたら「OK」ボタンをクリックします。

    scene_10

シーンエンティティの管理

編集ページで「Scene」タブを選択するとシーンエンティティが管理できます。
保存をせずにページを離れると変更が保存されないのでご注意ください。
保存は シーンの保存 を参考にしてください。

シーンエンティティの作成

  1. 追加アイコンをクリックしたら、コンテキストメニューから追加したいシーンエンティティを選択します。

    scene_entity_01

  2. Dataset を選択したら、ダイアログで追加したいデータセットの種類、データセットを選択します。

    ※ データセットは変換処理が終了していないと表示されません。

    scene_entity_02

  3. データセットを選択したら、各プロパティの初期値が表示されます。

    入力が完了したら「OK」ボタンをクリックします。

    プロパティ
    Name 任意の名前を指定します。1 文字以上 128 文字以下で入力してください。
    Origin モデルを配置する場所を緯度・経度・標高で指定します。(3D データセットのみ)
    Rotation モデルの回転する方向を指定します。(3D データセットのみ)
    Scale モデルの縮尺比率を指定します。(3D データセットのみ)
  4. シーンエンティティが作成されたら、一覧にシーンエンティティが表示されます。

    scene_entity_03

  5. Pin を選択したら、追加したい場所を地図上でクリックします。

    追加できたら、一覧にシーンエンティティが表示されます。

    scene_entity_04

シーンエンティティの編集

  1. 編集したいシーンエンティティを一覧から選択して、右側の編集パネルで編集します。

    3D データセットと Pin は地図上のシーンエンティティをクリックしても選択できます。
    3D データセットは、地図上に矢印が表示されます。

    scene_entity_05

  2. 表示されている矢印をドラッグすると Position(位置)を変更することができます。
    編集パネルの操作モードを切り替えることで、Pivot(回転の中心点)、Rotation(回転)、Scale(縮尺)を変更することもできます。
    値が変更されると、3D データセットがリアルタイムで更新されて表示されます。

    プロパティ
    Name 任意の名前を指定します。1文字以上128文字以下で入力してください。
    Origin モデルを配置する場所を緯度・経度・標高で指定します。(3D データセットのみ)
    Rotation モデルの回転する方向を指定します。入力欄下のスライドバーでも値が変更できます。(3D データセットのみ)
    Scale モデルの縮尺比率を指定します。Link ボタンを押すとX 軸, Y 軸, Z 軸の値が同じになります。(3D データセットのみ)

    scene_entity_06

シーンエンティティの削除

  1. 削除したいシーンエンティティの削除アイコンをクリックします。

    scene_entity_07

  2. 確認ダイアログが表示されたら「OK」ボタンをクリックします。
    シーンエンティティが一覧から削除され、地図上の 3D データセットも削除されます。

    scene_entity_08

シーンエンティティのコピー

  1. コピーしたいシーンエンティティのコピーアイコンをクリックします。

    scene_entity_09

  2. 一覧に新しいシーンエンティティが追加され、地図上に 3D データセットが表示されます。 複製したため、元のシーンエンティティと同じ位置に重なって表示されます。

    scene_entity_10

ストーリー機能

ストーリー機能は、シーンの異なる視点や状態をスライドとして保存し、順番に表示できる機能です。
例えば、複数のカメラ位置を設定して、シーンを様々な角度から見ることができます。
編集ページで「Story」タブを選択するとストーリー機能が利用できます。
保存をせずにページを離れると変更が保存されないのでご注意ください。
保存は シーンの保存 を参考にしてください。

スライドの追加

  1. 追加アイコンをクリックすると、スライドが追加されます。

    一覧でスライドを未選択のとき、一番最後にスライドが追加されます。 一覧でスライドを選択したとき、選択したスライドをコピーして直後に追加されます。

    story_01

スライドの編集

  1. 編集したいスライドを一覧から選択して、右側の編集パネルで編集します。

    「Jump」ボタンをクリックすると、カメラが入力したパラメーターの位置に移動します。
    「Set Current」ボタンをクリックすると、現在のカメラ位置と向きが自動的に入力されます。

    プロパティ 説明
    Name 任意の名前を指定します。1 文字以上 128 文字以下で入力してください。
    Description 任意の説明を指定します。300 文字以下で入力してください。
    Position カメラを配置する場所を緯度・経度・高度で指定します。
    Rotation カメラの回転する方向を指定します。
    Entity Setting 追加したシーンエンティティの表示・非表示を指定します。

    story_02

スライドの削除

  1. 削除したいスライドの削除アイコンをクリックします。

    story_03

シーンの表示

例として、最小構成アプリケーションに Mapray Cloud に保存されたシーンを読み込む例を示します。
最小構成アプリケーションの html の <script> に下記のコードを追加します。
追加する場所は、 var viewer = new mapray.Viewer(...); の部分以降であればどこでも構いません。

// Mapray Cloud へのアクセス情報を生成します。
var maprayApi = new mapray.cloud.CloudApiV2({
  tokenType: mapray.cloud.CloudApi.TokenType.API_KEY,
  token: "<token>",
});

// Mapray Api を使ってリソースを定義します。
var resource = maprayApi.getSceneAsResource(["<id>"]);

// SceneLoader を使ってリソースを読み込みます。
var loader = new mapray.SceneLoader(viewer.scene, resource);
loader.load();

<token> については作成したトークンの値に変更してください。 また、<id> については、保存したシーンの ID に変更してください。

シーンエンティティを 3 つ用意し、それぞれの Position(位置)を以下の値に変更します。

  • longitude: 138.239, latitude: 35.654, Altitude: 2958.785
  • longitude: 138.245, latitude: 35.670, Altitude: 2867.169
  • longitude: 138.249, latitude: 35.654, Altitude: 2763.468

ブラウザで確認すると、下記のように複数の glTF モデルが表示されます。

viewer_scene