タイムラインミッションのインポート形式仕様
Airpeak Base は、外部ツールによって作成されたタイムラインミッション用の KML ファイルをインポートできます。
KML ファイル
KML ファイルでは、以下のデータ形式のインポートをサポートしています。
- キーフレームの位置:機体の緯度、経度、高度
- カメラターゲットの位置
- 高度の原点(地面、または海面)
- ジンバルの角度
- 撮影のタイミング
KML ファイルでは、以下のタグを指定します。
サンプル 1
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>SonyGroup</name>
<Placemark>
<altitudeMode>relativeToGround</altitudeMode>
<LineString>
<coordinates>
139.74437852691824,35.63158873146365,80
139.74322785925085,35.63167811325995,80
139.74312325309927,35.630801731333435,80
139.7444053490084,35.630694908003875,80
139.74442948888952,35.63158655141858,80
</coordinates>
</LineString>
</Placemark>
</Document>
</kml>
Header
タグ | 説明 |
---|---|
<?xml version="1.0" encoding="UTF-8"?> | KML ファイルの1行目 |
Namespaces
タグ | 説明 |
---|---|
<kml xmlns=http://www.opengis.net/kml/2.2> </kml> | KML 2.2 ファイルの2行目 |
必須のタグ
タグ | 値 | 説明 |
---|---|---|
<Document> </Document> | None | KML ファイルのデータ構造 |
<name> </name> | String | ミッション名 |
<Placemark> </Placemark> | None | ミッションのデータ構造 |
<LineString> </LineString> | None | 飛行経路のデータ構造 |
<altitudeMode> </altitudeMode> | relativeToGround (default) or absolute | 高度の原点relativeToGround を指定すると、高度の原点が地面になり、高度を対地高度として解釈します。absolute を指定すると、高度の原点が海面になり、高度を海抜高度として解釈します。relativeToGround 、absolute でない場合は、デフォルトとしてrelativeToGround になります。 |
<coordinates> </coordinates> | 経度,緯度,高度 | 経度、緯度(WGS84 測地系) 高度(m) <altitudeMode> で指定され原点を 0 とした場合の高さです。 |
サンプル 2
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>userguide</name>
<Placemark>
<LineString>
<altitudeMode>relativeToGround</altitudeMode>
<coordinates>
139.74437852691824,35.63158873146365,80
139.74322785925085,35.63167811325995,80
139.74312325309927,35.630801731333435,80
139.7444053490084,35.630694908003875,80
139.74442948888952,35.63158655141858,80
</coordinates>
</LineString>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamps>0 78877 152490 240442 315000</airpeak:timestamps>
<airpeak:durationSec>315</airpeak:durationSec>
<airpeak:onComplete>RTH</airpeak:onComplete>
</ExtendedData>
</Placemark>
<Folder>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>0</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
<airpeak:longitudePOI>139.7416302647648</airpeak:longitudePOI>
<airpeak:latitudePOI>35.630331826332196</airpeak:latitudePOI>
<airpeak:altitudePOI>0</airpeak:altitudePOI>
<airpeak:influence>1</airpeak:influence>
</ExtendedData>
<Camera>
<heading>275.4595746219549</heading>
<tilt>90</tilt>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>78877</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>275.4595746219549</heading>
<tilt>90</tilt>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>78997</airpeak:timestamp>
<airpeak:photoShooting>1</airpeak:photoShooting>
<airpeak:longitudePOI>139.74297136927225</airpeak:longitudePOI>
<airpeak:latitudePOI>35.63026206376388</airpeak:latitudePOI>
<airpeak:altitudePOI>0</airpeak:altitudePOI>
<airpeak:influence>1</airpeak:influence>
</ExtendedData>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>86377</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>185.5412352473106</heading>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>152490</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>185.5412352473106</heading>
<tilt>90</tilt>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>153000</airpeak:timestamp>
<airpeak:photoShooting>1</airpeak:photoShooting>
<airpeak:longitudePOI>139.74436611796</airpeak:longitudePOI>
<airpeak:latitudePOI>35.63014869946048</airpeak:latitudePOI>
<airpeak:altitudePOI>1.1102230246251565e-16</airpeak:altitudePOI>
<airpeak:influence>1</airpeak:influence>
</ExtendedData>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>159990</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>95.85259863593586</heading>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>240247</airpeak:timestamp>
<airpeak:photoShooting>1</airpeak:photoShooting>
</ExtendedData>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>240442</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>95.85259863593586</heading>
<tilt>90</tilt>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>240495</airpeak:timestamp>
<airpeak:longitudePOI>139.7456643071232</airpeak:longitudePOI>
<airpeak:latitudePOI>35.63007893673232</airpeak:latitudePOI>
<airpeak:altitudePOI>0</airpeak:altitudePOI>
<airpeak:influence>1</airpeak:influence>
</ExtendedData>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>247942</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>1.260576853622922</heading>
</Camera>
</Placemark>
<Placemark>
<ExtendedData xmlns:airpeak="https://base.airpeak.sony.com/trajectories">
<airpeak:timestamp>315000</airpeak:timestamp>
<airpeak:headingRotation>-1</airpeak:headingRotation>
</ExtendedData>
<Camera>
<heading>1.260576853622922</heading>
<tilt>90</tilt>
</Camera>
</Placemark>
</Folder>
</Document>
</kml>
任意のタグ
タグ | 値 | 説明 |
---|---|---|
<ExtendedData> </ExtendedData> | None | ミッションの拡張データ構造 xmlns:airpeak="https://base.airpeak.sony.com/trajectories" |
<airpeak:durationSec> </airpeak:durationSec> | Int | ミッションの飛行時間(秒) |
<airpeak:onComplete> </airpeak:onComplete> | String | ミッションの完了動作RTH (Return To Home) を指定した場合は、離陸地点に戻ります。Hover を指定した場合は、終了点でホバリングします。 |
<airpeak:timestamps> </airpeak:timestamps> | Int [] | 飛行経路のキーフレーム(<LineString> に記載されたもの)のタイムスタンプ(msec)<coordinates> の値の個数と同じにする必要があります。 |
<Folder> </Folder> | None | カメラ情報のデータ構造<Placemark> で構成されています。 |
<airpeak:timestamp> </airpeak:timestamp> | Int | カメラ情報のデータ(<Folder> に記載されたもの)のタイムスタンプ(msec) |
<airpeak:headingRotation> </airpeak:headingRotation> | Int | ジンバルの回転数 |
<airpeak:photoShooting> </airpeak:photoShooting> | 1 | 写真撮影フラグ |
<airpeak:movieRecordingStart> </airpeak:movieRecordingStart> | 1 | 動画撮影開始フラグ |
<airpeak:movieRecordingStop> </airpeak:movieRecordingStop> | 1 | 動画撮影終了フラグ |
<airpeak:longitudePOI> </airpeak:longitudePOI> | Float | カメラターゲットの経度(WGS84 測地系) |
<airpeak:latitudePOI> </airpeak:latitudePOI> | Float | カメラターゲットの緯度(WGS84 測地系) |
<airpeak:altitudePOI> </airpeak:altitudePOI> | Float | カメラターゲットの高度(m)<altitudeMode> で指定された原点を 0 とした場合の高さです。 |
<airpeak:influence> </airpeak:influence> | Float | カメラの向きに対するカメラターゲットの値の影響度 |
<Camera> </Camera> | None | カメラの向きのデータ構造 |
<heading> </heading> | Int | カメラのパン角度(°) |
<tilt> </tilt> | Int | カメラのチルト角度(°) |
<roll> </roll> | Int | カメラのロール角度(°) |