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 5 631 26/06 11:18:05
moonboots 
Questions & Réponses Machine distante puissante 1 91 25/06 13:33:05
sapajou 
Questions & Réponses Lattice cylindrique 2 80 25/06 12:33:08
kimlicrea 
[WIP] et travaux terminés Participation au concours Spark Avec Blender 2 161 25/06 11:51:13
ArnaudT 
Questions & Réponses [résolu] Transition couleur 7 371 23/06 23:13:47
yawdpwal 
Questions & Réponses Image étiré sur un objet 3 180 23/06 22:50:24
meltingman 
Questions & Réponses [non résolu] Mes UDIM ne se chargent pas automatiquement 2 138 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 67713 23/06 17:48:25
thomas56 
Questions & Réponses booleen: Faire une différence entre deux objet 4 286 21/06 00:08:50
BlendProblem 
Hors Sujet !! les tutos de Moonboots    [1][2][3]...[29] 284 40373 18/06 09:13:32
moonboots 
Questions & Réponses Panneau disparu en passant de 3.0 à 3.2 2 214 18/06 08:53:13
Horemheb 
The Blender Clan 'tchat Avenir du blender clan    [1][2][3]...[42] 415 58954 15/06 19:35:29
Teto45 
Questions & Réponses [résolu] effet de fumée: mon cube "domain" apparaît lors du render 2 299 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 51587 13/06 13:37:51
Lylo 
The Blender Clan 'tchat Leurre ?    [1][2][3] 22 1319 08/06 02:04:39
meltingman 
Moteur de jeu GameBlender et alternatives [non résolu] Cs (vaisseau)    [1][2][3]...[57] 567 185941 07/06 20:14:37
Redstar 
Questions & Réponses [non résolu] Cycle rendre une vitre de manière visible 0 183 06/06 10:33:25
Redstar 
The Blender Clan 'tchat VSE !!! 2 329 05/06 02:35:33
meltingman 
The Blender Clan 'tchat Inscription BlenderClan 6 1188 04/06 09:50:41
Redstar 
The Blender Clan 'tchat Les muets 0 237 03/06 23:04:31
Rimpotche 

Qui est en ligne
282 utilisateur(s) en ligne (dont 46 sur Forums)

Membre(s): 1
Invité(s): 281


DaltonDion, plus...
Nouveaux membres
FlorrieEll 1/7/2022
AllieTeal1 1/7/2022
KristinaPr 1/7/2022
LuisaErics 1/7/2022
FelicitasG 1/7/2022
MicahMarx 1/7/2022
EricGovett 1/7/2022
VirgilioSc 1/7/2022
AlishaGoos 1/7/2022
RoxanaSara 1/7/2022
Dernier Ajout
2020-09-24.jpg

Evènements à venir
(continuer) - Jui 1
Anniv des Jedi :-D
Jui 9
BUG de Lyon
Jui 23
Anniv du BlenderClan !
plus 238 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