メインコンテンツ

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

ecef2enu

地心地球中心地球固定座標をローカルな東北上に変換

説明

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

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

すべて折りたたむ

デブリの ECEF 座標と衛星の測地座標を使用して、衛星に対する軌道デブリの ENU 座標を見つけます。

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

wgs84 = wgs84Ellipsoid('kilometer');

ローカル原点の測地座標を指定します。この例では、ローカル原点は衛星です。楕円体高(キロメートル単位)として h0 を指定します。

lat0 = 45.9132;
lon0 = 36.7484;
h0 = 1877.7532;

関心地点の ECEF 座標を指定します。この例では、注目点は軌道上のデブリです。

x = 5507.5289;
y = 4556.2241;
z = 6012.8208;

次に、衛星に対するデブリのENU座標を計算します。この例では、zUp は科学的記数法で表示されます。

[xEast,yNorth,zUp] = ecef2enu(x,y,z,lat0,lon0,h0,wgs84)
xEast = 
355.6013
yNorth = 
-923.0832
zUp = 
1.0410e+03

enu2ecef 関数を使用して変換を逆にします。この例では、結果は科学的記数法で表示されます。

[x,y,z] = enu2ecef(xEast,yNorth,zUp,lat0,lon0,h0,wgs84)
x = 
5.5075e+03
y = 
4.5562e+03
z = 
6.0128e+03

入力引数

すべて折りたたむ

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

データ型: single | double

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

データ型: single | double

ECEF z - 地心 ECEF システム内の 1 つ以上のポイントの座標。スカラー、ベクトル、行列、または ND 配列として指定されます。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' です。

ヒント

座標位置ではなくベクトルを変換には、ecef2enuv 関数を使用します。

拡張機能

すべて展開する

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

バージョン履歴

R2012b で導入

すべて展開する