Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def labelLine(lyr, champNom1, champNom2):
- # Cette fonction montre les etiquettes des champs "champNom1" et "champNom2" pour une couche "Ligne"
- label = QgsPalLayerSettings()
- label.readFromLayer(lyr)
- label.enabled = True
- # on concate les deux champs
- label.fieldName = "concat('BASE: ', champNom1, '\n', 'Longueur =', champNom2, 'm')"
- label.placement= QgsPalLayerSettings.Line
- # on applique un buffer de 1 mm
- label.bufferDraw= True
- label.bufferSize= 1
- label.setDataDefinedProperty(QgsPalLayerSettings.Size,True,True,'8','')
- # on confirme les changements
- label.writeToLayer(lyr)
- def saveCoucheFRAC():
- layer=iface.activeLayer()
- nom=nom2+"_FRAC"
- lien=path2+"_FRAC"+".shp"
- QgsVectorFileWriter.writeAsVectorFormat(layer,lien,"utf-8",QgsCoordinateReferenceSystem(22332, QgsCoordinateReferenceSystem.EpsgCrsId),"ESRI Shapefile")
- #Charger cette couche dans QGis
- vlayer=QgsVectorLayer(lien, nom, "ogr")
- if not vlayer.isValid():
- print " Verifier la validite du fichier"
- else:
- # appliquer les couleurs selon le niveau de tension avec la fonction appCouleur
- appCouleur(vlayer)
- # changer l'epaisseur de la couche ligne
- epaiLyr(vlayer, "0.7")
- # on specifie les noms des champs « Base » et l'etiquette de longueur «Longueur_m » sur chaque segment entre deux pylones
- labelLine(vlayer, "BASE", "Longueur_m")
- # Definir la visibilite de la couche entre ech min 0 et max 100 000
- visLyr(vlayer, 0, 100000)
- #Charger dans le Canvas
- QgsMapLayerRegistry.instance().addMapLayer(vlayer)
- saveCoucheFRAC()
Add Comment
Please, Sign In to add comment