[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [1483] trunk/py/scripts/addons/ io_scene_x3d/export_x3d.py: write predictable material order.

Campbell Barton ideasman42 at gmail.com
Sun Jan 23 13:48:31 CET 2011


Revision: 1483
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=1483
Author:   campbellbarton
Date:     2011-01-23 12:48:31 +0000 (Sun, 23 Jan 2011)
Log Message:
-----------
write predictable material order.

Modified Paths:
--------------
    trunk/py/scripts/addons/io_scene_x3d/export_x3d.py

Modified: trunk/py/scripts/addons/io_scene_x3d/export_x3d.py
===================================================================
--- trunk/py/scripts/addons/io_scene_x3d/export_x3d.py	2011-01-23 08:57:54 UTC (rev 1482)
+++ trunk/py/scripts/addons/io_scene_x3d/export_x3d.py	2011-01-23 12:48:31 UTC (rev 1483)
@@ -378,7 +378,11 @@
             for i, (material_index, image) in enumerate(zip(mesh_faces_materials, mesh_faces_image)):
                 face_groups[material_index, image].append(i)
 
-            for (material_index, image), face_group in face_groups.items():
+            # same as face_groups.items() but sorted so we can get predictable output.
+            face_groups_items = list(face_groups.items())
+            face_groups_items.sort(key=lambda m: (m[0][0], getattr(m[0][1], "name", "")))
+
+            for (material_index, image), face_group in face_groups_items:  # face_groups.items()
                 if face_group:
                     material = mesh_materials[material_index]
 



More information about the Bf-extensions-cvs mailing list