カテゴリ: プログラミング, C, JSP, PHP

地図の測地系の変換や緯度・経度の変換[メモ][PHP]

9540 回閲覧 このエントリーをはてなブックマークする この記事のブックマークユーザー 永続的リンク2008/11/11 20:01:07 カテゴリ: PHP, 自分用メモ, プログラミング
スポンサード リンク


メモ




少し前ですが、Google Maps APIを利用して画像(jpg)からGPSのデータを取得してマッピングするサンプルを作りました。
その時の処理は(変換しなくてもそのまま使えたはずですが)60進法を10進法に変換するだけでした。



しかし、今回違う件で日本測地系→世界測地系にする必要があったのでその辺のメモ。
※Googlemapsは世界測地系、日本の地図系APIは日本測地系がほとんどらしい。

測地系とは

測地系(そくちけい)とは、地球上の位置を経度・緯度・標高の座標で表すとき、前提とする条件のことである。

詳細は「測地系:wikipedia


測地系を日本測地系→世界測地系に変換

    function tokyoToWgs84($lng,$lat){
        // 経度変換
        $position['lng'] = $lng - 0.000046038*$lat - 0.000083043*$lng + 0.010040;
        // 緯度変換
        $position['lat'] = $lat - 0.00010695*$lat + 0.000017464*$lng + 0.0046017;
        return $position;
    }

測地系を世界測地系→日本測地系へ変換

     function wgs84ToTokyo($lng,$lat){
        // 経度変換
        $position['lng'] = $lng + $lat * 0.000046047 + $lng * 0.000083049 - 0.010041;
        // 緯度変換
        $position['lat'] = $lat + $lat * 0.00010696 - $lng * 0.000017467 - 0.0046020;
        
        return $position;
     }

60進法から10進法への変換

※60進法 →「北緯35度23分28秒・東経136度43分20秒」
※10進法 →「35.3911・136.7222」

60進法→10進法

function dmsToDeg($dms){
    $dms = array_pad(explode('.',$dms),4,'0');
    $deg = $dms[0] + $dms[1]/60 + ($dms[2].'.'.$dms[3])/3600;
    return round($deg,9);
}

ちなみに10進法→60進法

function degToDms($deg){
    $dd = $deg;
    $mm = fmod($dd,1)*60;
    $ss = fmod($mm,1)*60;
    $dms = intval($dd).'.'.intval($mm).'.'.round($ss,3);
    return $dms;
}


たぶんあってるはず。間違ってたらすみません。

参考サイト

 →ツイッターのフォローはこちら
スポンサード リンク
         

関連記事

2泊3日の開発合宿レポ

859 回閲覧 このエントリーをはてなブックマークする この記事のブックマークユーザー 永続的リンク2008/09/16 12:31:36 カテゴリ: PHP, CakePHP, イベント系, プログラミング, PHP
スポンサード リンク
開発合宿



9月の13日から15日の3日間を利用して開発合宿が中津川市加子母で開催されました。

詳細は高蔵寺SE勉強会ブログを参照ください。

やったこと

大まかには

  • 地域情報発信
  • CakePHPを使ってサイト構築
  • CakePHP1.2で携帯用サイトを作り出した

課題とかメモとか

  • HABTMで関連テーブルの条件で絞った時のfindのneighbours
  • モバイルでの404の処理のところ
  • 継続してやっていくこと


細かい作業とかあってあまり見た目の変化がない時間が続いたけど、頑張れたと思う。
開発以外にも食事とかサッカーとかヘッドスピンとか楽しめた。

色々相談にものってもらったしw

成果物




次回開催日時は未定です。

 →ツイッターのフォローはこちら          

関連記事

テキストファイルを読んで内容を表示する[今日のJSP]

2278 回閲覧 このエントリーをはてなブックマークする この記事のブックマークユーザー 永続的リンク2008/09/09 18:32:14 カテゴリ: プログラミング, JSP

JSP



JSPでテキストファイルを読んで表示するサンプル。
まだまだ理解度は低いですが、とりあえず出来たのでメモとして残しておきます。

一文字づつ読み込んで、改行文字の場合は<br>を入れるというもの。
replaceでやろうとしたのですが、今日はここまで。
変数の型とか、PHPを使っていると意識することが少ないので結構つまります。

<%@ page contentType="text/html;charset=UTF-8" %>    
<%@ page pageEncoding="UTF-8" %>    
<%@ page import="java.util.*,java.io.*"%>    
<html>    
<head>    
<title>ファイルの読み込み</title>    
</head>    
<body>    
<%      
  String fnm  = "test.txt";    
  String path = request.getRealPath("/");    
  int rec;    
  FileReader fno = new FileReader(path + fnm);    
  while ((rec = fno.read()) != -1) {  
     //String型にする  
     String str = String.valueOf((char)rec);    
     if ( str.equals("\n") ) {    
        out.print(str+ "<br />");    
     } else {    
        out.print(str);    
     }    
  }    
  fno.close();    
%>    
    
</body>    
</html>
 →ツイッターのフォローはこちら          

関連記事

↑ページ上部へ

アクセスカウンター

今日 : 11 昨日 : 13

ブログ内容

YARETOKO「ヤレトコ」のトップページです。
メインはウェブ・サーバー、ブレイクダンス、旅行、おいしいお店のことなどを書いています。 他におすすめの書籍など。

プロフィール

MICK

MICKです。

1983年1月24日生まれ。ウェブの世界にいるのは、偶然のようで必然なのかも。

好きなこと :
 挑戦すること。物事に没頭すること。勉強すること。
嫌いなこと :
 自慢話を聞くこと。人の悪口を言うこと。

運営サイト

      

カテゴリ一覧

サイト広告

オススメの書籍とか

感想

紹介

色々

最近のコメント

最新記事

注目記事

人気記事

最近の人気記事

人気の記事

関連サイト

運営サイト

色々

最近のトラックバック