Questions tagged «qgis-plugins»

为QGIS软件包添加功能的软件插件

1
是否从QGIS测量工具获得距离?
我已经建立了一个插件来为Spatialite数据库提供输入掩码。有两个字段代表对象的最小/最大尺寸。 当我iface.actionMeasure().trigger()用两个按钮“ Measure” 调用“测量工具”()时,单击尺寸,然后用键盘将值键入字段(QLineEdit)。 使用“测量工具”右键单击(完成测量)后,是否有可能将值自动提交到该字段(最小或最大,QLineEdit)? 通话计量工具(有效) 左键单击:开始测量 4.一次:右键单击并将“测量工具的总值”提交到最小值字段(QLineEdit)。 更新1: 问了这个问题的一天后,我想到了一个线串层,可以用作测量工具(ST_Length(geom))。优点是您可以完全控制操作并从中获取数据。缺点是项目中的附加层。 工作流程可以是: 单击测量:切换编辑,激活“添加功能” 创建代表对象最小尺寸的线串 确认更改,计算线串的长度(ST_Length(geom)),将长度提交给QLineEdit 关闭对话框并删除线串(DELETE FROM) 但是我的实际问题仍然存在。有没有办法直接从测量工具获取距离值? 更新2: 在Jakob的帮助下,我可以使用Measure Tool的Total值更新QLineEdit,直到关闭Measure Tool。然后将该值设置为“ 0,000 m”。我通过使用以下方法解决了这个问题: def text_changed(str_measure): if str_measure == '0,000 m': pass else: self.min.setText(str_measure) 它可以工作,但是我不知道这是否是正确的解决方案。

1
如何访问已删除的功能属性(提交之前)
我为图层上的功能删除事件设置了信号: self.layer.featureDeleted.connect(self.feature_deleted) 当我尝试从插槽上已删除的功能中获取属性时,会引发StopIteration错误(即,它无法检索该功能)。 我以为在提交对图层的更改之前,我仍然应该能够从已删除的要素中检索属性?否则,我看不到fid参数的用途。 def feature_deleted(self, fid): feature = self.layer.getFeatures(QgsFeatureRequest().setFilterFid(int(fid))).next() idx = self.layer.fieldNameIndex('my_attribute') print feature.attributes()[idx] 我如何访问已删除要素的属性(在提交对图层的更改之前)?

2
从QGIS的Python控制台调用插值插件
我想从python控制台调用QGIS插值插件功能(TIN方法)(Raster-> Interpolate)。 我在QGIS API或处理算法列表中找不到相应的功能。我发现SAGA三角剖分算法可以正常工作,但速度要慢5-10倍,而速度对我而言很重要。 知道如何执行吗?

1
将GRASS和SAGA模块导入python脚本
我是新来的。我正在为qgis“构建”一个python插件,我想从GRASS和SAGA导入模块,但是我不知道该怎么做。我要导入的插件是SAGA的Kriging插值或GRASS的v.surf.idw或Raster qgis的插值插件。我想要一种插值方法来转换网格中的点。 你能帮助我吗? 我还有一个疑问。 我在代码中运行以下行: vectorlayer_vector = ftools_utils.getVectorLayerByName(inputLayer) Elevation = self.lineAttrib.currentText() cellSize = int(self.linePix.value()) outPath = self.inputLayerCombo3.text() output = ftools_utils.getRasterLayerByName(outPath) Processing.runAlgorithm("saga:shapestogrid", vectorlayer_vector, Elevation, 0, 0, 4, None, cellSize, output) 跑步时,我会得到一张tiff图像,但什么也没有。.aux文件未创建,当我尝试打开创建的tiff图像时,出现以下消息: c:... teste3.tif不是受支持的栅格数据源 所以,我想输出是错误的。我必须怎么做才能获得正确的输出?我想念什么?

2
如何在QGIS 1.9中以编程方式创建要素并将其添加到存储层?
我在QGIS 1.8中有一个工作正常的插件,该插件从MSAccess数据库读取数据并将其添加到一系列内存层中。过渡过程中涉及一些处理,因此我不认为仅使用QGIS直接从数据库读取是一种选择。 我想从QGIS 1.8升级到1.9(主要是因为打印作曲家的素质得到了提高)。该插件不适用于新的API。 我尝试了Google搜索中出现的各种方法。一种,修改以下代码-来自http://www.qgis.org/pyqgis-cookbook/vector.html#memory-provider,即向数据提供者添加几何形状和属性,然后更新层-以适应新的API有点,但是直到我手动进入编辑模式(类似于http://hub.qgis.org/issues/3713),属性才可见。在上述链接的回复#1中详细介绍了一种替代方法,该方法正确添加了图层和属性,但无法向图层添加要素。 鉴于这应该是一个非常简单的任务,所以我希望在座的人可以提供一个如何完成此工作的示例。(附言:我不是专业的程序员,我的大多数编码都还很粗糙-我欢迎任何指导,但请您原谅我的无知) # Receivers = a list of lists returned from a database query # create layer vl = QgsVectorLayer("Point", item, "memory") pr = vl.dataProvider() # add fields pr.addAttributes( [ QgsField("Rec_No", QVariant.Int), QgsField("Include", QVariant.String), QgsField("Label", QVariant.String), QgsField("X", QVariant.Double), QgsField("Y", QVariant.Double), QgsField("Z", QVariant.Double), QgsField("Height", QVariant.Double), QgsField("Project_Re", QVariant.String), …




