Socket
Socket
Sign inDemoInstall

proj4-fully-loaded

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

proj4-fully-loaded

Proj4JS Projector Fully Loaded with Projections


Version published
Weekly downloads
6.1K
increased by4.57%
Maintainers
1
Weekly downloads
 
Created
Source

proj4-fully-loaded

Proj4JS Projector Fully Loaded with Projections

install

npm install -S proj4-fully-loaded

motivation

One of the most popular questions I hear from users of georaster is how do I use a GeoTIFF that's in UTM or another projection not included in the default build of proj4. I've created this library, so users can use georaster and georaster-layer-for-leaflet without worrying about how to find and load the projection information for their data.

usage

Use it just like you would proj4, except you don't have to load your projection.

const proj4 = require("proj4-fully-loaded");

const pointIn4326 = [-85.3097, 35.0456];

// EPSG:32617 is automatically included in proj4-fully-loaded
const pointInUTM = proj4("EPSG:4326", "EPSG:32617").forward(pointIn4326);
// pointInUTM is [106823.88325412886, 3886600.558377227]

manual way

For your reference, here is the way to manually load the projection information without the proj4-fully-loaded library.

const proj4 = require("proj4");

// find and load projection specific definition
// taken from http://epsg.io/32617
proj4.defs("EPSG:32617", "+proj=utm +zone=17 +datum=WGS84 +units=m +no_defs");

const pointIn4326 = [-85.3097, 35.0456];

const pointInUTM = proj4("EPSG:4326", "EPSG:32617").forward(pointIn4326);
// pointInUTM is [106823.88325412886, 3886600.558377227]

what about file size?

One of the inevitable questions will be, "don't you increase your bundle size by loading all this projection information?" This is a very valid question. This library (as compared to vanilla proj4) should only increase your bundle size by about 175 Kilobytes. If you are creating a library or application that supports multiple projections, please consider using this library and evaluating if the trade off is worth it. If you are building something that supports just one specific projection, you probably want to save size and load projection information using the approach above.

support

If you have any questions or comments, please post an issue here or email me at daniel.j.dufour@gmail.com

Keywords

FAQs

Package last updated on 06 Nov 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc