Giter Site home page Giter Site logo

ruipinge / geofiddle Goto Github PK

View Code? Open in Web Editor NEW
16.0 7.0 1.0 2.07 MB

Geometric conversions between different formats and projections

License: MIT License

Shell 55.07% JavaScript 42.66% HTML 0.99% SCSS 0.54% EJS 0.73%
conversion wkt wicket geojson epsg polyline maps bng wgs84 geometries

geofiddle's Introduction

GeoFiddle Build Status Coverage Status

Plot, share, and convert geometries using different formats and projections. Try it at geofiddle.com.

Some of the most notable features:

  • Format and Projection auto-detection
  • Direct links for easy sharing of geometries and conversions
  • Area and distance measurements (under development!)
  • Command line utility (node.js) for scripting and batch processing (under development!)

Supported formats:

Supported projections:

Demo and Examples

Try writing some of the following geometries here:

{
    "coordinates": [
        531473,
        181763
    ],
    "type": "Point"
}
POINT(-9.129814 38.736847)
-0.1068354 51.5114059
200300 200200 200300 200300 200400 200300 200300 200200

Dependencies and Inspiration

Development Environment

Dev Server

Using nvmw, a simple nvm wrapper, GeoFiddle can be served locally by running:

geofiddle > ./nvmw npm install
geofiddle > ./nvmw npm test
geofiddle > ./nvmw npm start

Unit Tests

Code can be tested by running:

geofiddle > ./nvmw npm install
geofiddle > ./nvmw npm test

Clean

Downloaded, generated and/or temporary files including node.js modules, nvm node.js versions, coverage reports, etc. can be removed by running:

geofiddle > ./nvmw npm run clean

Google Maps JavaScript API

So that the Google Map can be loaded without warnings and full featured, there's the need to create a file named PRIVATE.json with your Google Maps JavaScript API key and any existing Map ID for custom map styling. Without any costs (but requiring a credit card), an API key can be created here.

The file contents should look like this (although both values are dummy and will not work):

{
  "apiKey": "AIzaSyDg0pS7JeL2uo6IrPQ5FNV--GIrFp1M8CQ",
  "mapId": "aba6eaf2002b017f"
}

geofiddle's People

Contributors

diogocostaonenetwork avatar ruipinge avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

geofiddle's Issues

Points from multiple WKT geometries incorrectly being linked

Example:

LINESTRING (270552 45740, 270549.52 45740.45, 270547 45740, 270544 45738, 270542 45735, 270542 45733)
LINESTRING (270563.17 45729.01, 270567.7 45732.27, 270572.73 45736.14, 270579.08 45741.07, 270582 45744)
LINESTRING (270542 45733, 270541 45732, 270541 45731)
LINESTRING (270563.17 45729.01, 270561.96 45727.26, 270560.02 45725.73)

But working with a newline in between each other:

LINESTRING (270552 45740, 270549.52 45740.45, 270547 45740, 270544 45738, 270542 45735, 270542 45733)

LINESTRING (270563.17 45729.01, 270567.7 45732.27, 270572.73 45736.14, 270579.08 45741.07, 270582 45744)

LINESTRING (270542 45733, 270541 45732, 270541 45731)

LINESTRING (270563.17 45729.01, 270561.96 45727.26, 270560.02 45725.73)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.