当前位置: 首页>>代码示例>>Python>>正文


Python QgsVectorLayer.loadNamedStyle方法代码示例

本文整理汇总了Python中qgis.core.QgsVectorLayer.loadNamedStyle方法的典型用法代码示例。如果您正苦于以下问题:Python QgsVectorLayer.loadNamedStyle方法的具体用法?Python QgsVectorLayer.loadNamedStyle怎么用?Python QgsVectorLayer.loadNamedStyle使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在qgis.core.QgsVectorLayer的用法示例。


在下文中一共展示了QgsVectorLayer.loadNamedStyle方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: _loadLayer

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def _loadLayer(self):
        fName = self.leOutputShape.text()
        layer = QgsVectorLayer(fName, QFileInfo(fName).baseName(), "ogr")

        if layer.isValid():
            layer.loadNamedStyle(os.path.join(pluginPath, "resources", "photos.qml"))
            QgsMapLayerRegistry.instance().addMapLayer(layer)
        else:
            self.iface.messageBar().pushWarning(self.tr("No output"), self.tr("Cannot load output shapefile"))
开发者ID:talaj-info,项目名称:photo2shape,代码行数:11,代码来源:photo2shapedialog.py

示例2: special_search

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def special_search(self, easter_code="isogeo"):
        """Make some special actions in certains cases.
        
        :param str easter_code: easter egg label. Available values:
          
          * isogeo: display Isogeo logo and zoom in our office location
          * picasa: change QGS project title
        """
        canvas = iface.mapCanvas()
        if easter_code == "isogeo":
            # WMS
            wms_params = {"service": "WMS",
                          "version": "1.3.0",
                          "request": "GetMap",
                          "layers": "Isogeo:isogeo_logo",
                          "crs": "EPSG:3857",
                          "format": "image/png",
                          "styles": "isogeo_logo",
                          "url": "http://noisy.hq.isogeo.fr:6090/geoserver/Isogeo/ows?"
                          }
            wms_uri = unquote(urlencode(wms_params))
            wms_lyr = QgsRasterLayer(wms_uri, u"Ici c'est Isogeo !", "wms")
            if wms_lyr.isValid:
                QgsMapLayerRegistry.instance().addMapLayer(wms_lyr)
                logger.info("Isogeo easter egg used and WMS displayed!")
            else:
                logger.error("WMS layer failed: {}"
                             .format(wms_lyr.error().message()))

            # WFS
            uri = QgsDataSourceURI()
            uri.setParam("url", "http://noisy.hq.isogeo.fr:6090/geoserver/Isogeo/ows?")
            uri.setParam("service", "WFS")
            uri.setParam("version", "1.1.0")
            uri.setParam("typename", "Isogeo:isogeo_logo")
            uri.setParam("srsname", "EPSG:3857")
            uri.setParam("restrictToRequestBBOX", "0")
            wfs_uri = uri.uri()
            wfs_lyr = QgsVectorLayer(wfs_uri, u"Ici c'est Isogeo !", "WFS")
            if wfs_lyr.isValid:
                wfs_style = path.join(path.dirname(path.realpath(__file__)),
                                      "isogeo.qml")
                wfs_lyr.loadNamedStyle(wfs_style)
                QgsMapLayerRegistry.instance().addMapLayer(wfs_lyr)
                canvas.setExtent(wfs_lyr.extent())
                logger.debug("Isogeo easter egg used")
            else:
                logger.error("Esater egg - WFS layer failed: {}"
                             .format(wfs_lyr.error().message()))
        elif easter_code == "picasa":
            project = QgsProject.instance()
            project.setTitle(u"Isogeo, le Picasa de l'information géographique")
            logger.debug("Picasa easter egg used")
        else:
            pass
        # ending method
        return
开发者ID:isogeo,项目名称:isogeo-plugin-qgis,代码行数:59,代码来源:tools.py

