Séparer un script en plusieurs add-ons
OverdOzed
Inscrit:
18/02/2015 20:28
Post(s): 717
Salut à toustes,

J'essaie de séparer un script en plusieurs add-ons sans y parvenir malgré mes efforts.

Si quelqu'un s'y retrouve en python et veut me donner un coup de main là-dessus, ça permettrait de partager gratuitement ces add-ons:

-lier la visibilité des enfants à celle des parents
-garder les lumières allumées en vue isolée
-garder les lumières allumées en vue locale
-créer un label
-traduire tout les objets et les collections
-utiliser des plans de coupe selon les collections
-afficher la définition de l'objet actif
-...

Le script complet est contenu dans le fichier partagé ici:
https://www.z-anatomy.com/forum/about-python-scripts/z-anatomy-py-script

Contribution le : 16/05 11:12:29
Créer un fichier PDF de la contribution Imprimer


Re: Séparer un script en plusieurs add-ons
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 2010
Coucou Melodicpinpon,

Avant tout, je te propose de faire un peu de réorganisation:

- Regroupe les imports en première ligne;
- Regroupe les classes en secondes partie, après les imports;
- Fait suivre le regroupement des fonctions.

Cela permettra de retirer la confusion et le cafouillis des dépendances via les imports.

N'oublie surtout pas de faire une sauvegarde de ton fichier avant de réorganiser.

Ensuite, si tu désires séparer en plusieurs script, voilà comment tu dois procéder:

Comme tu le sais sans doute, quand tu importes quelque chose dans un script, c'est parce que tu as besoin du "module" x ou y, qui est constitué de classes, ou de fonctions, voire les deux.

Concrètement prenons un simple dictionnaire:

fichier dictionnaire:

dico = {'os':valeur,
        'machin':0,
        'ShowOrgane':True}


Ton fichier exécutable:

# option 1
import dictionnaire

print(dictionnaire.dico['os'])

# option 2
from dictionnaire import dico

print(dico['os'])

# dans ton cas, ce sera classe.fonction(arg1, arg2) ou classe.attribut = valeur


Cet exemple est valable pour une classe ou une fonction, à toi de juger comment tu veux organiser ton code selon les options exposées.

Il ne faut pas oublier de remettre les dépendances là ou c'est nécessaire pour tes classes ou fonctions.

Jusque là, tu penses pouvoir te débrouiller ou on doit te le faire à ta place ?

Contribution le : 16/05 12:32:49
Créer un fichier PDF de la contribution Imprimer


Re: Séparer un script en plusieurs add-ons
OverdOzed
Inscrit:
18/02/2015 20:28
Post(s): 717
J'ai passé la matinée à tenter par addition, puis par soustractions; et j'arrive à des scripts exécutables sans bug, mais -j'ignore pourquoi- quand je relance le fichier et que j'exécute le script après ouverture, les fonctions ne font plus effet...

Je peux t'envoyer cette partie par exemple:
https://pasteall.org/blend/b9339023a62f40c18f1c73a6eb5143f6

Je ne suis pas contre apprendre le python mais l'essai-erreur est vraiment chronophage et je pense être plus utile à me consacrer à l'anatomie; si quelqu'un de plus expérimenté pouvait le faire, ça m’arrangerait et on aurait plus de chance d'aboutir à quelque chose de fonctionnel.

Contribution le : 16/05 18:11:49
Créer un fichier PDF de la contribution Imprimer


Re: Séparer un script en plusieurs add-ons
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 2010
Dans ton fichier, aucune instruction n'est écrite pour lancer quoi que ce soit: tu as bien une liste "classes" mais ça n'exécute rien.

J'ai voulu tenté de lancer "OBJECT_OT_hide_wrapper" mais il manque des dépendances de variables et les arguments "self" et "context" posent problème.

Sauf si je me trompe, une classe ne doit pas avoir d'arguments si cette dernière ne contient pas de méthode constructeur __init__(self).

Mais je t'avoues que mes connaissances sont très basiques à ce niveau, n'étant pas amené à programmer véritablement...

Contribution le : 17/05 13:10:08
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
The Blender Clan 'tchat Blender Tribu, un nouveau forum 7 721 Hier 15:58:53
moonboots 
Questions & Réponses Machine distante puissante 1 122 25/06 13:33:05
sapajou 
Questions & Réponses Lattice cylindrique 2 116 25/06 12:33:08
kimlicrea 
[WIP] et travaux terminés Participation au concours Spark Avec Blender 2 206 25/06 11:51:13
ArnaudT 
Questions & Réponses [résolu] Transition couleur 7 421 23/06 23:13:47
yawdpwal 
Questions & Réponses Image étiré sur un objet 3 226 23/06 22:50:24
meltingman 
Questions & Réponses [non résolu] Mes UDIM ne se chargent pas automatiquement 2 178 23/06 18:00:47
Voltrum 
Questions & Réponses Je n'arrive pas à rendre mon animation, je n'obtiens que des images noires    [1][2] 16 81391 23/06 17:48:25
thomas56 
Questions & Réponses booleen: Faire une différence entre deux objet 4 386 21/06 00:08:50
BlendProblem 
Hors Sujet !! les tutos de Moonboots    [1][2][3]...[29] 284 40523 18/06 09:13:32
moonboots 
Questions & Réponses Panneau disparu en passant de 3.0 à 3.2 2 248 18/06 08:53:13
Horemheb 
The Blender Clan 'tchat Avenir du blender clan    [1][2][3]...[42] 415 59151 15/06 19:35:29
Teto45 
Questions & Réponses [résolu] effet de fumée: mon cube "domain" apparaît lors du render 2 331 14/06 09:42:07
PounchPounch 
[WIP] et travaux terminés [WIP] Les tests de mon gros projet (merci pour vos conseils)    [1][2][3][4] 33 51725 13/06 13:37:51
Lylo 
The Blender Clan 'tchat Leurre ?    [1][2][3] 22 1421 08/06 02:04:39
meltingman 
Moteur de jeu GameBlender et alternatives [non résolu] Cs (vaisseau)    [1][2][3]...[57] 567 186181 07/06 20:14:37
Redstar 
Questions & Réponses [non résolu] Cycle rendre une vitre de manière visible 0 208 06/06 10:33:25
Redstar 
The Blender Clan 'tchat VSE !!! 2 358 05/06 02:35:33
meltingman 
The Blender Clan 'tchat Inscription BlenderClan 6 1222 04/06 09:50:41
Redstar 
The Blender Clan 'tchat Les muets 0 261 03/06 23:04:31
Rimpotche 

Qui est en ligne
278 utilisateur(s) en ligne (dont 50 sur Forums)

Membre(s): 0
Invité(s): 278


plus...
Nouveaux membres
Newton90N 2/7/2022
FionaGeogh 2/7/2022
Jestine59K 2/7/2022
AllanKiern 2/7/2022
DanielleAk 2/7/2022
ArnoldEdle 2/7/2022
GretaMcGar 2/7/2022
FelicitasQ 2/7/2022
ShondaBoud 2/7/2022
UteHersh63 2/7/2022
Dernier Ajout
2020-09-24.jpg

Evènements à venir
Jui 9
BUG de Lyon
Jui 23
Anniv du BlenderClan !
Aou 7
anniversaire Cem47
plus 237 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2021 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445