GeoPositionXYZ[{x,y,z}]
直交地心座標系の位置を表す.
GeoPositionXYZ[{x,y,z},datum]
指定された測地系を参照する点を表す.
GeoPositionXYZ[{{x1,y1,z1},{x2,y2,z2},…},datum]
直交地心座標系における点の配列を表す.
GeoPositionXYZ[entity]
指定された地理実体の直交地心位置を返す.
GeoPositionXYZ
GeoPositionXYZ[{x,y,z}]
直交地心座標系の位置を表す.
GeoPositionXYZ[{x,y,z},datum]
指定された測地系を参照する点を表す.
GeoPositionXYZ[{{x1,y1,z1},{x2,y2,z2},…},datum]
直交地心座標系における点の配列を表す.
GeoPositionXYZ[entity]
指定された地理実体の直交地心位置を返す.
詳細
- GeoPositionXYZは地心地球固定デカルト座標系を使う.
- GeoPositionXYZ[{x,y,z}]座標の数値 x,y,z はメートル単位であると仮定される.
- GeoPositionXYZ[{x,y,z,t}]は,GMT時刻帯における,1900年1月1日からの秒で計測された時間 t を含む.
- 明示的な時間を含まないGeoPositionXYZオブジェクトは,現行の日付を想定する.
- GeoPositionXYZ[{x,y,z}]はデフォルトの測地系"ITRF00"を仮定する.
- 基準測地系は名前で指定できる.次は,よく使われる名前付きの測地系である.
-
"ITRF00" ITRF (international Terrestrial Reference Frame) 2000 "NAD27" 1927年の北米測地系(North American Datum) "NAD83CORS96" 1983年の北米測地系(CORS96) - 名前付き測地系と基準楕円体の完全リストはGeodesyData[]で与えられる.
- GeoPositionXYZ[GeoPositionXYZ[{x,y,z},datum1],datum2]は測地系間の変換を行う.
- GeoPositionXYZ[pos]あるいはGeoPositionXYZ[pos,datum]は,任意の地理的場所からの変換を行う.地理的場所のタイプGeoPosition,GeoPositionXYZ,GeoPositionENU,GeoGridPositionを使用することができる.
- GeoPositionXYZ[pos]は,pos と同じ測地系を使って任意のタイプの測地位置を変換する.
- 拡張された実体については,GeoPositionXYZ[entity]は,可能な場合は実体の地理的中心の位置を使う.
- GeoPositionXYZ[…][prop]はデカルト地理位置の指定された特性を与える.
- 次は,使用可能な特性である.
-
"AbsoluteTime" 1900年1月1日(グリニッジ標準時)からの秒数としての日付 ",Count" GeoPositionXYZオブジェクト内の場所の数 "Data" GeoPositionXYZオブジェクトの第1引数 "DateList" グリニッジ標準時による日付リスト{y,m,d,h,m,s} "DateObject" 完全な日付オブジェクト "Datum" GeoPositionXYZオブジェクトの測地系 "Depth" 点の深さ:単一の位置については0,位置のリストについては1,… "Dimension" 各位置の座標数 "PackingType" データがパックされている場合はIntegerまたはReal.それ以外の場合はNone "X" 数値座標 x (単位:メートル) "Y" 数値座標 y(単位:メートル) "Z" 数値座標 z(単位:メートル) "XYZ" 数値 {x,y,z}3つ組(単位:メートル) "XY" 数値 {x,y} ペア(単位:メートル) "XZ" 数値 {x,z} ペア(単位:メートル) "YZ" 数値 {y,z} ペア(単位:メートル)
例題
すべて開く すべて閉じる例 (4)
GeoPositionXYZ[{148217.79, -4.88253*^6, 4.0877119*^6}]GeoPosition[%]GeoPositionXYZ[Entity["City", {"Paris", "IleDeFrance", "France"}]]SatelliteData[Entity["Satellite", "25544"], "Position"]//GeoPositionXYZ地心座標をデフォルトの"ITRF00"測地系から"NAD83CORS96"測地系に変換する:
GeoPositionXYZ[GeoPositionXYZ[{0, 0, 0}], "NAD83CORS96"]マイクロメートル未満の数値誤差で"ITRF00"測地系に変換し直す:
GeoPositionXYZ[%, "ITRF00"]スコープ (12)
位置指定 (6)
地球の中心に対して x, y, z の値(単位:メートル)で指定された測地位置:
GeoPositionXYZ[{130000., -5000000., 4000000.}]これを,高さをメートル単位で含む lat-lon 指定に変換する:
GeoPosition[%]GeoPositionXYZ[{130000., -5000000., 4000000., DateObject[]}]メルカトル図法を使い,平面地図に投影する.時間情報は保存される:
GeoGridPosition[%, "Mercator"]GeoPositionXYZ[Entity["City", {"Tokyo", "Tokyo", "Japan"}]]座標を任意の長さの単位のQuantityオブジェクトとして与える:
GeoPositionXYZ[Quantity[{130., -5000., 4000.}, "Kilometers"]]GeoPositionXYZ[Quantity[{80., -3100., 2500.}, "Miles"]]他の測地位置タイプからGeoPositionXYZに変換する:
GeoPositionXYZ[GeoPosition[{0., 0.}]]GeoPositionXYZ[GeoGridPosition[{10., -20.}, "Mercator"]]GeoPositionXYZ[GeoPositionENU[{1000., 2310., -10.}, GeoPosition[{10., 23.}]]]GeoPositionXYZ[GeoPositionXYZ[{130000., -5000000., 4000000.}, "ITRF90"], "WGS72"]GeoPositionXYZ[%, "ITRF90"]地理位置配列 (4)
triples = RandomReal[6371000, {10000, 3}];AbsoluteTiming[r1 = GeoPosition[GeoPositionXYZ[triples]];]AbsoluteTiming[r2 = GeoPosition /@ GeoPositionXYZ /@ triples;]First[r1] - (First /@ r2)//Abs//Maxtriples = RandomReal[6371000, {10000, 3}];AbsoluteTiming[r1 = GeoPositionXYZ[GeoPositionXYZ[triples, "WGS72"], "ITRF90"];]AbsoluteTiming[r2 = GeoPositionXYZ[GeoPositionXYZ[#, "WGS72"], "ITRF90"]& /@ triples;]First[r1] - (First /@ r2)//Abs//MaxGeoPositionXYZは,すべての点の長さと深さが同じである限り,点のネストしたリストを含むことができる:
GeoPositionXYZ[{{{1., 2., 3.}, {4., 5., 6.}}, {{7., 8., 9.}}}]GeoGridPosition[%, "Mercator"]GeoPositionXYZ[%]しかで,これは,最初の点には時間指定があるが2番目の点にはないので許されない:
GeoPositionXYZ[{{1, 2, 3, 0}, {4, 5, 6}}]GeoPositionXYZ[{{1, 2, 3}, {{4, 5, 6}}}]{GeoPositionXYZ[{0, 0, 0}], GeoPositionXYZ[{150000., -5000000., 4000000.}], GeoPositionXYZ[{5000000., -300000., 4000000.}]}GeoPositionXYZ[%]Thread[%]座標の抽出 (2)
特性を使ってGeoPositionXYZオブジェクトから情報を抽出する:
p = GeoPositionXYZ[Here]p["Properties"]AssociationMap[p, %]//Normal//Column特性を使ってGeoPositionXYZ配列から情報を抽出する:
p = GeoPositionXYZ[RandomGeoPosition["World", {10, 20}]]p["Count"]p["Depth"]p["Dimension"]座標の配列はReal型でパックされている:
p["PackingType"]p["AbsoluteTime"]//Dimensionsp["DateList"]//Dimensions一般化と拡張 (3)
GeoPosition[{32., -73.4}, Quantity[100, "Kilometers"]]GeoPositionXYZ[%]Norm[%["XYZ"]]GeoPosition[{-29.4, 32.7}, {Quantity[1, "Kilometers"], Quantity[900, "Meters"]}]GeoPositionXYZ[%]楕円体上のGeoPositionオブジェクトに変換し直す:
GeoPosition[%]SolarSystemFeatureData[Entity["SolarSystemFeature", "TychoBraheMars"], "Position"]GeoPositionXYZ[%]PlanetData[Entity["Planet", "Mars"], {"EquatorialRadius", "PolarRadius"}]アプリケーション (2)
points = RandomGeoPosition["World", 100]GeoGraphics[Point[points]]ListPointPlot3D[GeoPositionXYZ[points]["XYZ"], BoxRatios -> 1]3Dの点情報を経緯度に変換する.例として,多面体の頂点を取る:
Show[Graphics3D[gc = N@PolyhedronData["Icosahedron", "GraphicsComplex"]], Boxed -> False]12個の頂点を適切な半径の球の上のGeoPositionXYZ 配列として表す:
xyz = GeoPositionXYZ[gc[[1]], Norm[gc[[1, 1]]]]latlon = QuantityMagnitude[LatitudeLongitude[xyz], "AngularDegrees"]20明太の20の面の測地線周長を含むGeoPathオブジェクトを構築する:
geopaths = GeoPath[Extract[latlon, List /@ gc[[2, 1]]]];"Equirectangular"図法による,これらの頂点間の測地線:
GeoGraphics[geopaths, GeoProjection -> "Equirectangular"]GeoGraphics[geopaths, GeoProjection -> "LambertAzimuthal"]特性と関係 (6)
GeoPositionXYZ[GeoPosition[{0, 0}]]GeoPositionXYZ[GeoPosition[{90, 0}]]GeoPositionXYZ[GeoPosition[{-90, 0}]]以下の半軸を持つ楕円体について,測地座標を直交座標に変換する:
a = 1.;
b = 0.5;p = GeoPosition[{60., 0., 0.15}, {a, b}]pxyz = GeoPositionXYZ[p]GeoPosition[pxyz]q = GeoPosition[{60., 0., 0.}, {a, b}]qxyz = GeoPositionXYZ[q]pxz = {pxyz["X"], pxyz["Z"]}
qxz = {qxyz["X"], qxyz["Z"]}青い線は q における接線に垂直で,
軸に対して60°の角度である:
Graphics[{Circle[{0, 0}, {a, b}], PointSize[Medium], Red, Point[pxz], Line[{{0, 0}, pxz}], Blue, Point[qxz], Line[{pxz, pxz - 0.75{Cos[60Degree], Sin[60Degree]}}]}, Axes -> True]測地垂直線に沿った p の測地高は p と q の距離である:
Norm[pxz - qxz]GeoPositionXYZ[{}]は測地位置の空配列を表す:
GeoPositionXYZ[{}]%["Count"]GeoPositionXYZ[]は無効なシンタックスである:
GeoPositionXYZ[]GeoPositionXYZは,地球を中心とした位置を与える.GeoPositionENUは使用する中心を指定する:
GeoPositionXYZ[Entity["City", {"NewYork", "NewYork", "UnitedStates"}]]ニューヨークはワシントンの接平面より8kmを超える距離だけ下にある:
GeoPositionENU[Entity["City", {"NewYork", "NewYork", "UnitedStates"}], Entity["City", {"Washington", "DistrictOfColumbia", "UnitedStates"}]]GeoPositionXYZは,この中心についてはGeoPositionENUと一致する:
b = GeodesyData["ITRF00", "SemiminorAxis"]center = GeoPosition[{90, -90, -b}]loc = GeoPosition[{-30, 140}];GeoPositionXYZ[loc]GeoPositionENU[loc, center]GeoPositionXYZ位置の対蹠点の座標の符号は逆になる:
GeoAntipode[GeoPositionXYZ[{1.34*^6, -4.66*^6, 4.13*^6}]]テクニカルノート
関連するガイド
-
▪
- 測地学
テキスト
Wolfram Research (2008), GeoPositionXYZ, Wolfram言語関数, https://reference.wolfram.com/language/ref/GeoPositionXYZ.html (2019年に更新).
CMS
Wolfram Language. 2008. "GeoPositionXYZ." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2019. https://reference.wolfram.com/language/ref/GeoPositionXYZ.html.
APA
Wolfram Language. (2008). GeoPositionXYZ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/GeoPositionXYZ.html
BibTeX
@misc{reference.wolfram_2026_geopositionxyz, author="Wolfram Research", title="{GeoPositionXYZ}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/GeoPositionXYZ.html}", note=[Accessed: 13-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_geopositionxyz, organization={Wolfram Research}, title={GeoPositionXYZ}, year={2019}, url={https://reference.wolfram.com/language/ref/GeoPositionXYZ.html}, note=[Accessed: 13-November-2026]}