Script en Python sous Blinder
Fermé
fredbubu65
Messages postés
13
Date d'inscription
mardi 30 mars 2010
Statut
Membre
Dernière intervention
17 janvier 2019
-
10 janv. 2019 à 11:26
fredbubu65 Messages postés 13 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 17 janvier 2019 - 17 janv. 2019 à 11:10
fredbubu65 Messages postés 13 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 17 janvier 2019 - 17 janv. 2019 à 11:10
A voir également:
- Script en Python sous Blinder
- Script vidéo youtube - Guide
- Citizen code python avis - Accueil - Outils
- Microsoft activation script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
2 réponses
fredbubu65
Messages postés
13
Date d'inscription
mardi 30 mars 2010
Statut
Membre
Dernière intervention
17 janvier 2019
11 janv. 2019 à 11:14
11 janv. 2019 à 11:14
Pour information, lorsque j'exécute mon script, j'ai la ligne 28 en erreur :
"if bpy.context.object.mode == "EDIT":"
Pourquoi ?
"if bpy.context.object.mode == "EDIT":"
Pourquoi ?
fredbubu65
Messages postés
13
Date d'inscription
mardi 30 mars 2010
Statut
Membre
Dernière intervention
17 janvier 2019
17 janv. 2019 à 11:10
17 janv. 2019 à 11:10
C'est bon j'ai trouvé la solution. Du coup, je l'a met ci-dessous ça pourra aider des personnes :
#----------------------------------------------------------------------------------------------------------------
# Programme Python pour le logiciel 'Blender'
# Le BUT : Diminuer la taille des fichiers d'un dossier et transférer les nouveaux dans un autre dossier.
# Gain en terme de taille : 25-30% de gain par rapport à ceux de départ
#----------------------------------------------------------------------------------------------------------------
import bpy
from mathutils import Vector, Matrix, Quaternion, Euler, Color
from os import *
import os # Bibliothèque indispensable pr la gestion de fichiers ou de dossiers: Lister, créer, etc
input_dir = "C:\\Users\\fdu\\Documents\\MesDocumentsPersos\\Programmation\\Python\\vrml-De-Base\\"
output_dir = "C:\\Users\\fdu\\Documents\\MesDocumentsPersos\\Programmation\\Python\\vrml-Allege\\"
for wrl_file in listdir(input_dir):
if wrl_file.endswith(".wrl"):
# Permet de supprimer tous les objects de la scène
filepath = path.join(input_dir, wrl_file)
print("Le fichier est : ", filepath)
bpy.ops.import_scene.x3d(filepath=filepath, filter_glob="*.wrl")
object_all = bpy.context.scene.objects
for ob in object_all:
ob.select = ob.name.startswith("Viewpoint") # Viewpoint : CAMERAS
bpy.ops.object.delete(use_global=False)
object_all = bpy.context.scene.objects
for ob in object_all:
ob.select = ob.name.startswith("Shape_IndexedFaceSet") # Shape_IndexedFaceSet -> Nom de chaque pièce composant le wrl
bpy.context.scene.objects.active = bpy.data.objects["Shape_IndexedFaceSet"]
bpy.ops.object.join()
bpy.ops.object.mode_set (mode = 'EDIT')
# Supprime les doublons
bpy.ops.mesh.remove_doubles(use_unselected=False, threshold=9.999999747378752e-05)
filepath2 = os.path.join(output_dir, wrl_file)
bpy.ops.export_scene.vrml2(filepath=filepath2)
# Repasser en mode Object
bpy.ops.object.mode_set (mode = 'OBJECT')
# Supprimer toute la scene pour le prochain tour de boucle
bpy.ops.object.select_by_type(type='MESH')
bpy.ops.object.delete(use_global=False)
for item in bpy.data.meshes:
bpy.data.meshes.remove(item)
print("\n" + "======> Le fichier : " + wrl_file + " a ete bien copie" + "\n")
16 janv. 2019 à 11:05