2019年1月5日土曜日

2019/01/05 release 0.54β - tool for creating GARMIN Birdseye JNX JAPAN Map for windows(ezjnxwin)

2019/01/05 GAMIN GPS用 Birdseye JNX地図作成ツール公開 Ver.0.54β
Unfortunately this text is in Japanese only.
かなり久しぶりの更新です。と、いっても大した内容ではないのですが。。。

0.53βで地図作製範囲の指定に国土地理院のウォッちずのサイトを使用する様にしたのですが、また仕様が変わって指定ができなくなっていました。未だezjnxwinを使用してる人が居るのかは疑問ですが...とりあえず修正。
経度緯度の表示の "latlon_10"というIDからgetElementById()で値を取得していたのですが、ID指定がなくなってました。IDは指定してほしいなぁ~。



それと訳アリで.NET Frameworkのバージョンを3.5→4.5ターゲットにしました。古いOSは.NET Framework 4のインストールが必要かもしれません。

実は手元のOREGON450は動作には影響はないもののUSB端子接触不良で調子悪いのと、最近は [OutDoor用スマホ BV6000S] + oruxmaps を使用してて。スマホの大きな液晶に慣れてしまうとGARMINの画面は老眼には辛過ぎます。で、oruxmaps用の地図生成ソフトにモジュール化してHTTP/2対応とかイロイロ考えてましたが、現在全く別のエンコ・動画系APを老体に鞭打ってガシガシ組んでてそちらに割く時間が取れん!
頭はffmpeg,VLC,HTML5,web socket...等で溢れかえってます。少し暇にならんかなぁ~。

リンクの物置に入ってます。お約束の自己責任で! 
本体ZIP  : (GISGPS/software/ezjnxwin-v0.54beta-20190105.zip) 
MD5hash:ab5e24cefa918d4bccd40f4ea29f58f5
最新情報はコチラで → [GPS地図関連]

 ・.NET Frameworkのバージョンを3.5→4.5ターゲットに変更。
  ・経度緯度取得で、国土地理院のウォッちず仕様変更に対応。

18 件のコメント:

  1. このコメントは投稿者によって削除されました。

    返信削除
  2. 間違えてコメント消しちゃいました・・・
    更新ありがとうございます
    「自分も老眼でGARMINの画面がみにくくなってきましたが山歩きには重宝していますので今後も地理院地図の仕様変更に対処し続けてほしい」というような内容のコメントを書きました
    よろしくおねがいします(^o^)

    返信削除
    返信
    1. ♪eizo big 様
      場末のblogへお久しぶりです

      出稼ぎ先でお返事おくれて申し訳ございません。
      そう、老眼は辛いですよねぇ~!ハ●キルーペ買って凌いでおります(^_^;
      ここ数年GARMINはスマートウォッチ系やチャリ系のEdgeに力を入れている様でOutdoor系の機種は中華タフネススマホに押されて旗色が悪いみたいですね。
      月日の経つのは早いもので公開に踏み切って早3年、使用されているとの事で、できる範囲でボチボチ更新していこうと思います。
      他にも暇を作ってはガシガシとソフト書いているのですが大抵はアングラ系なので、公開して某巨大掲示板の住人に発見されて祭りになっちゃうとアレなので一人で動かしてニンマリしてます。。。
      今後ともよろしくお願いいたします。


      pooh@福島出稼ぎ中より

      削除
  3. 久々にマップを作ろうとしたところ、座標が指定できない?!
    もしやと思って久々にこちらに伺ったところ、「ウォッちずの仕様変更と、それに対するソフトのご対応」を知り、さっそく使用させて頂きました。
    gsijnxが機能しなくなって「新たなマップの供給」が断たれた我が家の『地図無しeTrex30』が復活したのもpoohさんのソフトでしたが、今回も再び『地図無しeTrex30』を復活させて頂きありがとうございます。
    取り急ぎ、お礼まで。

    返信削除
    返信
    1. ♪匿名 様
       場末のblogへようこそ!
       
      国土地理院は結構新しい試みをしてますよね♥
      ezjnxwinの地図表示はインチキしてウォッ地図のwebサイトをそのまま表示してるだけなので、利点は数十行のプログラムで優れた機能が享受でき機能強化がそのままezjnxwinにも反映されますが、サイトの仕様が変わると追従する必要があります。隙間時間にボチボチメンテナンスしてますのでよろしくお願いいたします。

      削除
  4. 1次メッシュ指定で地図製作をするのが常なのですが、連続して作業をする場合、ファイル名を変更しながらになるため、メッシュの番号をファイル名にしていただけると楽になるなと思いました。
    次回更新の際に可能であればファイル名について考慮していただけるといいなと思っています。
    今のままでもとても便利に使わせていただいていまして感謝しております。
    今後もよろしくお願いいたします。

    返信削除
  5. あとひとつ、、、、
    複数の1次メッシュを連続で取得できるようになるとうれしいです。
    設定ファイルに欲しい1次メッシュ番号を入れておくと連続実行される感じ。
    無理でしたらスルーしてください。よろしくお願いいたします

    返信削除
    返信
    1. ♪匿名 様
       場末のblogへようこそ!

      過去に同じリクエストがあり改修は簡単なのですが、サーバーの負荷を考慮して見送っているのですよ。
      https://myslowdays.blogspot.com/p/gps_15.html?showComment=1466206875318#c2039380708701797700
      対応するとしても先ずは過去にコメントで教えていただいた国土地理院地図の提供が無いエリアをgitの目録データを参照してGet request出さない対応が先ですね。スマセン。

      削除
  6. サーバーの負荷を考慮しているんですねー了解しました。
    対応していただける可能性もありそうなので気長に待ちます。
    返答ありがとうございました。

    返信削除
  7. どうもこんにちは。便利なツールを公開していただいてありがとうございます。

    私はyahoo地図(のみ)をソースにjnxを作成しようとしているのですが、「地図作成」ボタン押下後、作成中に「オブジェクト参照がオブジェクト インスタンスに設定されていません。」というエラーメッセージが表示されて作成が終了してしまう現象が出ています。現象は必ず発生するわけではなく、発生するタイミングもまちまちですが、作成する地図が大きいほど、完了までのどこかの時点で発生する可能性が高いようです。

    何が起きているのか自分なりに調査してみましたが、ezjnxwinがエラー発生時に出力しているスタックトレースは以下でした。

    " 場所 ezjnxwin.modMain.mblnGetWebTile(Int64 lngTileX, Int64 lngTileY, Int32 intTileZ, String stzUrl, String stzTableName, Int32 intMethod, Byte[]& byImgSrc, Boolean& blnNoMap)\r\n 場所 ezjnxwin.modMain.mblnMakeMap()"

    状況としては、地図のタイルを取得しようとして以下の例外をcatchした後に、catch節の中でNullReferenceExceptionが発生しているようです。

    {System.Net.WebException: 操作がタイムアウトしました。
    場所 System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
    場所 System.Net.WebClient.DownloadData(Uri address)
    場所 System.Net.WebClient.DownloadData(String address)
    場所 ezjnxwin.modMain.mblnGetWebTile(Int64 lngTileX, Int64 lngTileY, Int32 intTileZ, String stzUrl, String stzTableName, Int32 intMethod, Byte[]& byImgSrc, Boolean& blnNoMap)}

    現在は一度にjnxを作製する範囲を小さくした上で、正常に処理が完了するまでやり直している状態ですが、今後何かの更新が入るタイミングにでも改修いただければと思います。

    返信削除
    返信
    1. ♪ aruto 様
       場末のblogへようこそ!

      お返事が遅れまして申し訳ありません。
      最近、{コメントされたよメール}がgoogleから来ないんでいんですよねぇ~、何でだろう。BAN寸前か?

      エラーの件、詳細にスタックトレースまで書いていただき恐れ入ります。
      ご同業者ですね♪ githubあたりで糞ソースコードを公開した方が早いかも。ソースのチラ見とスタックトレースから、地図タイルのHTTPリクエストがタイムアウトした時のエラーハンドルがNGな様です。

      タイムアウト時に2行目か3行目でコケてるんでしょうね。再現性がアレですが、処理中にLANケーブル抜いてみようかな。

      Catch webEx As WebException
        objHttpResp = CType(webEx.Response, HttpWebResponse)
        If objHttpResp.StatusCode <> HttpStatusCode.NotFound OrElse mblnSkipHttp404 = False Then
          MessageBox.Show(webEx.Message, C_TitleName, MessageBoxButtons.OK)
        Else
          If stzTableName.Length > 0 Then
            'GoogleXYZタイル番号で"NoMap"をキャッシュ
            byImgSrc = System.Text.Encoding.GetEncoding(932).GetBytes(C_NoMap)
            blnRet = mblnSetTileCache(lngTileX, lngTileY, intTileZ, stzTableName, byImgSrc)
            If blnRet = False Then
              Exit Try
            End If
          End If
          blnNoMap = True
        End If
      Catch ex As Exception
        MessageBox.Show(ex.Message, C_TitleName, MessageBoxButtons.OK)
      End Try


      削除
  8. このコメントはブログの管理者によって削除されました。

    返信削除
  9. はじめまして。
    ezjnxwinを有り難く使わせていただいております。

    最近出たeTrex32xでもezjnxwinで生成したjnxファイルを表示させることができました。表示のためのパッチは、いつも参照していたwhiter.brinkster.netでは22x/32x用が
    無かったのですが、ネットを探し回って入手することができました。

    返信削除
    返信
    1. AM 様♪
       場末のblogにようこそ。
      2月に新規機種を発売したのですね!GARMINはedge系しか更新しないかと思っていましたが未だ需要があると見込んでいる様ですね。個人的にはGPSMAP 66iが魅力的です。イリジウム端末として使用できるのは良いですね。KDDIのSIMが使用できるかどうか分かりませんがほぼ全世界のどこでも連絡可能なのはextremeの方には良いかと。旨いところ突いてきましたねぇー。情報ありがとうございます。

      削除
  10. 久々にJNXファイルを作ろうとしたら、座標設定ボタンを押しても経度/緯度に 00.0000000 の値が入力されるだけでした。
    以前地図を作っていたPCをリプレースしてしまったので、このPCの問題なのかも知れませんが、また国土地理院のウォッちずの仕様が変更されて使用できなくなってしまったのでしょうか?

    返信削除
    返信
    1. 匿名 様♪
      場末のblogへようこそ!

      お知らせありがとうございます。

      調べてみたら座標のclass名が "latlon_10" → "latlon10" へ変更になった様です。
      修正してデバッグしたら値が正しく入ったので近日正式にビルドしたものをうpしようと思いますので少しお待ちくださいませ。

      削除
    2. 私に対処できる能力は無く...、頼ってばかりですみません。
      ご対応頂けるとの御返事、ありがとうございます。

      削除
    3. 匿名 様♪

      対応版を上げました。

      削除