2
使用QGIS将点簇转换为多边形?
我有一个输入点图层,该图层被分组为多个群集,因此我想将每个点的群集转换为多边形。 这个问题(如何根据QGIS中的特定字段将点集转换为多边形)似乎与我想要的答案很接近,尚未得到解答。 因此,基本上,我需要QGIS中的一种算法,该算法可以将如下所示的每个点簇(基于属性字段)转换为多边形? 我已经尝试过'Point2One'插件,它给了我错误的结果,如下所示... 在这里找到我的数据副本。

3
如何在地图中的要素旁边显示图表?
这个问题主要是针对QGIS软件的,但是欢迎所有其他软件解决方案,只要有可能,就可以尽可能轻松地实现,最好是开箱即用。尽管限制是静态地图(要打印),所以没有适用于此处的交互式Web地图解决方案。 有没有一种方法可以为时间序列数据/点表(也可以是线/多边形)创建图表(QGIS中的工具/插件)并将其显示在要素旁边? 我知道简单的图表/直方图工具。我也有一个将图表加载为SVG的想法,但这意味着我需要首先导出很多图表,然后将它们手动链接为符号。有没有更深刻的现成解决方案? 到目前为止,我尝试过的内容如下: 我想要实现的目标如下:


3
需要从多个文件夹快速添加多个图层到QGIS项目
我已经下载了几个图像Zip文件(每个文件的内容分别是jp2,jpg,jpw,xml,htm和.dbf,.prj,.sbn,.sbx,.shp,.shx),并希望快速将该图像添加到我在QGIS 2.6.1中的工作项目。我试图避免不得不浏览并分别添加每个文件。因为每个文件都位于不同的文件夹中,所以我无法找到一次添加多个文件的方法。

3
如何设置和使用远程GIS工作站(QGIS,GRASS,PostGIS)?
我的论文项目是在2009 MacBookPro上使用QGIS(有时是GRASS和PostGIS)。 我想知道(在QGIS中进行无数次批量推广期间)是否可以设置服务器,以便可以使用更快的家用台式工作站的力量在图书馆/大学中工作。 到目前为止,我了解: 我可以通过QGIS访问远程PostGIS服务器 即使使用GUI,我也可以通过SSH运行GRASS GDAL具有PostGIS驱动程序,但它仅用于查询和插入数据,其余工作由发出命令的机器完成(或者我错了吗?) PostGIS的基本编辑可以通过QGIS进行,我可以发出SQL命令进行一些更高级的编辑 我想弄清楚的是: 我可以远程使用QGIS插件吗?VNC是实现这一目标的唯一方法吗? 除了创建和可视化地图外,是否还有一些PostGIS + QGIS文档(我只找到了这些类型的教程)?我可以使用哪些工具/插件,哪些可以远程运行? 更新: 大家都证实了我对QGIS的想法,如果我想使用服务器的处理能力,则必须通过VNC / RDP / NX对其进行控制。 关于我的第二个问题,让我重新 表述一下:如果我使用postGIS + QGIS,并且希望所有处理都在服务器上完成,我是否必须(学习并)仅使用带有postGIS函数的SQL查询?

7
QGIS插件:导入资源(resources_rc)文件时出现问题-插件未加载-PATH问题?
我正在构建qgis插件,但找不到该错误的解决方案。 File "/usr/lib/python2.7/dist-packages/qgis/utils.py", line 478, in _import mod = _builtin_import(name, globals, locals, fromlist, level) ImportError: No module named resources_napoved_rc 对于每个要问的人,我都建立了python资源文件: pyrcc4 -o resources_napoved_rc.py resources_napoved.qrc 我仍然找不到使它起作用的方法。我总是得到同样的错误。 在脚本之上,我有: import resources_napoved_rc.py 我直接从qtbuilder使用ui文件。有什么想法要前进吗?我假设这一定是某种路径问题或类似问题。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.