Help us understand the problem. What is going on with this article?

日本測地系のミリ秒を世界測地系の度に変換する計算

More than 3 years have passed since last update.

GPSのデータって難しいね

とあるプロジェクトでジオ系のデータを扱うことになったのだが、あまりの複雑さに発狂しそうになった。

専門家ではないので大まかに分けると以下の2つが混在する世界らしい

  • ミリ秒表示と度表示
  • 日本測地系と世界測地系

まあ、いろいろなレガシーな理由があってこの2つが混ざり合っているのだが、要するにやりたいことは 元データをgoogle mapに表示することだ。考えるな、感じろ!

ざっくりざっくりデータの見方

ミリ秒表示は「503329984,128544000」というような小数点を含まない数字で表される。一方度数は「35.70989125,139.81067」のような小数点を含んだ数字で表される。google mapは度数表示

測地系はもはや聞くしかない。ちなみにgoogle mapは世界測地系,Y!地図は日本測地系だ。いまは世界測地の方がポピュラーという噂も聞いたが、いろいろ大人の事情があるらしくまだ混在している

計算式

下記のサイトを参考にさせていただいたところ計算式は以下のとおり。
いま「128544000,503329984」(LAT,LON:緯度経度)日本測地系で与えられる地点を計算すると

ミリ秒から度への変換

元データを3,600,000で割る

128544000 -> 35.70666667
503329984 -> 139.8138844

日本測地系から世界測地系へ変換

上で求めた度を

jp_lat=35.70666667
jp_lon= 139.8138844

とすると

    lat = jp_lat - jp_lat * 0.00010695 + jp_lon * 0.000017464 + 0.0046017;

    lon = jp_lon - jp_lat * 0.000046038 - jp_lon * 0.000083043 + 0.010040;

となる(理由はわかりませんw)
まあ、地球は丸いのでちょっと誤差が出るらしい

こうやって計算した結果が

35.70989125,139.81067

google mapに貼ってみると

https://www.google.com/maps/place/35%C2%B042'35.6%22N+139%C2%B048'38.4%22E/@35.7098912,139.8084813,17z/data=!3m1!4b1!4m2!3m1!1s0x0:0x0

はい、無事にスカイツリーが表示されました。やったね

ついでにリンクの仕方を覚える

リンクすると地点を表示するようにするにはこんな感じらしい

http://maps.google.com/maps?q=35.70989125,139.81067+(ココ)

LATとLONをお間違えなく

参考にさせていただいたサイト:
http://keisukereo.com/it_cafe/geo%E7%B3%BB%E3%81%AE%E5%8D%98%E4%BD%8D%E5%A4%89%E6%8F%9B%E3%83%BB%E6%B8%AC%E5%9C%B0%E7%B3%BB%E5%A4%89%E6%8F%9B%E3%83%84%E3%83%BC%E3%83%AB/

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1479530324

http://q.hatena.ne.jp/1250733878

http://d.hatena.ne.jp/nakamura001/20080501/1209660263

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした