@paqira/jgdtrans
v0.1.2
Published
Coordinate Transformer by Gridded Correction Parameter (par file)
Downloads
23
Maintainers
Readme
jgdtrans for TypeScript/JavaScript
Unofficial coordinate transformer by Gridded Correction Parameter which Geospatial Information Authority of Japan (GIAJ, formerly GSIJ) distributing for TypeScript/JavaScript.
国土地理院が公開しているパラメータファイル(par ファイル)による座標変換(順逆変換)の非公式な実装です。
Features:
- Supports offline transformation (no web API)
- オフライン変換(web API 不使用)
- Supports both original forward and backward transformation
- 順変換と逆変換の両方をサポート
- Supports verified backward transformation
- 精度を保証した逆変換のサポート
- Supports all TKY2JGD, PatchJGD, PatchJGD(H), HyokoRev, SemiDynaEXE and POS2JGD (geonetF3 and ITRF2014)
- Clean implementation
- 保守が容易な実装
Usage
This package does not contain parameter files, download it from GIAJ.
このパッケージはパラメータファイルを提供しません。公式サイトよりダウンロードしてください。
It supports ESM and non-ESM loading:
<!-- ESM -->
<script type="module" type="text/javascript">
import jgdtrans from 'https://cdn.jsdelivr.net/npm/@paqira/[email protected]/dist/jgdtrans.js';
...
</script>
<!-- non-ESM -->
<script
nomodule
defer
src="https://cdn.jsdelivr.net/npm/@paqira/[email protected]/dist/jgdtrans.nomodule.min.js"
integrity="sha256-StpZg/zmEw183fm6Dcx9ifllTnf8bwdeJWAqz+heTtU="
crossorigin="anonymous"
></script>
Sample code:
// Comment out following `import ...;` when loading jgdtrans.nomodule{.min}.js
import jgdtrans from "https://cdn.jsdelivr.net/npm/@paqira/[email protected]/dist/jgdtrans.js";
// Contents of SemiDyna2023.par
const contents = "...";
const tf = jgdtrans.Transformer.fromString(contents, "SemiDynaEXE");
// Geospatial Information Authority of Japan
const origin = new jgdtrans.Point(36.10377479, 140.087855041, 2.34);
// forward transformation
const result = tf.forward(origin);
// prints Point(latitude=36.103773017086695, longitude=140.08785924333452, altitude=2.4363138578103)
console.log(result.toString());
// backward transformation
const p = tf.backward(result);
// prints Point(latitude=36.10377479, longitude=140.087855041, altitude=2.34)
console.log(p.toString());
// backward transformation compatible to GIAJ web app/APIs
const q = tf.backwardCompat(result);
// prints Point(latitude=36.10377479000002, longitude=140.087855041, altitude=2.339999999578243)
console.log(q.toString());
Licence
MIT
Reference
- Geospatial Information Authority of Japan (GIAJ, 国土地理院): https://www.gsi.go.jp/, (English) https://www.gsi.go.jp/ENGLISH/.
- TKY2JGD for Windows Ver.1.3.79 (reference implementation): https://www.gsi.go.jp/sokuchikijun/tky2jgd_download.html released under 国土地理院コンテンツ利用規約 which compatible to CC BY 4.0.
- Other implementation: Rust https://github.com/paqira/jgdtrans-rs, Python https://github.com/paqira/jgdtrans-py, Java https://github.com/paqira/jgdtrans-java.