<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><div>> From: nyall.dawson@gmail.com<br>> Subject: [Qgis-developer] Adding a WMS layer via python<br>> I'm wondering if someone can help me out here - I'm trying to add a<br>> WMS layer via a python plugin, but I'm having trouble with two<br>> settings I need:<br>> <br>> 1: setting a username and password to use for the layer<br>> 2: setting a tilesize for the layer<br>></div><div>> One thing I've noticed is that the uri.encodedUri output looks strange:<br>> <br>> crs=EPSG:3111&format=image/jpeg&height=512&layers=AERIAL_MELBOURNE_2009JAN03_AIR_VIS_35CM_VG94&styles=&url=http://images.land.vic.gov.au/ecwp/ecw_wms.dll?&width=512<br>> <br>> Any ideas what I'm doing wrong on this one?<br></div><div><br></div><div>Hi Nyall,</div><div><br></div><div><span style="font-size: 12pt;">I haven't had need to tweak the tile size so I can't offer any advice there.</span></div><div><div><span style="font-size: 12pt;">However I have had success adding authenticated WMS layers to 1.8 with this code:</span></div><div><br></div><div><div>if len(self.user) > 0 :</div><div><span class="Apple-tab-span" style="white-space: pre;">      </span>connectionString = "username=" + self.user + ",password=" + self.password + ",url=" + self.url</div><div>else:</div><div><span class="Apple-tab-span" style="white-space: pre;">   </span>connectionString = self.url</div><div><br></div><div>crs = self.iface.mapCanvas().mapRenderer().destinationCrs().authid()</div><div><br></div><div>layer = QgsRasterLayer(0, connectionString, self.title, "wms",[self.layername], ["default"], "image/png", crs)</div><div><br></div><div>if layer.isValid():</div><div><span class="Apple-tab-span" style="white-space: pre;">     </span>QgsMapLayerRegistry.instance().addMapLayer(layer)</div></div><div><br></div><div>This code manually adds the username, and password parameters to the connection string, you may want to try something similar with your URI.</div><div><br></div><div>Regards,</div><div>Kelly Thomas</div></div>                                       </div></body>
</html>