[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [1526] trunk/py/scripts/addons/ io_coat3D: New 3b path feature added.

Kalle-Samuli Riihikoski haikalle at gmail.com
Sun Jan 30 14:39:31 CET 2011


Revision: 1526
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=1526
Author:   haikalle
Date:     2011-01-30 13:39:30 +0000 (Sun, 30 Jan 2011)
Log Message:
-----------
New 3b path feature added.

Modified Paths:
--------------
    trunk/py/scripts/addons/io_coat3D/__init__.py
    trunk/py/scripts/addons/io_coat3D/coat.py
    trunk/py/scripts/addons/io_coat3D/tex.py

Modified: trunk/py/scripts/addons/io_coat3D/__init__.py
===================================================================
--- trunk/py/scripts/addons/io_coat3D/__init__.py	2011-01-30 11:29:13 UTC (rev 1525)
+++ trunk/py/scripts/addons/io_coat3D/__init__.py	2011-01-30 13:39:30 UTC (rev 1526)
@@ -83,7 +83,13 @@
         default= ""
     )
 
+    coat3D.path3b = StringProperty(
+        name="3B Path",
+        subtype="FILE_PATH",
+        default= ""
+    )
 
+
     class coat3D(bpy.types.IDPropertyGroup):
         pass
 

Modified: trunk/py/scripts/addons/io_coat3D/coat.py
===================================================================
--- trunk/py/scripts/addons/io_coat3D/coat.py	2011-01-30 11:29:13 UTC (rev 1525)
+++ trunk/py/scripts/addons/io_coat3D/coat.py	2011-01-30 13:39:30 UTC (rev 1526)
@@ -93,7 +93,16 @@
         
         if(bpy.context.selected_objects):
             if(context.selected_objects[0].type == 'MESH'):
-                row.label(text="%s Path:"%(bpy.context.scene.objects.active.name))
+                coa = context.selected_objects[0].coat3D
+                colL = row.column()
+                colR = row.column()
+                colL.label(text="Object Path:")
+                if(coa.path3b):
+                    colR.active = True
+                else:
+                    colR.active = False
+                    
+                colR.operator("import_applink.pilgway_3d_coat_3b", text="Load 3b")
                 row = layout.row()
                 row.prop(coa,"objectdir",text="")
                     
@@ -102,6 +111,9 @@
         if(coat['status'] == 1):
             Blender_folder = ("%s%sBlender"%(coat3D.exchangedir,os.sep))
             Blender_export = Blender_folder
+            Blender_export = Blender_folder
+            path3b_now = coat3D.exchangedir
+            path3b_now += ('last_saved_3b_file.txt')
             Blender_export += ('%sexport.txt'%(os.sep))
 
             if(not(os.path.isdir(Blender_folder))):
@@ -117,12 +129,22 @@
                     obj_path = line
                     break
                 obj_pathh.close()
-                print("%s"%obj_path)
                 export = obj_path
                 mod_time = os.path.getmtime(obj_path)
                 mtl_list = obj_path.replace('.obj','.mtl')
                 if(os.path.isfile(mtl_list)):
                     os.remove(mtl_list)
+                    
+                if(os.path.isfile(path3b_now)):
+                    path3b_file = open(path3b_now)
+                    for lin in path3b_file:
+                        path_export = lin
+                        path_on = 1
+                    path3b_file.close()
+                    os.remove(path3b_now)
+                else:
+                    print("ei toimi")
+                    path_on = 0
 
                 for palikka in bpy.context.scene.objects:
                     if(palikka.type == 'MESH'):
@@ -138,6 +160,9 @@
                     bpy.ops.import_scene.obj(filepath=obj_path)
                     new_obj = scene.objects[0]
                     scene.objects[0].coat3D.objectdir = export
+                    if(path_on):
+                        scene.objects[0].coat3D.path3b = path_export
+                    
                 os.remove(Blender_export)
                 
                 bpy.context.scene.objects.active = new_obj
@@ -155,6 +180,7 @@
                 
         if(context.selected_objects):
             if(context.selected_objects[0].type == 'MESH'):
+                coa = bpy.context.selected_objects[0].coat3D
                 row = layout.row()
                 row.label(text="Texture output folder:")
                 row = layout.row()
@@ -175,12 +201,25 @@
         layout = self.layout
         scene = context.scene
         coat3D = bpy.context.scene.coat3D
+        
 
         row = layout.row()
+        if(bpy.context.selected_objects):
+            if(context.selected_objects[0].type == 'MESH'):
+                row.active = True
+        else:
+            row.active = False
+        row.operator("import_applink.pilgway_3d_deltex",text="Delete Textures")
+        row = layout.row()
         row.label(text="Exchange Folder:")
         row = layout.row()
         row.prop(coat3D,"exchangedir",text="")
