ArcGIS のリニア リファレンスでは、次の 2 種類の基本データ タイプを使用します。
- ルート フィーチャクラス
- イベント テーブル
ダイナミック セグメンテーションを使用することで、ルート フィーチャクラスのライン フィーチャ上にイベント テーブルのイベントが配置されます。
ルート フィーチャクラス
ルート フィーチャクラスは、測定基準が定義されているライン フィーチャクラスです。これらの測定値に基づいて、イベント、資産、状態などの位置がライン フィーチャ セット上で示されます。
ArcGIS では、ルートは、市街道路、高速道路、河川、パイプなどの線形地物を指しています。これらには一意な識別子が割り当てられ、それぞれのライン フィーチャ上に共通の測定基準が設定されます。
簡単に説明すると、ルート フィーチャクラスのフィーチャ頂点には M 値 (x,y,m または x,y,z,m) が含まれます。これらのメジャー付き座標は、ルート フィーチャの構成要素となります。ルート フィーチャクラスのライン フィーチャには、その位置を表す x,y (または x,y.z) 座標に加え、ライン上のメジャー値 (M) があります。
共通の測定系を持つルートの集まりが 1 つのルート フィーチャクラスとなります。このフィーチャクラスの各ルートには、一意な識別子も割り当てられます。同じ識別子を持つライン フィーチャは、同一ルートの一部であると見なされます。
ルート フィーチャクラスは、ライン フィーチャクラスとしてジオデータベースに作成され、管理されます。カバレッジのルート フィーチャクラス、およびルート識別子とメジャー付きフィーチャを含むポリライン シェープファイルも使用できます。
ルート フィーチャの形状
ルート フィーチャはその形状と共に測定基準が保存されます。メジャー付きの各線分には、x、y、m (メジャー) 値、または x、y、z、m 値が割り当てられます。特定の頂点のメジャー値が不明な場合、その m 値は NaN (Not a Number) として記録されます。次の図をご参照ください。
単純なライン フィーチャは、1 本のパスからなるラインとして表されます。複雑なライン フィーチャは、複数のパスで構成されたラインとして表されます。
ほとんどの場合、ライン フィーチャに沿って累積的に大きくなるメジャー値を使用しますが、常に一定のメジャー値や、ライン フィーチャに沿ってだんだん小さくなるメジャー値を使用することもできます。
メジャー値は、フィーチャクラスの水平座標系 (および定義されている場合は垂直座標系) とは無関係です。つまり、メジャー値は、そのフィーチャクラスの x,y,z 座標と同じ単位でなくてもかまいません。たとえば、フィーチャクラスに保存されているフィーチャの座標系がユニバーサル横メルカトル (UTM) のとき、それらのメジャー値をフィート、マイル、または時間単位で保存することができます。
イベント テーブル
イベント テーブルには、ルート フィーチャ沿いに配置できる資産、状況、およびイベントに関する情報が保存されます。イベント テーブルの各行は 1 つのイベントに対応し、その位置は、特定の (識別可能な) ルート フィーチャ上のメジャーとして表されます。
イベントには、ポイント イベントとライン イベントの 2 種類があります。ポイント イベントはルート上の 1 地点 (ポイント) を表し、ライン イベントはルートの一部分 (ライン) を表します。
- ポイント イベント ロケーションでは、特定の 1 地点を表すメジャー値を 1 つだけ使用します (「I-91 の 3.2 マイル」など)。
- ライン イベントでは、始点メジャー値と終点メジャー値を使用してルートの一部分を表します (「I-91 の 2 マイル地点から 4 マイル地点まで」など)。
ルート イベントに 2 つの種類があるように、ルート イベント テーブルにもポイント イベント テーブルとライン イベント テーブルの 2 つがあります。すべてのイベント テーブルには、ルート識別子と、メジャー情報を格納するメジャー ロケーション フィールドが含まれている必要があります。ポイント イベント テーブルでは、特定の 1 地点を表すメジャー フィールドを 1 つだけ使用します。ライン イベントでは、2 つのメジャー フィールド (始点メジャー値と終点メジャー値) を使用して場所を表します。
ルート ロケーションとその属性は、共通のテーマに基づくイベント テーブルに保存されます。たとえば、制限速度、再舗装した年、現在の状態、事故発生状況が保存された 4 つのイベント テーブルを使用して、ルート フィーチャクラス上のイベント位置を動的に表すことができます。
ArcGIS 対応のテーブルであれば、どのような種類でもイベント テーブルとして使用できます。たとえば、INFO テーブル、dBASE テーブル、ジオデータベース テーブル、区切りテキスト ファイル、OLE DB 接続を介してアクセスするデータベース管理システム (DBMS) のテーブルを使用できます。
イベント テーブルの例
水文学者および生態学者は河川網上のリニア リファレンスを使用して、下図のように、さまざまな種類のイベントを表します。河川のルート フィーチャクラスでは、河川上にマイル単位でメジャーが設定されます。ポイント イベント テーブルとライン イベント テーブルには、ルート ID および各河川上での位置が記録されます。これらのイベント テーブルを使用して、ポイント イベントとライン イベントの位置を表すことができます。
相対位置を使用したフィーチャの保存
リニア リファレンスを使用する場合、ライン フィーチャ上の位置は、ルート メジャー (既知の 1 地点からの距離) に基づいて表されます。たとえば、事故発生場所を示すとき、「1,659,060.25, 1,525,238.97」のような GPS 座標より、「州間高速道路の起点から 12 マイルの地点」などと表した方が便利です。
ライン フィーチャ上での位置を特定するには、何らかの測定基準が必要になります。ライン フィーチャと共に測定基準が保存されていれば、そのライン フィーチャ上の位置をメジャー値で表すことができます。
ライン フィーチャ上の相対位置としてデータを保存することの利点は、データの読み取りやすさだけではありません。ライン フィーチャに関連する空間的現象をフィーチャ上に位置付けることもできます。たとえば、ベースマップがあまり正確でない場合、x.y 座標を使用して事故発生場所を指定すると、事故発生場所が適切に表示されない可能性があります。リニア リファレンスを使用すれば、このような心配はありません。