Message posté par : Yoann Lecomte
----------------------------------------
Bonjour,
J'ai effectué quelques tests et effectivement, le code n'a pas d'effet
lorsqu'il est appelé depuis la ligne de commande (canvas.scale() renvoi toujours 1).
Il est très probable que cela soit dû au fait que lorsque le code python est exécuté
l'application n'est pas encore chargée complétement (notamment le canevas de
carte).
Cela explique que les appels python qui doivent interagir avec lui n'aient aucun
effet.
Il est également possible que QGIS charge un projet vierge au démarrage et ce chargement
aura pour effet de modifier les paramètres que vous tentez de mettre en place.
Pour contourner cela, vous pourriez plutôt essayer de créer un plugin et d'appeler
votre code dans la fonction d'initialisation du plugin (__init__.py). Les plugins sont
chargés tardivement dans le lancement de QGIS et je pense qu'au moment où ils sont
initialisés, le canevas de carte contenu dans iface est prêt. C'est à mon avis une
piste à explorer. Ceci dit je ne garantis pas que cela fonctionne, il est également
possible que la code que vous fournissez dans la ligne de commande soit appelé avec un
QGIS dans le même état que lors de l'initialisation des plugins.
A tester donc...
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=364553#p364553
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net