空間関数
空間関数を使用して、マップチャートを作成できるようにデータを変換します。
シェープファイルにマップ情報が含まれる場合は、空間関数を使用する必要はありません。ただし、WKB (Well-Known Binary) データを含む BLOB カラムのその他の種類の地理情報がある場合、この情報は、以下の 7 つのカラムに抽出されます。
図形座標のバウンディング ボックスはエンベロープと呼ばれます。これは、XMax、XMin、YMax、および YMin の 4 つの座標によって指定します。図形座標の中心は、XCenter と YCenter の 2 つの座標によって指定します。これらの座標カラムは、バイナリの WKB カラムを引数とする空間関数を使用してバイナリの WKB カラムから算出できます。マップチャートがこれらのカラムを識別できるようにするには、mapchart.columntypeidプロパティに必要なプロパティ値 (上記のカラム名と同じ) を設定する必要があります。これは、次の空間関数を適用する際に自動的に実行されます。
関数 | 説明 |
---|---|
GreatCircleDistance(Arg1, Arg2, Arg3, Arg4) | 単位球面の表面上で計算した 2 点間の最短距離を返します。引数は、度数で表された座標の緯度と経度 (lat1、long1、lat2、long2) です。 特定の単位で結果を得るには、GreatCircleDistanceメソッドの結果を関心のある球の半径 (希望する単位) で乗算します。たとえば、地球の半径は約 6371 km (3959 マイル) であるため、2 都市間の距離が、次の最初の例ではキロメートル単位、2 番目の例ではマイル単位で得られます。 例: 6371*GreatCircleDistance(57.717829, 11.990509, 42.355145, -71.057892) 3959*GreatCircleDistance(57.717829, 11.990509, 42.355145, -71.057892) 6371*GreatCircleDistance([Latitude], [Longitude], 42.355145, -71.057892) |
WKBEnvelopeXCenter(Arg1) | 図形座標エンベロープの X 方向の中心値を計算して、mapchart.columntypeidプロパティに XCenter 値を設定します。この引数はバイナリ WKB カラムです。 例: WKBEnvelopeXCenter([WKB]) |
WKBEnvelopeXMin(Arg1) | 図形座標エンベロープの X 方向の最小値を計算して、mapchart.columntypeidプロパティに XMin 値を設定します。この引数はバイナリ WKB カラムです。 例: WKBEnvelopeXMin([WKB]) |
WKBEnvelopeXMax(Arg1) | 図形座標エンベロープの X 方向の最大値を計算して、mapchart.columntypeidプロパティに XMax 値を設定します。この引数はバイナリ WKB カラムです。 例: WKBEnvelopeXMax([WKB]) |
WKBEnvelopeYCenter(Arg1) | 図形座標エンベロープの Y 方向の中心値を計算して、mapchart.columntypeidプロパティに YCenter 値を設定します。この引数はバイナリ WKB カラムです。 例: WKBEnvelopeYCenter([WKB]) |
WKBEnvelopeYMin(Arg1) | 図形座標エンベロープの Y 方向の最小値を計算して、mapchart.columntypeidプロパティに YMin 値を設定します。この引数はバイナリ WKB カラムです。 例: WKBEnvelopeYMin([WKB]) |
WKBEnvelopeYMax(Arg1) | 図形座標エンベロープの Y 方向の最大値を計算して、mapchart.columntypeidプロパティに YMax 値を設定します。この引数はバイナリ WKB カラムです。 例: WKBEnvelopeYMax([WKB]) |