PyMaxwell - Export des matériaux d'un mxs

Pour vous simplifier la vie
Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

PyMaxwell - Export des matériaux d'un mxs

Message 15 nov. 2012, 12:29

Avec ce script vous pouvez exporter les matériaux (mxm) d'une scène (mxs). Les matériaux seront exportés dans un dossier que vous choisirez.

Voici une image pour comprendre simplement :

Image

Configuration : Où il y a ### c'est une ligne qu'il faut modifier. La première, c'est le chemin du mxs, avec les nom de mxs inclu (voir le script pour comprendre). La deuxième, c'est le dossier où s'enregistrent vos matériaux.

Code : Tout sélectionner


##################################
# Copyright 2012 Rodman 
##################################

from pymaxwell import *

def export_mat_from_mxs():

	# Create a scene
	scene = Cmaxwell(mwcallback);

	# Read scene MXS
	path_name_scene = "f:/scene_name" ###
	extension_mxs = ".mxs"
	ok = scene.readMXS(path_name_scene + extension_mxs);
	if ok == 0:
		print("Error reading " + path_name_scene + extension_mxs);
	else:
		print("MXS (" + path_name_scene + extension_mxs + ") readed");

	# Start Iterator
	it = CmaxwellMaterialIterator();
	material = it.first( scene );
  
	while not material.isNull():
  
  	# Path to save materials	
		name_mat = material.getName()
		path_folder = "f:/" ###
		full_path_save_mat = (path_folder + name_mat + ".mxm");

		# Write material to disk
		ok = material.write(full_path_save_mat);
		if ok == 0:
			print("Error saving material to disk");
			return 0;

		material = it.next();
	# End Iterator

	# Close scene
	scene.freeScene();
	return 1;

export_mat_from_mxs();

Ce script a l'intérêt par exemple de pouvoir ranger les matériaux d'une scène dans sa bibliothèque personnelle. Un autre intérêt est de pouvoir importer ces matériaux dans un logiciel comme 3ds max.

Enjoy ;)

Avatar de l’utilisateur
Roch
Messages : 7634
Localisation : Marseille - France
Contact :

Re: PyMaxwell - Export des matériaux d'un mxs

Message 15 nov. 2012, 19:54

tu en abats des lignes toi !

Merci

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: PyMaxwell - Export des matériaux d'un mxs

Message 15 nov. 2012, 22:03

Cela m'a pris 20 minutes d'écrire le script. C'est mon manque d'expérience en Python qui a fait que j'ai mis du temps à régler 2-3 trucs. Bref le script je savais comment l'écrire avant d'ouvrir PyMaxwell avec ce que j'ai déjà fait auparavant. Il m'a fallu au moins 10 minutes pour poster ici, le temps d'uploader l'image et écrire le texte. C'était le plus dur. :lol:

Avatar de l’utilisateur
maxou
SL01
Messages : 62

Re: PyMaxwell - Export des matériaux d'un mxs

Message 18 nov. 2012, 17:45

Tu viens de répondre à un problème qui me dérangeait. En effet j'aime que ce soit bien rangé dans mon ordi... et paf tu sors un script qui parait simple pour toi mais que je trouve très utile.
Merci merci Roadman :wink:

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: PyMaxwell - Export des matériaux d'un mxs

Message 18 nov. 2012, 18:48

Super ! Je suis content que cela te plaise ! :)

Avatar de l’utilisateur
alpharender
SL03
Messages : 227

Re: PyMaxwell - Export des matériaux d'un mxs

Message 01 déc. 2012, 17:43

merci pour le script

comment l'utiliser ? :? lol c'est con comme question mais c'est tous moi :oops:
i7 860 + 8Go ram + Windows 7_64 + CM = asus P7P55D-E deluxe + Sketchup 8 + archicad 15 +maxwell 2

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: PyMaxwell - Export des matériaux d'un mxs

Message 01 déc. 2012, 19:12

Le script est à lancer dans PyMaxwell. Il y a 2 choses à changer dans le script pour le configurer (voir plus haut).

Répondre