这是下一个版本的qgis的更改日志-版本2.12.0“里昂”-主办城市到我们的开发者见面会在2012年4月。
QGIS 2.12“里昂”中的新功能
这是我们每4个月发布的系列中的下一个版本。它使您能够访问我们一直在研究的新功能,并代表了QGIS开发的“前沿”。
QGIS的“里昂”充满了令人惊叹的新功能。特别的亮点是支持基于规则的标签、属性表的基于规则的样式和高级几何检查器、支持基于曲线的几何图形数字化、更好的身份验证管理等等!qgis 2.12也有许多错误修复和内存泄漏的解决方法。QGIS 2.12中提供的功能将包含在下一个LTR版本中(计划在2016年发布),因此使用此版本为您提供了一个极好的机会来测试新功能,这些新功能将进入下一个LTR。
每当新功能添加到软件中时,它们都会引入新的bug的可能性-如果您在这个版本中遇到任何问题,请提交一张罚单。 on the QGIS Bug Tracker . 如果您在一个生产环境中工作,希望在向用户推出新功能方面更加保守,那么我们还提供了一个长期发布(LTR)版本的QGIS。当前的LTR是2.8.3版,可在 download.qgis.org .
Thanks
我们要感谢开发人员、文档编制人员、测试人员以及所有在那里自愿投入时间和精力的人(或者为他们提供资金)。
从QGIS社区,我们希望您喜欢这个版本!如果你想捐献时间、金钱或参与到使QGIS更棒的工作中,请漫步至 qgis.org 伸出援手!
最后,我们要感谢我们的官方赞助商为本项目提供了宝贵的财政支持:
黄金赞助商: Asia Air Survey, Japan
白银赞助商: AGH University of Science and Technology, Krakow, Poland
白银赞助商: State of Vorarlberg, Austria
白银赞助商: Sourcepole AG, Switzerland
青铜赞助商: Lutra Consulting, UK
青铜赞助商: QGIS Poland, Poland
青铜赞助商: www.terrelogiche.com, Italy
青铜赞助商: GeoSynergy, Australia
青铜赞助商: Gaia3D, South Korea
青铜赞助商: Trage Wegen vzw, Belgium
青铜赞助商: GFI - Gesellschaft fr Informations technologie mbH, Germany
青铜赞助商: GIS-Support, Poland
青铜赞助商: ADLARES GmbH, Germany
青铜赞助商: www.molitec.it, Italy
青铜赞助商: www.argusoft.de, Germany
青铜赞助商: Customer Analytics, USA
青铜赞助商: Avioportolano Italia, Italy
青铜赞助商: Urbsol, Australia
青铜赞助商: MappingGIS, Spain
青铜赞助商: GIS3W, italy
在我们的网站上可以看到对该项目作出重大和小型财政捐助的捐助者的最新名单。 donors list . 如果您想成为正式的项目发起人,请访问 our sponsorship page 详情。赞助QGIS有助于我们资助我们的六个月一次的开发者会议,维护项目基础设施和资助缺陷修复工作。
qgis是免费软件,您没有义务支付任何费用来使用它-事实上,我们希望鼓励人们广泛地使用它,无论您的财务或社会地位是什么-我们相信赋予人们空间决策工具将导致一个更好的社会为全人类。
现在,QGIS将向您显示最近项目的列表,以及缩略图,而不是简单地显示一张空白的白色画布,以使您能够快速、轻松地重新开始上一个会话中遗漏的工作。
此功能由以下人员开发: 马蒂亚斯·库恩 OPENGIS.ch
通过使用地址消毒剂库,已经识别并修复了数百个内存泄漏。使用Coverity扫描的自动代码扫描经常被用来识别潜在的问题,我们的Coverity缺陷密度现在非常低,每1000行代码只有0.02个缺陷。自动化单元测试库在2.12期间也显著增长,导致更多的回归被识别并立即修复。在2.12中,我们还添加了OSX上的连续测试,以便在Linux和OSX平台上针对单元测试套件测试每个提交。
已将新面板添加到“设置”对话框中,该对话框允许您编辑配置文件中已定义的任何选项。这仅适用于超级用户,因为如果在不完全了解您正在做什么的情况下更改这些设置,您可能会在QGIS中遇到意外行为。
此功能由以下人员开发: 马蒂亚斯·库恩 OpenGIS
使用此功能,您可以创建层组,在该组中任何时候只有一个层可见。可以在图层树视图上下文菜单中为组单独切换该功能。
此功能由以下人员开发: 马丁·多比亚斯 Lutra Consulting 分包给 Gis3W
**此功能由以下机构资助:**Tuscany Region(Italy)-Sita(CIG:63526840AE)
qgis 2.12现在支持用户界面主题化支持,您可以使用它定制窗口背景、按钮等的外观。默认情况下,我们提供两个主题: 违约 和 夜景图 . 后者是一个黑暗的主题,有些人可能更喜欢,如果他们发现光的主题造成眼睛紧张。如果你知道一点CSS,你也可以很容易地创建你自己的自定义主题…
通过阅读了解有关主题支持的更多信息 Nathan Woodrow's blog article .
此功能由以下人员开发: Nathan Woodrow
增加了一套“模糊匹配”功能。这些功能包括查找两个字符串的相似性以及执行字符串之间的语音匹配,并允许您对“几乎匹配”指定字符串的记录执行筛选。
添加了更多基于几何的函数,包括:
num_points(geom)
用于计算几何图形中的节点数
area(geom)
, length(geom)
和 perimeter(geom)
,用于计算任何几何对象的面积、长度和周长。以前只能计算当前特征几何图形的面积、长度和周长。
start_point(geom)
, end_point(geom)
, point_n(geom, n)
,用于从几何图形中检索第一个、最后一个和编号的点
make_point(x,y)
,用于手动创建点几何图形
x(geom)
, y(geom)
返回点几何图形的x和y坐标或非点几何图形的质心x/y坐标的函数
一个新的 project_color
已添加函数,该函数允许您按名称从项目的配色方案中检索颜色。这允许您创建“链接颜色”,其中符号或标签组件的颜色可以绑定到项目配色方案中的颜色。更新方案中的颜色,所有链接的颜色将自动刷新以匹配!
此外,一些非常有用的表达式已从表达式+插件移植,包括:
color_part
:允许从颜色检索特定颜色组件(如红色、色调、阿尔法)
set_color_part
:允许覆盖特定颜色组件,例如更改颜色的alpha值(不透明度)
day_of_week
:将星期几作为日期中的数字返回
此外,还改进了表达式函数的上下文帮助,以提高可读性。
现在可以定义自定义变量以在表达式中使用。变量可以在应用程序全局级、项目级、层级和组合级定义。就像CSS级联规则一样,变量可以被覆盖——例如,项目级变量将覆盖任何应用程序级变量集。您可以使用这些变量来构建文本字符串或其他自定义表达式。例如,在Composer中使用此内容创建标签:
This map was made using QGIS [% @qgis_version %].
The project file for this map is: [% @project_path %]
将呈现如下标签:
This map was made using QGIS 2.12.
The project file for this map is: /gis/qgis-user-conference-2015.qgs
您可以从 Settings -> Options
菜单和项目级变量 Project properties
(包括添加您自己的自定义变量)。
此功能由以下人员开发: Nyall Dawson
使用线特征上的识别工具,现在将显示特征中作为附加派生属性的顶点数。
QGIS分析库中的这个新工具可以将几个栅格作为输入,并且:
重新投射到同一个CRS
重新采样到网格中相同的单元格大小和偏移量
剪辑到感兴趣的区域
需要时重新缩放值
此功能由以下人员开发: 马丁·多比亚斯 Lutra Consulting 分包给 Kartoza
此功能的资金来源: DFAT 对于 InaSAFE project
两个新插件(需要在插件管理器中手动启用)可用于验证和更正几何图形。这个 几何检查器 插件(如右图所示)将检查并更正矢量数据集中的许多不同类型的系统错误,并尝试为您解决这些错误。解决错误后,将自动更新错误列表,以便在修复一个错误的同时解决其他错误的情况下,将从问题列表中删除所有错误。
与 几何捕捉器 工具可以使用用户定义的公差将一个向量层的边和顶点与第二层的边和顶点对齐。
此功能由以下人员开发: Sandro Mani Sourcepole AG
此功能的资金来源: Canton of Solothurn
QGIS 2.12引入了新的认证系统(参见 PR 2330, QEP 14 )包括以下内容:
存储在sqlite数据库中的主密码加密身份验证配置
身份验证方法插件架构(如数据提供程序)
基本身份验证方法插件
与Postgis和OWS提供程序连接集成的基本插件
与当前用户名/密码设置保持一致(仍完全正常工作)
SSL服务器连接配置(为SSL连接错误保存异常或自定义配置)
与PKI身份验证相关:
导入额外的证书颁发机构、中间证书颁发者和个人身份包
管理证书组件,如在Firefox中
用于磁盘上PEM和PKCS 12捆绑包以及存储的个人标识的身份验证方法插件
与OWS提供商连接集成(PostGIS和其他数据库需要更多的工作)
对于共享项目方案(包括网络驱动器设置),可以将身份验证配置(authcfg)ID编辑为在用户之间共享的内容。
由于authcfg id嵌入到项目文件中,因此每个用户只需创建一个auth config,它具有该资源的特定凭据,然后(在创建config或之后)将id编辑为项目文件中的相同id。然后,当加载资源时,将在每个人的QGIS上查询相同的配置,只需使用各自的认证方法凭据即可。
对于“处理坏层”对话框,用户可以在对话框中添加/编辑/删除身份验证配置,并更新数据源URI以使其匹配。因此,在共享项目的场景中,用户可以在项目加载时立即添加适当的新auth config(并查看应该使用什么样的共享authcfg id)。
当前,主密码自动设置可以通过Python或通过自定义C++插件在调用设置的启动设置上设置。 QgsAuthManager::instance()->setMasterPassword( "mypassword", true )
或通过qgis-auth-password-file环境变量将路径设置为使用主密码的文件。
**注意:**对于服务器,您还可以使用qgis u auth u db u dir u path将路径设置为qgis-auth.db目录,使用qgis u auth u password u文件将路径设置为服务器上具有主密码的文件。
此功能的资金来源: Boundless Spatial, Inc.
现在,qgis浏览器支持Postgis连接的附加功能,包括 创建、重命名和删除架构 , 支持重命名和截断层 并且 将表从一个架构复制到另一个架构 .
此功能由以下人员开发: Nyall Dawson
表复制方式: J_rgen Fischer,电话: norBIT GmbH
对Postgis供应商进行了以下改进:
基于规则的PostGIS层渲染器的性能改进
添加了对视图上复合键的支持
复合键开发人: J_rgen Fischer,电话: norBIT GmbH
数据库管理器工具有很多改进:
在数据库管理器中,您现在可以将数据导出为任何受OGR支持的数据格式,而不是仅在早期版本中可用的shapefile。
现在DBManager支持Oracle Spatial
将数据导入表时,可以使用 仅导入选定的功能 选项来限制将要导入的内容。
新的查询窗口现在被创建为选项卡,以减少对话框的数量。
这是对QGIS属性表呈现支持的一个重大改进。现在可以根据规则设置表格单元格的样式。例如,你可以用红色给所有人口少于50000的细胞着色。该选项通过属性表窗口右上角的表工具栏上的新图标启用。您可以在上阅读有关此功能的更多信息 Nathan Woodrow's blog article .
此功能由以下人员开发: Nathan Woodrow
对于以下编辑小部件类型:
文件名
照片
网络视图
如果使用文件浏览器选择的路径与.qgs项目文件位于同一目录或以下,则路径将转换为相对路径。这增加了带有多媒体信息的QGIS项目的可移植性。
此功能由以下人员开发: 马蒂亚斯·库恩 OpenGIS
此功能的资金来源: Alta ehf
在qgis 2.10中,我们提到有一个新的qgis几何结构,但并不是所有的功能都在数字化工具中得到支持。有了qgis 2.12,我们现在可以编辑支持**创建曲线//循环字符串`**。请再次注意,您需要使用支持曲线的数据提供程序(例如PostGIS、GML或WFS)。QGIS 2.12中还增加了对数字化工具的这些改进:
添加具有两个点和半径的圆形字符串的工具
添加带起点、曲线点和终点的圆形字符串的工具
允许退出以取消绘制新功能
使用节点工具编辑时显示节点表,允许您手动输入节点的精确X和Y坐标以及Z和M值(取决于层类型)
此外,还更新了更多几何编辑和修改工具,以正确处理包含Z或M尺寸的图层。
此功能由以下人员开发: Marco Hugentobler,电话: Sourcepole AG
此功能的资金来源: Canton of Solothurn
现在可以在点标签设置为围绕点放置模式时指定数据定义的象限。这允许您手动覆盖特定标签的象限位置,同时允许其余标签返回到自动位置。
见 this article 了解更多详细信息。
此功能由以下人员开发: Nyall Dawson
在2.12中,现在可以指定标记障碍物的优先级。这允许您使标签更喜欢重叠某些层的特征,而不是其他层的特征。优先级也可以由数据定义,以便某些特性比其他特性更容易被覆盖。您还可以使用数据定义的表达式或字段来控制图层中的特定功能是否会成为标签的障碍。
此功能由以下人员开发: Nyall Dawson
添加了新选项来控制标签的放置方式,以避免重叠多边形层中的特征。这些选项可以避免在多边形内部放置标签,也可以避免在多边形边界上放置标签。避免在边界上放置标签对于区域边界层很有用,因为这些要素覆盖整个区域。在这种情况下,不可能避免在这些功能内放置标签,而最好避免将它们放置在功能之间的边界上。这样做的结果是在这种情况下标签的地图布局更好。
见 this article 了解更多详细信息。
此功能由以下人员开发: Nyall Dawson
这个经常被请求的特性允许用户为单个标签设置优先级。在过去的版本中,qgis允许为整个图层设置标签优先级,但没有选项来控制图层中功能的优先级。现在,您可以使用数据定义的表达式或字段,将某些特性的标签优先于层中的其他特性!
见 this article 有关详细信息
此功能由以下人员开发: Nyall Dawson
这允许用户将一个层设置为其他层标签的障碍,而不呈现自己的任何标签。这意味着一个没有标签的图层可以作为其他图层中标签的障碍,因此不鼓励它们在障碍图层中的特征上绘制标签,并允许通过防止标签和特征与其他图层重叠来改进自动标签放置。
在屏幕截图中,您可以看到街道上启用了“禁止其他标签覆盖此层中的功能”选项。因此,从多边形几何图形派生的红色标签被放置,以避免与街道轴相交。您必须在多边形层上启用“水平”或“自由”,才能获得正确的结果。
注意,通过在标签设置的“渲染”选项卡中启用复选框“禁止标签覆盖功能”,也可以同时标记一个图层,但同时充当障碍层。
见 this article 了解更多详细信息。
此功能由以下人员开发: Nyall Dawson
现在可以使用规则为特性上的标签设置样式,从而对标签的位置和样式添加更多的控制。就像基于规则的地图绘制一样,标签规则可以嵌套以允许非常灵活的样式设置选项。例如,您可以根据将要呈现的功能的大小(如屏幕截图中所示),以不同的方式呈现标签。
见 blogpost 有关详细信息
此功能由以下人员开发: 马丁·多比亚斯 Lutra Consulting 分包给 Gis3W
**此功能由以下机构资助:**Tuscany Region(Italy)-Sita(CIG:63526840AE)
现在可以用自定义格式格式化作曲家地图网格注释,这些格式是使用表达式引擎计算的。现在,您可以使用您的地图所需的任何深奥的网格编号格式!
此功能由以下人员开发: Nyall Dawson
作曲家属性表现在包括对多行字符串的完全支持。还添加了对单元格内文本垂直对齐的控制,以及在某些字符上换行文本或自动计算文本换行以适应列大小的选项。若要使用自动行高强制自动换行,请将列宽设置为固定大小。
此功能由以下人员开发: Nyall Dawson
此功能的资金来源: City of Uster
此更改允许用户为编写器属性表中的交替行和列、第一行/最后一行/列和标题行设置不同的颜色。
此功能由以下人员开发: Nyall Dawson
此功能的资金来源: Ville de Morges
合成面板中添加了一个新选项,可以根据内容调整合成的大小,如果需要,还可以选择额外的页边距。
也可以将作曲家导出裁剪为其内容。如果选中,此选项将使作曲家输出的图像仅包括包含内容的合成区域。如果需要,还可以选择在项目边界周围添加页边距。
如果合成包含一个页面,那么输出的大小将包括合成中的所有内容。如果是多页合成,那么每一页都将被裁剪为只包含该页中带有项目的区域。
添加了一个新的“图像导出选项”对话框,以方便执行此操作,其中还包括覆盖打印分辨率或导出图像尺寸的便捷快捷方式。
主办单位: NIWA
此功能由以下人员开发: Nyall Dawson
在图层属性的“渲染”选项卡下添加了一个新选项,以强制矢量图层渲染为栅格。极为详细的图层(例如具有大量节点的多边形图层)可能会导致PDF/SVG格式的编辑器导出量很大,因为所有节点都包含在导出的文件中。这也会使结果文件在使用或在外部程序中打开时非常慢。现在,可以强制逐层栅格化这些层,这样导出的文件就不必包括这些层中包含的所有节点。最终的结果是较小的文件大小和打开速度更快的pdfs/svg。
此功能由以下人员开发: Nyall Dawson
已为要在合成图中显示的地图图层和样式预设添加了新的数据定义控件。“地图图层数据定义”表达式应生成将在地图中显示的以(竖线)分隔的图层名称列表,或者“样式预设数据定义”表达式应生成现有样式预设的名称。
对地图图层使用这种控制可以实现“基于图层”的地图册,地图图层应该在地图册页面之间更改,而不是与地图范围更改结合使用。一个例子可能是地图册在不同的行政单位之间循环,同时在几个历史地图或航空图像之间循环。
此功能由以下人员开发: Nyall Dawson
此功能的资金来源: City of Uster
现在有一个选项可以在编辑和导出合成时隐藏页面的显示。此选项适用于不用于打印且不受任何预设页面大小约束的合成。您可以隐藏页面,然后以您希望的任何方式添加和调整项目的大小,而无需页面边界的视觉干扰!
主办单位: NIWA
此功能由以下人员开发: Nyall Dawson
Grass插件被更新为支持Grass 7。可以从QGIS浏览器或浏览器面板浏览和加载草层。草矢量数据可以直接在QGIS中编辑。项目包含以下工作包:
插件库升级和多版本构建
QGIS浏览器和浏览器面板集成
支持映射集、模块和shell以进行数据分析
矢量编辑
对于Grass 6和Grass 7用户,您会发现Grass和QGIS之间的集成更加无缝。您可以直接在qgis浏览器面板中创建草地图层,使用标准qgis样式工具设置草地矢量图层的样式,并使用熟悉的qgis数字化工具在草地地图集中创建新的矢量几何图形。
也见 QGIS GRASS Plugin Upgrade project page 和 progress report
此功能由以下人员开发: Radim Blazek
此功能的资金来源: 众筹,见 project page
例子:
from qgis.core import edit
with edit(layer):
f=layer.getFeatures().next()
f[0]=5
layer.updateFeature(f)
这最终将自动调用commitchanges()。如果发生任何异常,它将回滚()所有更改。
此功能由以下人员开发: 马蒂亚斯·库恩 OpenGIS
与QGSPallabeling实现相比,其理念是使引擎更加灵活:
摘要处理来自引擎本身的文本标签/图表
允许每层使用多种类型的标签
支持自定义标签提供程序(例如由插件实现)
使标签引擎独立于地图渲染引擎
使标签引擎及其组件的自动测试更容易
见 blogpost 有关详细信息
此功能由以下人员开发: 马丁·多比亚斯 Lutra Consulting 分包给 Gis3W
添加了一个新的类qgsstringutils,它允许pyqgis脚本使用2.12中添加的新模糊匹配算法。这些功能包括查找两个字符串之间的Levenshtein编辑距离和计算字符串的Soundex语音表示。这些算法已经针对性能进行了高度优化,因此它们可以让您在数百万个字符串之间开始模糊匹配了!
此功能由以下人员开发: Nyall Dawson
现在,QGIS服务器打包为一个库,其中包含一个初始的(但不断增长的)API和Python绑定。使用新的API,我们对服务器主组件和服务器插件进行了一组Python测试。从python调用服务器现在非常简单:
from qgis.server import QgsServer
headers, body = QgsServer().handleRequest(my_query_string)
有关详细信息,请参阅 this article
这项工作是由 :亚历山德罗·帕索蒂 ItOpen
现在可以检索dxf格式的getmap wms请求的结果。它支持与QGIS桌面上相同的功能和选项。有同样的限制。
http://yourserver.org/cgi-bin/qgismapserver.fcgi?
map=/path/to/your/projectfile.qgs&
SERVICE=WMS&
VERSION=1.3.0&
REQUEST=GetMAP&
FORMAT=application/dxf&
FORMAT_OPTIONS=SCALE:500;MODE:SYMBOLLAYERSYMBOLOGY&
FILE_NAME=youroutputfilename.dxf&
CRS=EPSG:EPSG:21781&
BBOX=695558.73070825,244430.77224034,697158.88528251,245722.25976142&
WIDTH=1042&
HEIGHT=841&
LAYERS=yourdxfexportlayers
也见 QGIS as OGC data server 所有可用选项。
在屏幕截图中,您可以看到左侧的QGIS Web客户端具有DXF导出功能(使用QGIS服务器),并且在右侧的Autodesk TrueView中查看的范围相同。
此功能由以下人员开发: 马可·胡金托布勒 Sourcepole AG
此功能的资金来源: City of Uster
qgis 2.12修复了有关SVG标记和SVG填充符号中轮廓处理的许多问题。
以前版本的qgis将以明显小于set的尺寸呈现轮廓,并且以地图单位绘制轮廓尺寸的SVG被破坏。
这些问题已经在qgis 2.12中得到了解决,但是如果您以前为符号设置过大的轮廓以克服这些错误,那么您可能需要更新项目符号。在图像中,您可以在符号层对话框中看到qgis 2.12和qgis 2.10 SVG标记。
对于所有大小的输入小部件,现在有第三个选项“像素”,在“mm”和“map units”旁边。这涉及符号大小、笔画宽度、虚线大小、偏移量等。如果您设计屏幕而不是打印输出,这可能会有所帮助。
此功能由以下人员开发: Nyall Dawson