概要
このページでは、ARタスクサポートコンテンツを記述するために定義された独自のフォーマットについて説明します。
Version 1.0
ARTSAML Elements
ARTSAML要素は、コンテンツ記述フォーマット全体の要素を含む要素である。
- Version Element:
- Title Element:
- ContentDescription Element:
- Global Element: Global要素には、メインパネルの情報とオブジェクト座標系に関する情報を記述する。
- Section Element, and Step Element: ARコンテンツの各ステップ、セクションの情報を記述する。セクションはステップの上位階層にあたるため、Section要素の一つ下の階層にStep要素を記述する。Section要素およびStep要素は、ARコンテンツのセクション数・ステップ数分用意する。作成するARコンテンツにセクションがなくステップのみで構成される場合、Section要素がなくなり、Step要素がGlobal要素と同じ階層になる。
Version Element
Version要素には、コンテンツ記述フォーマットのバージョンをString型で記述する。
Title Element
Title要素には、作成するARコンテンツのタイトルをString型で記述する。
Content Description Element
ContentDescription要素には、作成するARコンテンツの説明をString型で記述する。
Global Element
Global要素には、メインパネルの情報とオブジェクト座標系に関する情報を記述する。
MainPanel Element
MainPanel要素には、メインパネルの初期の座標系、変更可能な座標系、初期位置を記述する。
InitialCoordinateMainPanel element
InitialCoordinateMainPanel要素には、システム起動時にメインパネルを固定するのに用いる座標系を指定する。固定したい座標系がオブジェクト座標の場合はObjectNameタグ内にオブジェクト座標系の名前を記述し、スクリーン座標系の場合は「Screen」 、SLAM標系の場合は「SLAM」と記述する。
AvailabilityCoordinateMainPanel element
AvailableCoordinateMainPanel要素には、作業中に作業者が切り替えることで利用可能となる座標系を指定する。
ObjectCoordinate element
オブジェクト座標系に切り替え可能にしたい場合、オブジェクト座標系の名前を記述し、切り替えたいオブジェクト座標系が複数個ある場合は複数個オブジェクト座標系を記述する。
Screen Element
スクリーン座標系に切り替え可能にしたい場合はScreenタグ内に「true」、スクリーン座標系に切り替える必要のない場合は「false」を記述する。
SLAM element
SLAM座標系に切り替え可能にしたい場合はSLAMタグ内に「true」、SLAM座標系に切り替える必要のない場合は「false」を記述する。
Transform Element
Transform要素には、メインパネルを配置する位置や大きさ、3Dモデルを配置する位置や大きさ、サブパネルを配置する位置や大きさを記述する。
Position element
Position要素には、位置座標を記述する。
Pos_x element
Pos_x要素には、位置座標のx座標の数値を記述する。単位はメートル。
Pos_y element
Pos_y要素には、位置座標のy座標の数値を記述する。単位はメートル。
Pos_z element
Pos_z要素には、位置座標のz座標の数値を記述する。単位はメートル。
Rotation Element
Rotation要素には、傾き(オイラー角)を記述する。
Rot_x Element
Rot_x要素には、x座標方向の傾き(オイラー角)を記述する。単位は度。
Rot_Y Element
Rot_y要素には、y座標方向の傾き(オイラー角)を記述する。単位は度。
Rot_Z Element
Rot_z要素には、z座標方向の傾き(オイラー角)を記述する。単位は度。
Scale Element
Scale要素には、スケールを記述する。
Scl_x Element
Scl_x要素には、x座標方向のスケールを記述する。
Scl_Y Element
Scl_y要素には、y座標方向のスケールを記述する。
Scl_Z Element
Scl_z要素には、z座標方向のスケールを記述する。
ObjectAlignment Elements
ObjectAlignment要素には、オブジェクト座標系の名前やアライメントの手法、アライメントに必要な情報を記述する。ObjectAlignment要素は、作成するARコンテンツが使用するオブジェクト座標系分だけ用意する。
- ObjectCoordinate Element:
- AlignModel Element:
- MarkerType Element:
- QRcodeMarkerData Element: オブジェクトの位置座標を取得するために利用するARマーカーとして、QRコードを利用する場合に、そのQRコードの文字列をString型で記述する。
- (ImageMarkerData Element): Markerを利用して位置座標を取得するアライメントに画像を利用する場合、利用する画像のURLを記述する(現在は未実装)。
AlignModel element
3Dモデルを実際のオブジェクトに重ね合わせることで位置座標を取得するアライメント方法をマニュアルアライメントと呼ぶ。AlignModel要素には、マニュアルアライメントに使用する3Dモデルの詳細な情報を記述する。
- AlignModelName Element:
- AlignModelURL Element:
- Transform Element: Transform要素には、AlignModelを固定する初期位置を記述する。また、SLAM座標系に即した数値で記述する。
- ButtonPin Element: マニュアルアラインメント時に3Dモデルを実際のオブジェクトに合わせた後、位置座標の取得を開始するためのボタン式のUIをButtonPinと呼ぶ。ButtonPin要素には、ButtonPinを表示させる座標を指定したい場合、その位置座標の情報を記述する。 ButtonPinの位置座標を指定する必要のない場合は、この要素を記述する必要はない。デフォルトではアライメントモデルの右上に表示させる。
AlignModelName element
AlignModelName要素には、マニュアルアライメントに使用する3Dモデルの名称をString型で記述する。
AlignModelURL element
AlignModelURL要素には、マニュアルアライメントに使用する3Dモデルの保存先URLをString型で記述する。
MarkerType elements
QRコードや画像データをARマーカーとして、オブジェクトの位置座標をトラッキングする場合、MarkerType要素を用いる。MarkerType要素には、その位置座標を追従し続ける場合「TrackableMarker」を、その位置座標を一度だけ利用し、その後は追従させない場合「UnTrackableMarker」を記述する。
QRCodeMarkerData elements
オブジェクトの位置座標を取得するために利用するARマーカーとして、QRコードを利用する場合に、そのQRコードの詳細な情報を記述する。
QRCodeCharacter element
利用するQRコードの文字列をString型で記述する。
MARKERSIZE element
利用するQRコードのマーカーサイズを指定したい場合、そのサイズを記述する。
ImageMarkerData element
オブジェクトの位置座標を取得するために利用するARマーカーとして、画像を利用する場合に、その画像の詳細な情報を記述する。
ImageMarkerURL element
利用する画像の保存URLをString型で記述する。
ButtonPin Element
AlignModelを実際のオブジェクトに重ね合わせた後に、位置座標の取得を開始するボタン上のインターフェースをピンボタンと呼ぶ。ButtonPin要素には、ピンボタンの位置座標を指定したい場合、位置座標の情報を記述する。ピンボタンの位置座標を指定する必要のない場合は、この要素を記述する必要はない。
- Transform Element: Transform要素には、ピンボタンを固定する初期位置を記述する。また、初期位置はSLAM座標系に即した数値で記述する。
Section Element
Section要素には、各セクションに関する情報を記述する。
SectionID Element
SectionID要素には、セクションの数や順番を管理するために、セクションごとに割り振られるIDをint型で記述する。
SectionName element
SectionName要素には、セクションのタイトルをString型で記述する。
Step Element
Step要素には、そのステップに関する情報を記述する。
- StepID Element:
- StepName Element:
- MainPanelContent Element: MainPanelContent要素には、そのステップ作業中に表示するメインパネルに関する情報を記述する。
- SubPanel Element: そのステップ内のメインパネル以外で使用するテキスト、画像、動画等を表示するパネルをサブパネルと呼ぶ。SubPanel要素には、ステップ内で使用するサブパネルに関する情報を記述する。SubPanel要素は各サブパネルに対して記述する。
- ThreeDModel Element: ThreeDModel要素には、そのステップ内で使用する3Dモデルに関する情報を記述する。ThreeDModel要素は各3Dモデルに対して記述する。
- PointerRope Element: 作業中にオブジェクトやパネルの位置座標を作業者にわかりやすく伝えるために、2つのオブジェクトをつなぐ線のようなAR表示をポインターロープと呼ぶ。PointerRope要素には、ポインターロープに関する情報を記述する。PointerRope要素は各ポインターロープに対して記述する。
StepID Element
StepID要素には、ステップの数や順番を管理するために、ステップごとに割り振られるIDをint型で記述する。
StepNAME Element
StepName要素には、そのステップのタイトルをString型で記述する。
MainPanelContent element
MainPanelContent要素には、そのステップ作業中に表示するメインパネルに関する情報を記述する。
Text Element
Text要素には、そのステップ内で表示するメイン(サブ)パネルの作業内容を表す文章をString型で記述する。
MEdia Element
Media要素には、そのステップ内表示するメイン(サブ)パネルに使用される画像や動画に関する情報を記述する。
IMAgeURL Element
ImageURL要素には、そのステップ内表示するメイン(サブ)パネルに使用される画像のデータのURLを記述する。
VideoURL Element
VideoURL要素には、そのステップ内表示するメイン(サブ)パネルに使用される動画のデータのURLを記述する。
SubPanel Element
SubPanel要素には、ステップ内で使用するサブパネルに関する情報を記述する。SubPanel要素はサブパネルの個数分記述する。
- SubPanelName Element:
- Text Element:
- Media Element: Media要素には、そのサブパネルで表示したい画像や動画に関する情報を記述する。そのサブパネルに画像や動画を使用しない場合、Media要素を記述する必要はない。
- Coordinate Element: Coordinate要素には、そのサブパネルを固定する座標系を選択し、記述する。
- Transform Element: Transform要素には、サブパネルの初期位置座標を記述する。また、初期位置はCoordinate要素で選択した座標系に即した数値で記述する。
- Description Element:
- Manipulable Element: Manipulable要素には、そのサブパネルが作業者によって、移動や回転、サイズ変更が可能かどうかの有無を記述する。
SubPanelName element
SubPanelName要素には、そのサブパネルの名称を記述する。
Description element
Description要素には、そのサブパネルがどういう意図で利用されるかなど、サブパネル自体の説明分を記述する。システム作成者がデバイスを装着して、そのサブパネルを任意の場所に配置する作業を行う際に、作成者を支援するために利用される。
ThreeDModel Element
ThreeDModel要素には、そのステップ内で使用する3Dモデルに関する情報を記述する。ThreeDModel要素は3Dモデルの個数分記述する。
- ThreeDModelName Element:
- Coordinate Element: Coordinate要素には、その3Dモデルを固定する座標系を選択し、記述する。
- Transform Element: Transform要素には、3Dモデルの初期位置座標を記述する。また、初期位置はCoordinate要素で選択した座標系に即した数値で記述する
- Description Element: Description要素には、その3Dモデルがどのような意図で利用されるかなど、3Dモデル自体の説明分を記述する。システム作成者がデバイスを装着して、その3Dモデルを任意の場所に配置する作業を行う際に、作成者を支援するために利用される。
- Manipulable Element: Manipulable要素には、その3Dモデルが作業者によって、移動や回転、サイズ変更が可能かどうかの有無を記述する。
ThreeDModelName Element
ThreeDModelName要素には、その3Dモデルの名称を記述する。
InitialCoordinateMainPanel要素やAvailableCoordinateMainPanel要素、Coordinate要素で使用されるObjectNameで、この3Dモデルを指定したい場合は、ObjectNameにこのThreeDModelName要素を記述する。
Manipulable element
Manipulable要素には、そのARオブジェクトが作業者によって、移動や回転、サイズ変更が可能かどうかの有無を記述する。
PositionManipulable Element
PositionManipulable要素には、そのARオブジェクトが作業者によって移動可能か否かの有無をbool型で記述する。移動可能な場合、trueを記述する。
RotationManipulable element
RotationManipulable要素には、そのARオブジェクトが作業者によって回転可能か否かをbool型で記述する。回転可能な場合、trueを記述する。
ScaleManipulable Element
ScaleManipulable要素には、そのARオブジェクトが作業者によりサイズ変更可能か否かをbool型で記述する。サイズ変更可能な場合、trueを記述する。
Coordinate Element
Coordinate要素には、そのARオブジェクトを固定する座標系を選択し、記述する。固定したい座標系がオブジェクト座標の場合は、オブジェクト座標系の名前をObjectCoordinateタグ内に記述し、スクリーン座標系の場合は「Screen」 、SLAM座標系の場合は「SLAM」と記述する。
PointerRope Element
作業中にオブジェクトやパネルの位置座標を作業者にわかりやすく伝えるために、2つのオブジェクトをつなぐ線のようなAR表示をポインターロープと呼ぶ。PointerRope要素には、ポインターロープに関する情報を記述する。PointerRope要素はポインターロープの個数分記述する。
- PointerRopeName:
- Start Element: Start要素には、ポインターロープの始点の情報を記述する。
- End element: End要素には、ポインターロープの終点の情報を記述する。
PointerRopename Element
PointerRopeName要素には、そのポインターロープの名称を記述する。
Start Element
Start要素には、ポインターロープの始点の情報を記述する。
- Target Element: Target要素には、そのポインターロープの始点が固定されるオブジェクト座標系の名称または、サブパネルや3Dモデルの名称を記述する。
- Position Element: Position要素には、そのポインターロープの始点の位置座標を記述する。また、Target要素で記述した座標系に即した数値で記述する。
End Element
End要素には、ポインターロープの終点の情報を記述する。
- Target Element: Target要素には、そのポインターロープの終点が固定されるオブジェクト座標系の名称または、サブパネルや3Dモデルの名称を記述する。
- Position Element: Position要素には、そのポインターロープの終点の位置座標を記述する。また、Target要素で記述した座標系に即した数値で記述する。
target Element
Target要素には、そのポインターロープの始点または終点が固定されるオブジェクト座標系の名称または、サブパネルや3Dモデルの名称を記述する。ポインターロープの始点、もしくは終点をメインパネルに固定したい場合は「MainPanel」と記述する。ポインターロープの始点、もしくは終点をサブパネルに固定したい場合はSubPanelNameタグ内に該当するサブパネルの名称を記述する。ポインターロープの始点、もしくは終点を3Dモデルに固定したい場合はThreeDModelNameタグ内に該当する3Dモデルの名称を記述する。