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

rgeo-shapefile

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rgeo-shapefile

  • 3.1.0
  • Rubygems
  • Socket score

Version published
Maintainers
2
Created
Source

RGeo::Shapefile

Gem Version CI

RGeo::Shapefile is an optional module for RGeo for reading geospatial data from ESRI shapefiles.

Summary

RGeo is a key component for writing location-aware applications in the Ruby programming language. At its core is an implementation of the industry standard OGC Simple Features Specification, which provides data representations of geometric objects such as points, lines, and polygons, along with a set of geometric analysis operations. See the README for the rgeo gem for more information.

RGeo::Shapefile is an optional RGeo add-on module for reading geospatial data from ESRI shapefiles. The shapefile format is a common file format for geospatial data sets. It is specified in this ESRI whitepaper.

Example:

require 'rgeo/shapefile'

RGeo::Shapefile::Reader.open('myshpfil.shp') do |file|
  puts "File contains #{file.num_records} records."
  file.each do |record|
    puts "Record number #{record.index}:"
    puts "  Geometry: #{record.geometry.as_text}"
    puts "  Attributes: #{record.attributes.inspect}"
  end
  # If using version 3.0.0 or earlier, rewind is necessary to return to the beginning of the file.
  # file.rewind
  record = file.next
  puts "First record geometry was: #{record.geometry.as_text}"
end

Skipping validity checks

If you have shapefiles that are failing rgeo validity checks you can skip validity checks by passing allow_unsafe: true to the RGeo::Shapefile::Reader#open method:

RGeo::Shapefile::Reader.open('myshpfil.shp', allow_unsafe: true) do |file|
  # ...
end

Install

RGeo::Shapefile has the following requirements:

  • Ruby 2.4.0 or later
  • rgeo 1.0.0 or later.
  • dbf 4.0 or later.

If you need support for older Rubies, please use 2.x version

Include in your bundle:

gem 'rgeo-shapefile'

Install RGeo::Shapefile as a gem:

gem install rgeo-shapefile

See the rgeo gem, a required dependency, for further installation information.

If you are using Ruby 2.3, use version 2.0.x of this gem.

If you are using Ruby 2.0-2.2, use version 1.0.x of this gem.

If you are using Ruby 1.9, use version 0.3.x of this gem.

If you are using Ruby 1.8, use version 0.2.x of this gem.

Development and support

Documentation is available at https://www.rubydoc.info/gems/rgeo-shapefile

Source code is hosted on Github at https://github.com/rgeo/rgeo-shapefile

Contributions are welcome. Fork the project on Github.

Report bugs on Github issues at https://github.com/rgeo/rgeo-shapefile/issues

Acknowledgments

rgeo-shapefile was orginally written by Daniel Azuma (http://www.daniel-azuma.com).

Development is supported by:

Although we don't use shapelib (http://shapelib.maptools.org) to read ESRI shapefiles, we did borrow a bunch of their test cases.

License

Copyright Daniel Azuma, Tee Parham

https://github.com/rgeo/rgeo-shapefile/blob/main/LICENSE.txt

FAQs

Package last updated on 01 Oct 2023

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