Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

navigate

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

navigate

  • 1.1.1
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Build Status Gem Version Coverage Status

navigate

A simple gem with some functions, to calculate the distance, bearing between two positions or the next position considering a initial position, distance and bearing.

Usage

In your Gemfile

gem 'navigate'

or just install

gem install navigate

###Distance between 2 positions

# the firs param is the latitude, second is the longitude
position1 = Navigate::Position.new(80.0, 120.0)
position2 = Navigate::Position.new(90.0, 45.0)

Navigate::distance_between(position1, position2)
# => 1111.9508372419155

By default the function will return the distane in kilometers

It has a third optional param, to define the unit of the return

Navigate::distance_between(position1, position2, 'NM')
# => 600.4054799908141

Available units

{ 'KM', 'MI', 'NM', 'YD', 'FT' }

Bearing between two positions

position1 = Navigate::Position.new(-90.0, 180.0)
position2 = Navigate::Position.new(90.0, 45.0)

Navigate::bearing(position1, position2)
# => 292.5

Return a new position based on a initial position, bearing and distance

position1 = Navigate::Position.new(-90.0, 180.0)

Navigate::destination(position1)
# => #<Navigate::Position:0x00000003edc7b0 @latitude=-89.10067966450693, @longitude=-90.0>

By default the function will use a bearing = 90.0, distance = 100 KM

It receive a hash of options to pass the bearing, distance and the unit of the distance

Navigate::destination(position1, bearing: 180.0, distance: 150, radius_unit: 'FT')
# => #<Navigate::Position:0x00000003e9b198 @latitude=-90.0, @longitude=-180.0>

Contributing to navigate

Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.

Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.

Fork the project.

Start a feature/bugfix branch.

Commit and push until you are happy with your contribution.

Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.

Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

License

The navigate gem is distributed under the MIT License.

FAQs

Package last updated on 09 Jun 2015

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