-        row = layout.row()
+        if(bpy.context.scene.objects.active):
+            coa = bpy.context.scene.objects.active.coat3D
+            row = layout.row()
+            row.label(text="3b path:")
+            row = layout.row()
+            row.prop(coa,"path3b",text="")
         #colL = row.column()
         #colR = row.column()
         #colL.prop(coat3D,"export_box")
@@ -201,12 +240,7 @@
         #row = layout.row()
         #colL = row.column()
         #colR = row.column()
-        if(bpy.context.selected_objects):
-            if(context.selected_objects[0].type == 'MESH'):
-                row.active = True
-        else:
-            row.active = False
-        row.operator("import_applink.pilgway_3d_deltex",text="Delete Textures")
+
         
        
         
@@ -302,6 +336,8 @@
         coa = bpy.context.scene.objects.active.coat3D
 
         exportfile = coat3D.exchangedir
+        path3b_n = coat3D.exchangedir
+        path3b_n += ('last_saved_3b_file.txt')
         exportfile += ('%sexport.txt'%(os.sep))
         if(os.path.isfile(exportfile)):
             export_file = open(exportfile)
@@ -335,6 +371,7 @@
             proxy_mat.user_clear()
             bpy.data.materials.remove(proxy_mat)
             bpy.ops.object.select_all(action='TOGGLE')
+            
             if(coat3D.export_pos):
                 scene.objects.active = objekti
                 objekti.select = True
@@ -382,6 +419,7 @@
                 bpy.ops.object.delete()
                 objekti.select = True
                 bpy.context.scene.objects.active = objekti
+
                 
                 
     
@@ -389,6 +427,13 @@
                 bpy.ops.object.shade_smooth()
             else:
                 bpy.ops.object.shade_flat()
+
+        if(os.path.isfile(path3b_n)):
+            path3b_fil = open(path3b_n)
+            for lin in path3b_fil:
+                objekti.coat3D.path3b = lin
+            path3b_fil.close()
+            os.remove(path3b_n)
                 
         if(coat3D.importmesh and not(os.path.isfile(coa.objectdir))):
             coat3D.importmesh = False
@@ -427,19 +472,20 @@
     
     def invoke(self, context, event):
         checkname = ''
-        coat3D = bpy.context.scene.coat3D
-        scene = context.scene
-        importfile = coat3D.exchangedir
-        importfile += ('%simport.txt'%(os.sep))
-        
-        coat_path = bpy.context.active_object.coat3D.coatpath
-        
-        file = open(importfile, "w")
-        file.write("%s"%(coat_path))
-        file.write("\n%s"%(coat_path))
-        file.write("\n[3B]")
-        file.close()
-        coat['active_coat'] = coat_path
+        coa = bpy.context.scene.objects.active.coat3D
+        if(coa.path3b):
+            coat3D = bpy.context.scene.coat3D
+            scene = context.scene
+            importfile = coat3D.exchangedir
+            importfile += ('%simport.txt'%(os.sep))
+            
+            coat_path = bpy.context.active_object.coat3D.path3b
+            
+            file = open(importfile, "w")
+            file.write("%s"%(coat_path))
+            file.write("\n%s"%(coat_path))
+            file.write("\n[3B]")
+            file.close()
 
 
         return('FINISHED')

Modified: trunk/py/scripts/addons/io_coat3D/tex.py
===================================================================
--- trunk/py/scripts/addons/io_coat3D/tex.py	2011-01-30 11:29:13 UTC (rev 1525)
+++ trunk/py/scripts/addons/io_coat3D/tex.py	2011-01-30 13:39:30 UTC (rev 1526)
@@ -37,8 +37,8 @@
 def gettex(mat_list, objekti, scene,export):
 
     coat3D = bpy.context.scene.coat3D
-    coa = bpy.context.scene.objects.active.coat3D
     
+    
     if(bpy.context.scene.render.engine == 'VRAY_RENDER' or bpy.context.scene.render.engine == 'VRAY_RENDER_PREVIEW'):
         vray = True
     else:
@@ -73,6 +73,7 @@
                     if(tex_slot.texture.type == 'IMAGE'):
                                                 tex_slot.texture.image.reload()
     else:
+        coa = bpy.context.scene.objects.active.coat3D
         nimi = objname(coa.objectdir)
         if(coa.texturefolder):
             osoite = os.path.dirname(coa.texturefolder) + os.sep
@@ -235,6 +236,7 @@
                 objekti.active_material.texture_slots[index].uv_layer = objekti.data.uv_textures.active.name
             objekti.active_material.texture_slots[index].use_map_color_diffuse = False
             objekti.active_material.texture_slots[index].use_map_normal = True
+            objekti.active_material.texture_slots[index].normal_factor = -1
 
 
     if(bring_spec == 1 and texcoat['specular']):



More information about the Bf-extensions-cvs mailing list