@maplat/transform
TypeScript icon, indicating that this package has built-in type declarations

0.1.5 • Public • Published

Maplat Transform

A JavaScript library that performs coordinate transformation between two plane coordinate systems using transformation definitions generated by Maplat. This is part of the Maplat project.

日本語のREADMEはこちら

Key Features

  • Import Transformation Definitions: Import and build internal structures from transformation definitions generated by Maplat
  • Bidirectional Coordinate Transformation: Convert coordinates between two planes in both directions
  • Topology Preservation: Maintains homeomorphic properties during transformation
  • Multiple Coordinate System Support: Handles transformations between various coordinate systems including standard orthogonal coordinates, Y-axis inverted coordinates, and distorted coordinates like bird's-eye views
  • State Management: Save and restore transformation states

Installation

npm

npm install @maplat/transform

Browser

<script src="https://unpkg.com/@maplat/transform/dist/maplat_transform.umd.js"></script>

Basic Usage

// Import transformation definition
const transform = new Transform();
transform.setCompiled(compiledData);  // Apply transformation definition generated by Maplat

// Forward transformation (source → target coordinate system)
const transformed = transform.transform([100, 100], false);

// Backward transformation (target → source coordinate system)
const restored = transform.transform(transformed, true);

Error Handling

The library may throw errors in the following cases:

  • Transformation errors in strict mode
  • Attempting backward transformation when not allowed
  • Invalid data structure during transformation

If errors occur, the transformation definition data needs to be modified. Please use editor tools that incorporate @maplat/tin to modify transformation definitions.

Important Note

This library specializes in executing coordinate transformations and does not include functionality for generating or editing transformation definitions. If you need to create or edit transformation definitions, please use the @maplat/tin package.

License

Maplat Limited License 1.1

Copyright (c) 2024 Code for History

Developers

  • Kohei Otsuka
  • Code for History

We welcome your contributions! Feel free to submit issues and pull requests.

Package Sidebar

Install

npm i @maplat/transform

Weekly Downloads

4

Version

0.1.5

License

Maplat Limited License 1.1

Unpacked Size

121 kB

Total Files

13

Last publish

Collaborators

  • kochizufan