尝试将 Rgeo 与轨道一起使用



我是轨道上的新手,尝试使用Rgeo和GeoJSON。我想从我的数据中提取GeoJSON以在传单中使用。

安装GeoJSON(和/或位置(的正确方法是什么。

宝石文件 :

gem 'activerecord-postgis-adapter'
gem 'rgeo-geojson'
gem 'rgeo'
gem 'rgeo-activerecord'

是否需要任何其他配置以及安装它的正确方法是什么(GeoJSON(

require 'rgeo/geo_json'
RGeo::ActiveRecord::SpatialFactoryStore.instance.tap do |config|
# By default, use the GEOS implementation for spatial columns.
config.default = RGeo::Geos.factory_generator
# But use a geographic implementation for point columns.
config.register(RGeo::Geographic.spherical_factory(srid: 4326), 
geo_type: "point")
end

要读取 geojson 数据,您只需捕获变量中的纯文本并对其进行解析。

str = File.open("sample.geojson").read
shp = RGeo::GeoJSON.decode(str)

我相信 4326 是默认的 SRID,因此从技术上讲,由于您尚未重新投影它,因此对于这个实例没有任何可配置的内容。

您正在使用工厂,而我使用的是运行时默认值,但是要使用工厂,您只需在它们上调用相同的方法即可。

最新更新