coords-formater
v1.0.3
Published
A coordinates parser and formater
Downloads
2
Readme
Introduction
This library is intended to facilitate the use of coordinates, making conversions between formats and preparing the fields to receive this type of data effortlessly.
Instalation
# NPM
npm install coords-formater --save
# Yarn
yarn add coords-formater
// Es6 module pattern
import coords from 'coords-formater'
// Node module pattern
const coords = require('coords-formater')
Destructuring
// Es6 module pattern
import { convert, parse } from 'coords-formater'
// Node module pattern
const { normalize } = require('coords-formater')
Properties
The properties
below can be used to configurate some methods.
Property|Description|Default Value|Type
---|---|---|---
degrees|Show degrees. Always true|true
|Boolean
minutes|Show minutes|true
|Boolean
seconds|Show seconds. False if minutes is also false|true
|Boolean
spaces|Show spaces between parts|true
|Boolean
degreeIndicator|Degree part indicator|°
|String
minuteIndicator|Minute part indicator|'
|String
secondIndicator|Second part indicator|"
|String
showSign|Configure to show [+/-]
sign at start|true
|Boolean
showCompassDirection|Configure to show compass direction at end|true
|Boolean
decimalSeparator|Last part's decimal separator|.
|String
decimalPlaces|Number of decimal places|5
|Integer
Methods
normalize( String
coordinate )
Normalizes input coordinate, removing unpattern characters
Parameters
Name|Type|Optional|Description
---|---|---|---
coordinate|String
|required|Coordinate in any Accepted Input Formats
Example
// Import
const { normalize } = require('coords-formater');
// Replaces "º" by "°"
normalize('41º 12.123"')
// Returns
// 41° 12.123"
parse( String
coordinate )
Extract coordinates components from passed string
Parameters
Name|Type|Optional|Description
---|---|---|---
coordinate|String
|required|Coordinate in any Accepted Input Formats
Example
const { parse } = require('coords-formater');
parse('S17 33 08.352');
/*Returns
{
compass:"S",
degrees:17,
minutes:33,
seconds:8.352,
signal:"-"
}*/
convert( String
coordinate [ , Object
options ] )
Convert cordinate
to other format according options
Parameters
Name|Type|Optional|Description
---|---|---|---
coordinate|String
|required|Coordinate in any Accepted Input Formats
options|Object
|optional|Properties object
Example
const { convert } = require('coords-formater') ;
convert('41° 25\' 01" W', {
showSign: true,
showCompassDirection: false,
minutes: false
}
);
// Returns
// - 41.41694444444445°
toString( Object
parsedCoordinate [ , Object
options ] )
Convert the object parsedCordinate
to other format according options
Parameters
Name|Type|Optional|Description
---|---|---|---
parsedCordinate|Object
|required|Object of coordinates parts, like returned by parse()
options|Object
|optional|Properties object
Example
const { toString } = require('coords-formater') ;
// object returned by parse()
const parts = {
compass:"S",
degrees:17,
minutes:33,
seconds:8.352,
signal:"-"
}
// Configuration options
const options = {
showSign:false,
showCompassDirection:true
}
toString(parts, options );
// Returns
// 17° 33' 8.352" S
toFloat( String
coordinate [ , Object
options ] )
Convert cordinate
to numeric format with float type
Parameters
Name|Type|Optional|Description
---|---|---|---
coordinate|String
|required|Coordinate in any Accepted Input Formats
Example
const { toFloat } = require('coords-formater') ;
toFloat('42 12 10')
// Returns
// 42.202777777777776
toFloat('S 42 12 10')
// Returns
// - 42.202777777777776
Accepted Input Formats
- 41 25 01N
- 41°25'01"N
- S17 33 08.352
- +17 33 08.352
- -41°25'01"
- 41 25N
- 41°25'N
- N41 25.117
- -41 25.117
- -41°25'
- 41 N
- 41°N
- N41.092
- 90S
- -41°
- +N41.092
License
MIT
Copyright
(c) klawdyo.com (klawdyo) 2020