我将RoR与PostGIS结合使用来存储位置数据。我正在尝试使用圆(例如,带半径的中心点)来存储估计位置。我试过类似的东西,但它不起作用:@location=Location.new(:place_id=>place.id,:circle=>%{ST_Buffer(ST_MakePoint(#{latitude},#{longitude})::geography,#{accuracy})})我也尝试过使用RGeo,它是出厂设置,但不确定如何准确使用它。任何帮助将不胜感激。谢谢。编辑1:我取得了一些进步。factory=RGeo::Cartesian.factorycenter_poin
我需要一些帮助来构建sql查询以在带有activerecord-postgis-adapter的rails中使用。我一直在阅读大量书籍,但现在有点卡住了,非常感谢任何帮助。我有两个模型Events和Areas:事件有一个点类型的“几何”列classEvent{:srid=>4326,:type=>"polygon",:geographic=>true}区域有一个“几何”列,类型为多边形classArea{:srid=>4326,:type=>"point",:geographic=>true}我可以在谷歌地图上创建和绘制事件和区域,并通过点击map并保存到数据库来创建区域。我希望能够执
首先,我使用Rails3和Ruby1.9.2。我在将PostgreSQL与PostGIS结合使用时遇到问题。我试过两个gem:https://github.com/nofxx/georubyhttps://github.com/rgeo/activerecord-postgis-adapter问题是,来自nofxx的第一个运行良好,但它不提供rake任务,因此postgis.sql和spatial_ref_sys.sql被插入到数据库中。我需要这个,因为它使用测试很舒服而且很重要(自动创建数据库,插入postgissql并在运行“raketest”时执行迁移)。奇怪的是,在github
我在postgis中遇到st_distance函数的问题。它返回错误的结果——对于小距离,误差不大——10米,也许20米,但对于更大的距离,我的结果与例如谷歌地图结果之间的差异太大——700米,最高2公里或更高。我正在使用srid=4326。第二件事-也许这就是问题-说我有4公里远的地方。Postgis说距离大约0.0417{{some_units}}。现在我只是将结果乘以100并得到或多或少准确的结果。我可以向这个函数传递一些参数,表示“以公里/米为单位的返回值”吗?附言。postgres版本是9.0.1 最佳答案 您应该使用地理
我们使用Postgres数据库运行CakePHPv3.x。我需要选择一些经纬度与另一点在X距离以内的记录。邮政地理信息系统hasafunctionthatdoesjustthis但似乎我必须纠正原始SQL查询才能使用它。我不是在寻求编写原始查询的帮助,但我正在寻求确认原始查询方法是否是在充分利用框架的同时使用此扩展的正确方法。我搜索过,但没有找到任何库来扩展CakePHPORM以包含它。也许还有我没想到的第三种选择。[注意:这不起作用...]publicfunctionfetch(){$maxMetersAway=10*1000;$lat=$this->request->query['
我想根据我从PostgreSQL空间数据库构建的栅格输出创建图像。我有一个问题:SELECT(ST_AsPNG(ST_AsRaster(geom,1.5::doubleprecision,2::doubleprecision,11,11,'8BUI',100,0,0,0,false)))AS"png"FROM"geom"AS"g"LIMIT1当我转储返回的结果时,我得到:resource(83)oftype(stream)我已经尝试过许多使用PHP的内置图像处理函数的组合,但在实际绘制多边形时似乎无处可去。我总是遇到“提供的资源类型无效”或类似问题。似乎没有可用的有用文档-谁能指导我正
我想使用PHP在postgresql/postgis的两层上应用相交函数。其中两层,一层来自前端Geojsonjavascript对象,另一层来自数据库本身。现在如何转换或读取GeojsonJavaScript对象是作为一层的PHPpostgresql代码。请帮助我! 最佳答案 最后,我能够在PHP和postgresql中重用Java脚本Geojson对象作为层,如下所示。首先,我将JavaScript对象转换为字符串,然后将ajax请求中的相同字符串传递给PHP文件。在PHP文件中,我通过使用ST_GeomFromGeoJSONp
(注意:the_geom是一个几何值(类型:LINESTRING),在这种情况下,我将它们随机化以提高可读性)gid|kstart|kend|ctrl_sec_no|the_geom|the_sum_geom626|238|239|120802|123456|NULL638|249|250|120802|234567|NULL4037|239|249|120802|345678|NULL【实战说明】不介意者略过Iwouldliketodo'this'(asetofqueriesfrommypastquestion,linklocatedontheendofthispost)foreve
我有以下JDBC代码。请注意,我正在尝试使用PostGIS地理:PreparedStatementstmt=db.prepareStatement("INSERTINTO"+"source_imagery(image_path,boundary,image_time)"+"VALUES(?,ST_GeographyFromText('POLYGON(("+"??,??,??,??))'),?)");stmt.setString(1,file.getAbsolutePath());stmt.setDouble(2,bounds.getY());stmt.setDouble(3,bound
我正在尝试将几何对象存储到我的postgist数据库中,该数据库有一个包含几何列的表。我从另一个带有几何列的表中获取了几何值,然后打印了之前获取的值,没问题。为了存储几何值,我使用下一个函数:staticvoidinsertaGeometria(Geometrygeom,intidInstalacion)throwsClassNotFoundException,SQLException{Connectioncongeom=conectarPGA();Stringgeomsql="INSERTINTOgeorrepositorio.geometria(id,point)VALUES(?,