示例3: testSingleSymbolNoScaleDependencies

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def testSingleSymbolNoScaleDependencies(self):
        layer = QgsVectorLayer("Point", "addfeat", "memory")
        mFilePath = QDir.toNativeSeparators('%s/symbol_layer/%s.qml' % (unitTestDataPath(), "singleSymbol"))
        layer.loadNamedStyle(mFilePath)

        dom, root = self.layerToSld(layer)
        # print("No dep on single symbol:" + dom.toString())

        self.assertScaleDenominator(root, None, None)
开发者ID:rskelly,项目名称:QGIS,代码行数:11,代码来源:test_qgssymbollayer_createsld.py

示例4: testCategorizedNoScaleDependencies

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def testCategorizedNoScaleDependencies(self):
        layer = QgsVectorLayer("Polygon", "addfeat", "memory")
        mFilePath = QDir.toNativeSeparators('%s/symbol_layer/%s.qml' % (unitTestDataPath(), "categorized"))
        layer.loadNamedStyle(mFilePath)

        dom, root = self.layerToSld(layer)
        # print("Categorized no scale deps:" + dom.toString())

        ruleCount = root.elementsByTagName('se:Rule').size()
        for i in range(0, ruleCount):
            self.assertScaleDenominator(root, None, None, i)
开发者ID:rskelly,项目名称:QGIS,代码行数:13,代码来源:test_qgssymbollayer_createsld.py

示例5: get_layer

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def get_layer(self, type):
        uri = 'point?crs=epsg:4326&field=id:string&field=type:string&field=number:string&field=time:string'
        new_lyr = QgsVectorLayer(uri, 'Yandex Transport', 'memory')

        layer_style_path = path.join(path.dirname(__file__), 'styles/', 'all.qml')
        if path.isfile(layer_style_path):
            new_lyr.loadNamedStyle(layer_style_path)

        self._layer_registry.append(new_lyr)
        self._updater.paused = not len(self._layer_registry)
        return new_lyr
开发者ID:yellow-sky,项目名称:qgis_yandex_transport,代码行数:13,代码来源:data_source.py

示例6: _loadLayer

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def _loadLayer(self):
        fName = self.fwOutputShape.filePath()
        layer = QgsVectorLayer(fName, os.path.basename(fName), "ogr")

        if layer.isValid():
            layer.loadNamedStyle(
                os.path.join(pluginPath, "resources", "photos.qml"))
            QgsProject.instance().addMapLayer(layer)
        else:
            self.iface.messageBar().pushWarning(
                self.tr("No output"),
                self.tr("Can not load output file."))
开发者ID:alexbruy,项目名称:photo2shape,代码行数:14,代码来源:photo2shapedialog.py

示例7: show

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
def show(filePath,stylePath):
    """show csv as layer"""

    uri = "file:" + 3*os.path.sep + filePath + "?crs=%s&delimiter=%s&xField=%s&yField=%s&decimal=%s" % ("EPSG:4326",",", "Lon_deg", "Lat_deg", ".")
    uri = os.path.join(uri).replace('\\','/')
    layerName = filePath.rsplit(os.path.sep,1)
    layerName = layerName[1][:-4]
    layer = QgsVectorLayer(uri, layerName, "delimitedtext")
    if stylePath:
        stylePath = os.path.join(stylePath).replace('\\','/')
        layer.loadNamedStyle(stylePath)
    QgsMapLayerRegistry.instance().addMapLayer(layer)
开发者ID:ctu-osgeorel-proj,项目名称:bp-pesek-2016,代码行数:14,代码来源:show_as_layer.py

