问题标签 [georuby]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
494 浏览

ruby - 在 shapefile 中为多边形着色

我有一个ESRI Shapefile,其中包含行政区域的多边形以及与这些区域相对应的数据。我想根据数据生成这些 shapefile 的图像,如下所示

在此处输入图像描述

Here's an answer about doing this in ASP.NET,上面的图像是用 R 生成的;不幸的是,我对这两种语言都不熟悉。在 Ruby 中是否有一种简单的方法可以做到这一点,例如。地理红宝石?在例如轻松实现这一点的想法。Java、C 或(不寒而栗)PHP 也将受到欢迎。

0 投票
2 回答
378 浏览

ruby-on-rails - 为 Ruby 1.9 和 Rails 3.2.5 编写 GeoRuby Oracle 适配器

我们是一家基于 GIS RoR 的软件公司,它处理空间数据。目前,我们直接在Oracle中执行我们的纯SQL,但这是一个具有挑战性的过程,现在我们考虑切换到GeoRuby的想法。
我们希望在我们公司的 Oracle 数据库和 Rails 环境中采用 GeoRuby。
据您所知,没有用于此目的的结构良好的适配器。
目前,我正在开发自己的空间预言机适配器。现在,我可以使用迁移创建表和几何列。此外,我可以设法为表创建模型。
例如,假设有一个具有两个属性(名称:字符串和几何:几何)的 GeoShape 模型,我可以这样做:

执行上述语句后,我有:

现在我想用 g.save 将我的模型保存到数据库中。

我收到以下完全合乎逻辑的错误,因为 GeoRuby 和 Oracle 类型之间的类型不匹配。


有人对这样做的过程有任何想法吗?
我想,我必须将我的 GeoRuby 结构映射到相应的 Oracle SDO_Geometry,但我对这个过程一无所知。

非常感谢您的帮助。

0 投票
1 回答
1729 浏览

ruby-on-rails - 获取 OCIError:ORA-00932:Rails 3 中的数据类型不一致

这是场景。
我正在为 Ruby On Rails 编写我的 geo-ruby oracle 适配器,它支持开箱即用的 SDO_GEOMETRY。
进展顺利。我编写了从 Oracle DB 中成功选择 SDO_GEOMETRY 对象的代码。
当我想编写插入和更新部件时,一切都毁了。
以下是我的想法。我希望能够做到这一点:

我从上述语句中生成了以下 sql 查询:

但上述查询的执行给了我这个错误:

我进入 oracle_enhanced_adapter 来追踪问题。我尝试对其进行修补并手动初始化 binds[3][1] (这是我的数据库中 sdo_geometry 列的值),如下所示:

不幸的是,它没有帮助。我仍然得到同样的错误 ORA-00932。有任何想法吗?解决这个问题对我来说非常重要。

PS:###DAVE 部分是我的 oracle_enhanced_adapter.rb 猴子补丁
PS:这是我的配置。

  • 甲骨文 11.2
  • Ruby 版本 1.9.3 (i386-darwin11.3.0)
  • 导轨版本 3.2.5
  • 活动记录版本 3.2.5
0 投票
1 回答
227 浏览

ruby-on-rails - 如何解决 Rails、GeoRuby(和 postgis/postgresql):NameError:未初始化的常量点?

当我在 Rails 控制台上运行代码时: Point.from_x_y(88.365805,22.543538)

然后得到错误:

谁能帮我消除这个错误?

require 'gems'在运行此代码之前正在运行:

0 投票
0 回答
71 浏览

georuby - 检查点是否在带有缓冲区的多边形内

我有一个 geojson 和一个点(纬度,经度)。我需要弄清楚该点是否在geojson定义的区域内。但是限制是放松的,即如果该点在geojson的外边缘内部或0.5英里之内,则可以认为该点在该区域内。

有没有办法使用 georuby 做到这一点?