草庐IT

绘制多边形

全部标签

ruby-on-rails - Ruby on Rails PostGIS - 将多边形记录插入数据库

我将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

ruby-on-rails - 具有六边形架构和 DCI 模式的框架和数据库适配器

我尝试用Ruby设计一个基于Web的应用程序。我开发了一个简单的核心应用程序,在没有框架和数据库的情况下在六边形架构中实现DCI范例。核心六边形中有小六边形和网络,数据库,日志等适配器。每个六边形都在没有数据库和框架的情况下自行运行。在这种方法中,我如何提供与数据库模型和实体类的关系作为独立于数据库的关系。我想在将来将框架从Rails更改为Sinatra或数据库。事实上,我如何在这个核心Hexagon中实现完全隔离的rails和mongodb的数据库适配器或框架适配器。有什么想法吗? 最佳答案 ROM呢?(Ruby对象映射器)。还有

sql - Ruby Rails Postgis - 查找多边形中的所有点

我需要一些帮助来构建sql查询以在带有activerecord-postgis-adapter的rails中使用。我一直在阅读大量书籍,但现在有点卡住了,非常感谢任何帮助。我有两个模型Events和Areas:事件有一个点类型的“几何”列classEvent{:srid=>4326,:type=>"polygon",:geographic=>true}区域有一个“几何”列,类型为多边形classArea{:srid=>4326,:type=>"point",:geographic=>true}我可以在谷歌地图上创建和绘制事件和区域,并通过点击map并保存到数据库来创建区域。我希望能够执

ruby - 在 Ruby 中绘制点和矩形

我正在寻找一种简单的方法来绘制大约10个点和矩形,以便能够查看我的算法哪里出了问题。我查看了gnuplot,但似乎绘制矩形特别糟糕。 最佳答案 SVG(MDNTutorial)是一种非常简单的基于文本(XML)的格式,您可以使用Ruby轻松生成它,而无需任何SVG库,并可以在任何现代Web浏览器中查看。这是一个示例:通过字符串插值的SVG点points=(0..5).map{[rand(100)-50,rand(100)-50]}puts#{points.map{|x,y|""}.join("\n")}ENDSVG输出:http:/

ruby - 如何在两个六边形字符串之间进行异或运算?

我有两个十六进制字符串,我需要对它们进行异或操作。我的六弦琴喜欢,a="1A6F2D31567C80644A5BEF2D50B986B";b="EF737F481FC7CDAE7C8B40837C80644";它们之间如何进行异或运算?你能给出一些指导方针吗? 最佳答案 这适用于任何基地:>>(a.to_i(16)^b.to_i(16)).to_s(16)=>"f51c527949bb4dca36d0afae2c39e2f"但是你可以使用String#hex用于十六进制字符串。 关于ru

javascript - 如何动画绘制一系列线段

我想画一个点,大约1秒后我想画下一个点。这是否可能:我已经试过了:functionsimulate(i){setTimeout(function(){drawPoint(vis,i,i);},1000);}for(vari=1;i不幸的是,这是行不通的。它只是立即绘制整条线。 最佳答案 这是行不通的,因为for循环将立即运行到结束,setTimeouts将被同时调度,所有函数将同时触发。取而代之的是,这样做:vari=1;(functionloop(){if(i++>200)return;setTimeout(function(){

javascript - 可以 polygon.setPath();用于完全重新定义多边形?

GooglemapJavaScriptAPIV3。我的映射让我处理了多边形的概念,在我深入研究代码之前,我试图制定一个策略。我永远不会一次在map上有一个以上的多边形,所以我希望我可以定义一个多边形并像使用标记一样重复使用它。我的理解是否正确,多边形setPath();函数将移动多边形以表示新的点数组?文档说......“从MVCArray插入或删除LatLngs将自动更新map上的多边形。”但它并没有直接说你可以使用setPath();给它一个全新的点阵。我在用伪代码思考...//someeventfirespolygon.setPath(latlngArray);bounds=ne

javascript - 在谷歌地图上自由绘制

我正在使用GoogleMapsAPIV3在Googlemap中绘制一些自由形式的多边形,而不是标准库附带的标准点击多边形。一切都很好。问题:多边形生成大量可编辑点。如何在需要时简化多边形并创建可编辑点?这里是我的代码:varlatlng=newgoogle.maps.LatLng(46.779231,6.659431);varoptions={center:latlng,zoom:19,mapTypeId:google.maps.MapTypeId.ROADMAP,draggable:false};varmap=newgoogle.maps.Map(document.getElemen

javascript - 添加一个点以扩展多边形而不将其附加到 Google map 中?

我正在Googlemap中通过可以拖动以reshape形状的标记构建多边形。因此,当有3个标记时,将绘制多边形,并在形状中附加更多标记,扩展它。当用户只想遵循简单的顺时针/逆时针模式时,这很好,但当他想通过其边缘之一扩展多边形时,它会附加标记,扭曲自身。在此示例中,如果我们添加标记1、2和3,它将绘制一个简单的三Angular形。但是,如果添加标记4,多边形就会自行扭曲。相反,我希望在添加4时将其插入标记1和2之间,如下图所示:基本上,在多边形的顶点数组中,而不是:[//marker1position,//marker2position,//marker3position,//curr

javascript - Highcharts 绘制列高度的倒数

我正在尝试绘制一个分类的多轴排名柱形图。排名第一的应该是最高的列,最低的排名应该是最短的。基本上我希望条形的高度是倒数。非常接近:varplayer_name_array=["AaronRodgers","AndrewLuck","DrewBrees","RussellWilson","PeytonManning","RyanTannehill","TonyRomo","MattRyan","CamNewton","BenRoethlisberger","EliManning","PhilipRivers","ColinKaepernick","TeddyBridgewater","M