<div dir="ltr"><div><div><div>Hello everyone,<br><br></div>I'm developping a standalone application in pyqgis in order to visualize and explore data in netcdf files.<br></div>I would like to have the possibility to change the projection of basemaps ( raster in .tiff and coastal outline in vector) with the QgsGenericProjectionSelector() class but it doesn't work. I think I'm quiet close to succeed but i miss something and I don't know what.<br></div><div>Please, does anyone can help me to resolve my problem?<br></div><div>(I use QGis 2.10 on windows)<br></div>Here is my code snippet:<br><br>self.connect(self.basemap_img, SIGNAL("clicked()"),self.on_basemapImg_triggered)<br>self.connect(self.basemap_shp, SIGNAL("clicked()"),self.on_basemapShp_triggered)<br><br>def on_basemapShp_triggered (self):<br>        statics_dir=str(self.homepath)+"/statics/ne_50m_land/"<br>        name="ne_50m_land.shp"<br>        print name<br>        ll_color=True<br>        print "ok new crs shapefile"<br>        dialog = CreateModelDialog(name, self.canvas)<br>        dialog.projSelector<br>        print "projSelector"<br>        print "ok shapefile"<br>        self.updateFileVector(statics_dir+name,ll_color)<br><br> def on_basemapImg_triggered (self):<br>        statics_dir=str(self.homepath)+"/statics/NE1_HR_LC_SR/"<br>        fileName_tif="NE1_HR_LC_SR.tif"<br>        print fileName_tif<br>        dialog = CreateModelDialog(fileName_tif, self.canvas)<br>        dialog.projSelector<br>        print "projSelector"<br>        self.updatetif(statics_dir+fileName_tif)<br><br>class CreateModelDialog(QDialog):<br>    def __init__(self, layer, canvas):<br>        QDialog.__init__(self)<br>        self.projSelector = QgsGenericProjectionSelector()<br>        self.projSelector.exec_()<br>        self.projSelector.selectedAuthId()<br>        self.projSelector.selectedCrsId()<br>        print self.projSelector.selectedAuthId()<br>        print "ok projection dialog box"<br><br>def updatetif(self, fileName_tif):<br>        fileInfo = QFileInfo(fileName_tif)<br>        print fileInfo<br>        baseName = fileInfo.baseName()<br>        print baseName<br>        rlayer = QgsRasterLayer(fileName_tif, baseName)<br>        if not rlayer.isValid():<br>            print "Layer failed to load!"<br>        QgsMapLayerRegistry.instance().addMapLayers([rlayer])<br>        print "ok crs image"<br>    <br>    def updateFileVector(self,name, ll_color):<br>        self.layer2=QgsVectorLayer(name,os.path.basename(str(name)),"ogr")   <br>        if not self.layer2.isValid():<br>            print "Layer failed to load!"<br>        if ll_color :<br>            props = { 'color' : '192,192,192', 'style' : 'no', 'style' : 'solid' }<br>            s = QgsFillSymbolV2.createSimple(props)<br>            self.layer2.setRendererV2( QgsSingleSymbolRendererV2( s ) )<br>        QgsMapLayerRegistry.instance().addMapLayers([self.layer2])<br>        print "Add vector layer to registry"<br>        self.layers.append( QgsMapCanvasLayer(self.layer2) )<br>        self.canvas.setLayerSet(self.layers)<br>        self.canvas.setExtent(self.layer2.extent())<br>       <br></div>