示例8: testSingleSymbolScaleDependencies

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def testSingleSymbolScaleDependencies(self):
        layer = QgsVectorLayer("Point", "addfeat", "memory")
        mFilePath = QDir.toNativeSeparators('%s/symbol_layer/%s.qml' % (unitTestDataPath(), "singleSymbol"))
        layer.loadNamedStyle(mFilePath)
        layer.setMaximumScale(1000)
        layer.setMinimumScale(500000)
        layer.setScaleBasedVisibility(True)

        dom, root = self.layerToSld(layer)
        # print("Scale dep on single symbol:" + dom.toString())

        self.assertScaleDenominator(root, '1000', '500000')
开发者ID:rskelly,项目名称:QGIS,代码行数:14,代码来源:test_qgssymbollayer_createsld.py

示例9: loadEDGVLayer

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
 def loadEDGVLayer(self, uri, layer_name, provider):
     vlayer = QgsVectorLayer(uri.uri(), layer_name, provider)
     vlayer.setCrs(self.crs)
     QgsMapLayerRegistry.instance().addMapLayer(vlayer) #added due to api changes
     if self.isSpatialite and (self.dbVersion == '3.0' or self.dbVersion == '2.1.3'):
         lyr = '_'.join(layer_name.replace('\r', '').split('_')[1::])
     else:
         lyr = layer_name.replace('\r','')
     vlayerQml = os.path.join(self.qmlPath, lyr+'.qml')
     vlayer.loadNamedStyle(vlayerQml, False)
     QgsMapLayerRegistry.instance().addMapLayer(vlayer)
     if not vlayer.isValid():
         QgsMessageLog.logMessage(vlayer.error().summary(), "DSG Tools Plugin", QgsMessageLog.CRITICAL)
开发者ID:HydroLogic,项目名称:DsgTools,代码行数:15,代码来源:load_by_class.py

示例10: testCategorizedWithScaleDependencies

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def testCategorizedWithScaleDependencies(self):
        layer = QgsVectorLayer("Polygon", "addfeat", "memory")
        mFilePath = QDir.toNativeSeparators('%s/symbol_layer/%s.qml' % (unitTestDataPath(), "categorized"))
        layer.loadNamedStyle(mFilePath)
        layer.setMaximumScale(1000)
        layer.setMinimumScale(500000)
        layer.setScaleBasedVisibility(True)

        dom, root = self.layerToSld(layer)
        # print("Categorized with scale deps:" + dom.toString())

        ruleCount = root.elementsByTagName('se:Rule').size()
        for i in range(0, ruleCount):
            self.assertScaleDenominator(root, '1000', '500000', i)
开发者ID:rskelly,项目名称:QGIS,代码行数:16,代码来源:test_qgssymbollayer_createsld.py

示例11: __add_dkm_layers

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
 def __add_dkm_layers(self):
     dkmgem = self.json_settings.dkm_gemeinde(self.curr_gem_name)
     if VRP_DEBUG is True:
         QgsMessageLog.logMessage('__add_dkm_layers: {0}'.format(dkmgem.keys()), DLG_CAPTION)
         QgsMessageLog.logMessage('__add_dkm_layers: {0}'.format(dkmgem['shpgnr']), DLG_CAPTION)
         QgsMessageLog.logMessage('__add_dkm_layers: {0}'.format(dkmgem['qmlgnr']), DLG_CAPTION)
         QgsMessageLog.logMessage('__add_dkm_layers: {0}'.format(dkmgem['shpgstk']), DLG_CAPTION)
         QgsMessageLog.logMessage('__add_dkm_layers: {0}'.format(dkmgem['qmlgstk']), DLG_CAPTION)
     lyr = QgsVectorLayer(dkmgem['shpgstk'], dkmgem['lyrnamegstk'], 'ogr')
     lyr.loadNamedStyle(dkmgem['qmlgstk'])
     QgsMapLayerRegistry.instance().addMapLayer(lyr)
     self.dkm_coverage_layer = lyr
     lyr = QgsVectorLayer(dkmgem['shpgnr'], dkmgem['lyrnamegnr'], 'ogr')
     lyr.loadNamedStyle(dkmgem['qmlgnr'])
     QgsMapLayerRegistry.instance().addMapLayer(lyr)
