<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Thank you very much Matthias, that fixed it.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Updated my Gist accordingly here: <a href="https://gist.github.com/timlinux/1057c2c6b5ebda6ed2b5aa8c5aa21372">https://gist.github.com/timlinux/1057c2c6b5ebda6ed2b5aa8c5aa21372</a></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Regards</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Tim</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Nov 17, 2020 at 7:57 AM Matthias Kuhn <<a href="mailto:matthias@opengis.ch">matthias@opengis.ch</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Tim,</div><div><br></div><div>Does it help if you directly call `mapCanvas.setDestinationCrs()` instead of setting the crs on `mapSettings()`?</div><div><br></div><div>The returned mapSettings object is not meant to be modified.</div><div><br></div><div>Matthias</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Nov 17, 2020 at 12:58 AM Tim Sutton <<a href="mailto:tim@kartoza.com" target="_blank">tim@kartoza.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><div class="gmail_default">Hi Folks</div><div class="gmail_default"><br></div><div class="gmail_default">I am trying to update a 2.x snippet I have which iteratively sets the CRS with sequentially higher LO values:</div><div class="gmail_default"><br></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif"><a href="https://gist.github.com/timlinux/1057c2c6b5ebda6ed2b5aa8c5aa21372" target="_blank">https://gist.github.com/timlinux/1057c2c6b5ebda6ed2b5aa8c5aa21372</a></font><br></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC2"></td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC3"># Uses a trick from Alexander Neto: "I created a orthographic projection with lisbon longitude, but with a south hemisphere latitude</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC4"># That way kinda looks 3d"</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC5"></td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC6"># This will make the QGIS use a world projection and then move the center</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC7"># of the CRS sequentially to create a spinning globe effect</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC8">import time</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC9">from subprocess import call</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC10">longitude_increments = 5</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC11">image_counter = 1</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC12">for i in range(-180, 180, longitude_increments):</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC13">  definition = ( </td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC14">  '+proj=ortho +lat_0=-20 +lon_0=%i +x_0=0 +y_0=0 +R=6371000 +units=m +no_defs +type=crs' % i)</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC15">  crs = QgsCoordinateReferenceSystem()</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC16">  crs.createFromProj(definition)</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC17">  iface.mapCanvas().mapSettings().setDestinationCrs(crs)</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC18">  #iface.mapCanvas().setMapUnits(0)</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC19">  iface.mapCanvas().refresh()</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC20">  iface.mapCanvas().saveAsImage(</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC21">    '/tmp/globe-%03d.png' % image_counter) </td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC22">  image_counter += 1</td></tr></tbody></table><br><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC23">  print (definition)</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC24">  time.sleep(1)</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC25"></td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC26"># Now generate the GIF. If this fails try run the call from the command line</td></tr><tr></tr></tbody></table><table><tbody><tr><td id="gmail-m_-6278933949476290342gmail-m_-265124885745350679gmail-m_-4696422323050178931gmail-file-spinning_globe_orthographc-py-LC27"># and check the path to convert (provided by ImageMagick) is correct...</td></tr><tr></tr></tbody></table>call('/usr/bin/convert -delay 35 -loop 0 /tmp/globe-*.png /tmp/globe.gif')<font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif">The  example python above using Orthographc North will hopefully make a more pleasing looking spinny globe. However, i</font><span style="font-family:arial,helvetica,sans-serif">n QGIS 3.x the code runs but if I inspect the </span>mapcanvas<span style="font-family:arial,helvetica,sans-serif"> CRS after setting the new CRS, it still shows the old CRS. Can anyone see what I am missing here?</span></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><span style="font-family:arial,helvetica,sans-serif"><br></span></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif">Thanks!</font></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif"><font face="arial, helvetica, sans-serif">Regards</font></div><font style="font-family:Arial,Helvetica,sans-serif" color="#888888"><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif">Tim</font></div></font></div><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div style="text-align:center">------------------------------------------------------------------------------------------</div><div style="text-align:center"><div style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:small;display:inline"></div><img src="https://mail.google.com/mail/u/0/?ui=2&ik=7ebbf93252&view=fimg&th=15a9e43c0bbf93ca&attid=0.1&disp=emb&realattid=9436e64174762963_0.1.1&attbid=ANGjdJ-WL_J24nvBiYidJ0V0xpdsYqRwswi5nq5oywcJEHC7twYVMrxG0y-GNPu_ahJthV8ktXwYuHoVm5DI2FrRAtPzelTRHrsE2wweR9uu8wT-zz2hNRqFwi4SorQ&sz=s0-l75-ft&ats=1488721675176&rm=15a9e43c0bbf93ca&atsh=1" style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"><br></div><div style="text-align:center">Tim Sutton</div><div style="text-align:center"><span style="text-align:start">Visit </span><a href="http://kartoza.com/" style="text-align:start" target="_blank">http://kartoza.com</a><span style="text-align:start"> to find out about open source:</span><br style="text-align:start"><span style="text-align:start"> * Desktop GIS programming services</span><br style="text-align:start"><span style="text-align:start"> * Geospatial web development</span></div><div style="text-align:center"><span style="text-align:start">* GIS Training</span></div><div style="text-align:center"><span style="text-align:start">* Consulting Services</span></div><div style="text-align:center"><div style="text-align:center"></div><div style="text-align:start"><div style="text-align:center">Tim is a member of the QGIS Project Steering Committee</div><div style="text-align:center">-------------------------------------------------------------------------------------------</div></div></div></div></div></div></div></div></div>
_______________________________________________<br>
QGIS-Developer mailing list<br>
<a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a></blockquote></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="text-align:center">------------------------------------------------------------------------------------------</div><div style="text-align:center"><div style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:small;display:inline">​</div><img src="https://mail.google.com/mail/u/0/?ui=2&ik=7ebbf93252&view=fimg&th=15a9e43c0bbf93ca&attid=0.1&disp=emb&realattid=9436e64174762963_0.1.1&attbid=ANGjdJ-WL_J24nvBiYidJ0V0xpdsYqRwswi5nq5oywcJEHC7twYVMrxG0y-GNPu_ahJthV8ktXwYuHoVm5DI2FrRAtPzelTRHrsE2wweR9uu8wT-zz2hNRqFwi4SorQ&sz=s0-l75-ft&ats=1488721675176&rm=15a9e43c0bbf93ca&atsh=1" style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"><br></div><div style="text-align:center">Tim Sutton</div><div style="text-align:center"><span style="text-align:start">Visit </span><a href="http://kartoza.com/" style="text-align:start" target="_blank">http://kartoza.com</a><span style="text-align:start"> to find out about open source:</span><br style="text-align:start"><span style="text-align:start"> * Desktop GIS programming services</span><br style="text-align:start"><span style="text-align:start"> * Geospatial web development</span></div><div style="text-align:center"><span style="text-align:start">* GIS Training</span></div><div style="text-align:center"><span style="text-align:start">* Consulting Services</span></div><div style="text-align:center"><div style="text-align:center"></div><div style="text-align:start"><div style="text-align:center">Tim is a member of the QGIS Project Steering Committee</div><div style="text-align:center">-------------------------------------------------------------------------------------------</div></div></div></div></div></div></div>