メインコンテンツ

このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。

geodetic2enu

測地座標をローカルの東北上に変換

説明

[xEast,yNorth,zUp] = geodetic2enu(lat,lon,h,lat0,lon0,h0,spheroid) は、latlonh で指定された測地座標を、xEastyNorthzUp で指定されたローカルの東北上 (ENU) 直交座標に変換。測地座標 lat0lon0、および h0 を使用して、ローカル ENU システムの原点を指定します。各座標入力引数は、サイズが他のものと一致するか、スカラーである必要があります。測地座標の参照球体として spheroid を指定します。

[xEast,yNorth,zUp] = geodetic2enu(___,angleUnit) は緯度と経度の単位を指定します。angleUnit'degrees' (デフォルト) または 'radians' として指定します。

すべて折りたたむ

測地座標を使用して、スイスのツェルマットを基準としたマッターホルンの ENU 座標を見つけます。

まず、参照回転楕円体を WGS84 として指定します。WGS84 の詳細については、Comparison of Reference Spheroids を参照してください。楕円体の高さと ENU 座標の単位は、参照回転楕円体の LengthUnit プロパティで指定された単位と一致する必要があります。wgs84Ellipsoid によって作成された参照回転楕円体のデフォルトの長さの単位は 'meter' です。

wgs84 = wgs84Ellipsoid;

ローカル原点の測地座標を指定します。この例では、ローカルの起点はスイスのツェルマットです。楕円体の高さをメートル単位で h0 に指定します。

lat0 = 46.017;
lon0 = 7.750;
h0 = 1673;

関心地点の測地座標を指定します。この例では、関心のあるポイントはマッターホルンです。楕円体の高さをメートル単位で h に指定します。

lat = 45.976;
lon = 7.658;
h = 4531;

次に、ツェルマットに対するマッターホルンの ENU 座標を計算します。表示形式を shortG に指定して、結果を標準表記で表示します。

format shortG
[xEast,yNorth,zUp] = geodetic2enu(lat,lon,h,lat0,lon0,h0,wgs84)
xEast = 
      -7134.8

yNorth = 
      -4556.3

zUp = 
       2852.4

enu2geodetic 関数を使用して変換を逆にします。

[lat,lon,h] = enu2geodetic(xEast,yNorth,zUp,lat0,lon0,h0,wgs84)
lat = 
       45.976

lon = 
        7.658

h = 
        4531

入力引数

すべて折りたたむ

スカラー、ベクトル、行列、または ND 配列として指定された 1 つ以上のポイントの測地緯度。値を度単位で指定します。ラジアン単位の値を使用するには、angleUnit 引数を 'radians' として指定します。

データ型: single | double

スカラー、ベクトル、行列、または N 次元配列として指定された 1 つ以上のポイントの測地経度。値を度単位で指定します。ラジアン単位の値を使用するには、angleUnit 引数を 'radians' として指定します。

データ型: single | double

スカラー、ベクトル、行列、または N 次元配列として指定された 1 つ以上の点の楕円体の高さ。spheroid オブジェクトの LengthUnit プロパティに一致する単位で値を指定します。たとえば、wgs84Ellipsoid によって作成された参照楕円体のデフォルトの長さの単位は 'meter' です。

楕円体高の詳細については、「標高から楕円体高を求める」を参照してください。

データ型: single | double

スカラー、ベクトル、行列、または ND 配列として指定された、ローカル原点の測地緯度。ローカル原点は、1 つのポイントまたは一連のポイント (たとえば、移動するプラットフォーム) を参照できます。値を度単位で指定します。ラジアン単位の値を使用するには、angleUnit 引数を 'radians' として指定します。

データ型: single | double

スカラー、ベクトル、行列、または ND 配列として指定された、ローカル原点の測地経度。ローカル原点は、1 つのポイントまたは一連のポイント (たとえば、移動するプラットフォーム) を参照できます。値を度単位で指定します。ラジアン単位の値を使用するには、angleUnit 引数を 'radians' として指定します。

データ型: single | double

スカラー、ベクトル、行列、または N 次元配列として指定された、ローカル原点の楕円体の高さ。ローカル原点は、1 つのポイントまたは一連のポイント (たとえば、移動するプラットフォーム) を参照できます。spheroid オブジェクトの LengthUnit プロパティに一致する単位で値を指定します。たとえば、wgs84Ellipsoid によって作成された参照楕円体のデフォルトの長さの単位は 'meter' です。

楕円体高の詳細については、「標高から楕円体高を求める」を参照してください。

データ型: single | double

参照回転楕円体。referenceEllipsoid オブジェクト、oblateSpheroid オブジェクト、または referenceSphere オブジェクトとして指定されます。基準回転楕円体という用語は、基準楕円体と同義に使用されます。参照回転楕円体を作成するには、オブジェクトの作成関数を使用します。WGS84 の参照楕円体を指定するには、wgs84Ellipsoid 関数を使用します。

参照回転楕円体の詳細については、Comparison of Reference Spheroids を参照してください。

例: spheroid = referenceEllipsoid('GRS 80');

角度の単位。'degrees' (デフォルト) または 'radians' として指定します。

出力引数

すべて折りたたむ

ENU x - ローカル ENU システム内の 1 つ以上のポイントの座標。スカラー、ベクトル、行列、または ND 配列として返されます。単位は、spheroid 引数の LengthUnit プロパティによって指定されます。たとえば、wgs84Ellipsoid によって作成された参照楕円体のデフォルトの長さの単位は 'meter' です。

ENU y - ローカル ENU システム内の 1 つ以上のポイントの座標。スカラー、ベクトル、行列、または ND 配列として返されます。単位は、spheroid 引数の LengthUnit プロパティによって指定されます。たとえば、wgs84Ellipsoid によって作成された参照楕円体のデフォルトの長さの単位は 'meter' です。

ENU z - ローカル ENU システム内の 1 つ以上のポイントの座標。スカラー、ベクトル、行列、または ND 配列として返されます。単位は、spheroid 引数の LengthUnit プロパティによって指定されます。たとえば、wgs84Ellipsoid によって作成された参照楕円体のデフォルトの長さの単位は 'meter' です。

拡張機能

すべて展開する

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2012b で導入

すべて展開する