开发者ID:BergWerkGIS,项目名称:VoGIS-Raumplanung,代码行数:17,代码来源:vogisraumplanungplotdialog.py

示例12: load

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
def load(fileName, name=None, crs=None, style=None):
    """Loads a layer/table into the current project, given its file.
    """

    if fileName is None:
        return
    prjSetting = None
    settings = QSettings()
    if crs is not None:
        prjSetting = settings.value('/Projections/defaultBehaviour')
        settings.setValue('/Projections/defaultBehaviour', '')
    if name is None:
        name = os.path.split(fileName)[1]
    qgslayer = QgsVectorLayer(fileName, name, 'ogr')
    if qgslayer.isValid():
        if crs is not None and qgslayer.crs() is None:
            qgslayer.setCrs(crs, False)
        if style is None:
            if qgslayer.geometryType() == QGis.Point:
                style = ProcessingConfig.getSetting(ProcessingConfig.VECTOR_POINT_STYLE)
            elif qgslayer.geometryType() == QGis.Line:
                style = ProcessingConfig.getSetting(ProcessingConfig.VECTOR_LINE_STYLE)
            else:
                style = ProcessingConfig.getSetting(ProcessingConfig.VECTOR_POLYGON_STYLE)
        qgslayer.loadNamedStyle(style)
        QgsMapLayerRegistry.instance().addMapLayers([qgslayer])
    else:
        qgslayer = QgsRasterLayer(fileName, name)
        if qgslayer.isValid():
            if crs is not None and qgslayer.crs() is None:
                qgslayer.setCrs(crs, False)
            if style is None:
                style = ProcessingConfig.getSetting(ProcessingConfig.RASTER_STYLE)
            qgslayer.loadNamedStyle(style)
            QgsMapLayerRegistry.instance().addMapLayers([qgslayer])
            iface.legendInterface().refreshLayerSymbology(qgslayer)
        else:
            if prjSetting:
                settings.setValue('/Projections/defaultBehaviour', prjSetting)
            raise RuntimeError('Could not load layer: ' + unicode(fileName)
                               + '\nCheck the procesing framework log to look for errors')
    if prjSetting:
        settings.setValue('/Projections/defaultBehaviour', prjSetting)

    return qgslayer
开发者ID:Geoneer,项目名称:QGIS,代码行数:47,代码来源:dataobjects.py

示例13: _append_resource_to_map

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
    def _append_resource_to_map(self, ngw_resource, parent_resource, summary_extent):
        children = ngw_resource.get_children()
        wfs_resources = [ch for ch in children if isinstance(ch, NGWWfsService)]
        if len(wfs_resources) < 1:
            #TODO: show error
            return
        wfs_resource = wfs_resources[0]

        #Serach/Add group
        toc_root = QgsProject.instance().layerTreeRoot()

        parent_group = toc_root.findGroup(parent_resource.common.display_name)
        if not parent_group:
            parent_group = toc_root.insertGroup(0, parent_resource.common.display_name)

        layers_group = parent_group.insertGroup(0, ngw_resource.common.display_name)
        try:
            layers_group.setExpanded(False)
        except:
            pass

        styles_path = path.join(path.dirname(__file__), 'styles/', ngw_resource.common.cls + '/')

        #Add layers
        for wfs_layer in wfs_resource.wfs.layers:
            url = wfs_resource.get_wfs_url(wfs_layer.keyname) + '&srsname=EPSG:3857&VERSION=1.0.0&REQUEST=GetFeature'
            qgs_wfs_layer = QgsVectorLayer(url, wfs_layer.display_name, 'WFS')

            #summarize extent
            self._summ_extent(summary_extent, qgs_wfs_layer)

            QgsMapLayerRegistry.instance().addMapLayer(qgs_wfs_layer, False)
            toc_layer = layers_group.insertLayer(0, qgs_wfs_layer)
            try:
                toc_layer.setExpanded(False)
            except:
                pass

            layer_style_path = path.join(styles_path, wfs_layer.keyname + '.qml')
            if path.isfile(layer_style_path):
                qgs_wfs_layer.loadNamedStyle(layer_style_path)
            else:
                message = self.tr('Style for layer "%s" (%s) not found!') % (wfs_layer.display_name, wfs_layer.keyname)
                QgsMessageLog.logMessage(message, level=QgsMessageLog.WARNING)
            self.update_dicts(qgs_wfs_layer)
开发者ID:nextgis,项目名称:ngq_compulink,代码行数:47,代码来源:add_ngw_resource_dialog.py

示例14: test09_Leaflet_json_pnt_single

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
 def test09_Leaflet_json_pnt_single(self):
     """Leaflet JSON point single (test_qgis2web_dialog.test_Leaflet_json_pnt_single)"""
     layer = QgsVectorLayer("/home/travis/build/tomchadwin/qgis2web/test_data/point.shp", "point", "ogr")
     if not layer:
         print "Layer failed to load!"
     registry = QgsMapLayerRegistry.instance()
     registry.addMapLayer(layer)
     layer.loadNamedStyle("/home/travis/build/tomchadwin/qgis2web/test_data/point_single.qml")
     referenceFile = open('/home/travis/build/tomchadwin/qgis2web/test_data/leaflet_json_point_single.html', 'r')
     referenceOutput = referenceFile.read()
     self.dialog = MainDialog(IFACE)
     self.dialog.paramsTreeOL.itemWidget(self.dialog.paramsTreeOL.findItems("Extent",
                                             (Qt.MatchExactly |
                                              Qt.MatchRecursive))[0], 1).setCurrentIndex(1)
     self.dialog.leaflet.click()
     testFile = open(self.dialog.preview.url().toString().replace("file://",""))
     testOutput = testFile.read()
     self.assertEqual(testOutput, referenceOutput)
开发者ID:gitter-badger,项目名称:qgis2web,代码行数:20,代码来源:test_qgis2web_dialog.py

示例15: test26_Leaflet_wfs_poly_graduated

# 需要导入模块: from qgis.core import QgsVectorLayer [as 别名]
# 或者: from qgis.core.QgsVectorLayer import loadNamedStyle [as 别名]
 def test26_Leaflet_wfs_poly_graduated(self):
     """Leaflet WFS polygon graduated (test_qgis2web_dialog.test_Leaflet_wfs_poly_graduated)"""
     layer = QgsVectorLayer("http://maps.nationalparks.gov.uk/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=yorkshire_dales:ydnpa_conservationareas&SRSNAME=EPSG:27700", "polygon", "WFS")
     if not layer:
         print "Layer failed to load!"
     registry = QgsMapLayerRegistry.instance()
     registry.addMapLayer(layer)
     layer.loadNamedStyle("/home/travis/build/tomchadwin/qgis2web/test_data/wfs_polygon_graduated.qml")
     referenceFile = open('/home/travis/build/tomchadwin/qgis2web/test_data/leaflet_wfs_polygon_graduated.html', 'r')
     referenceOutput = referenceFile.read()
     self.dialog = MainDialog(IFACE)
     self.dialog.paramsTreeOL.itemWidget(self.dialog.paramsTreeOL.findItems("Extent",
                                             (Qt.MatchExactly |
                                              Qt.MatchRecursive))[0], 1).setCurrentIndex(1)
     self.dialog.leaflet.click()
     testFile = open(self.dialog.preview.url().toString().replace("file://",""))
     testOutput = testFile.read()
     self.assertEqual(testOutput, referenceOutput)
开发者ID:gitter-badger,项目名称:qgis2web,代码行数:20,代码来源:test_qgis2web_dialog.py


注:本文中的qgis.core.QgsVectorLayer.loadNamedStyle方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。