[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [1958] trunk/py/scripts/addons/ render_povray/render.py: replace own path functions with pythons, use dict lookup for extensions.

Campbell Barton ideasman42 at gmail.com
Fri May 20 03:29:10 CEST 2011


Revision: 1958
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=1958
Author:   campbellbarton
Date:     2011-05-20 01:29:09 +0000 (Fri, 20 May 2011)
Log Message:
-----------
replace own path functions with pythons, use dict lookup for extensions.

Modified Paths:
--------------
    trunk/py/scripts/addons/render_povray/render.py

Modified: trunk/py/scripts/addons/render_povray/render.py
===================================================================
--- trunk/py/scripts/addons/render_povray/render.py	2011-05-19 20:22:47 UTC (rev 1957)
+++ trunk/py/scripts/addons/render_povray/render.py	2011-05-20 01:29:09 UTC (rev 1958)
@@ -29,41 +29,24 @@
 ##############################SF###########################
 ##############find image texture
 
-# XXX There’s a python func for that, IMO… --mont29
-def splitExt(path):
-    dotidx = path.rfind(".")
-    if dotidx == -1:
-        return path, ""
-    else:
-        return path[dotidx:].upper().replace(".", "")
 
-
 # XXX A simple dict would be much simpler for this… --mont29
 def imageFormat(imgF):
-    ext = ""
-    ext_orig = splitExt(imgF)
-    if ext_orig == 'JPG' or ext_orig == 'JPEG':
-        ext = "jpeg"
-    elif ext_orig == 'GIF':
-        ext = "gif"
-    elif ext_orig == 'TGA':
-        ext = "tga"
-    elif ext_orig == 'IFF':
-        ext = "iff"
-    elif ext_orig == 'PPM':
-        ext = "ppm"
-    elif ext_orig == 'PNG':
-        ext = "png"
-    elif ext_orig == 'SYS':
-        ext = "sys"
-    elif ext_orig in ('TIFF', 'TIF'):
-        ext = "tiff"
-    elif ext_orig == 'EXR':
-        ext = "exr"  # POV3.7 Only!
-    elif ext_orig == 'HDR':
-        ext = "hdr"  # POV3.7 Only! --MR
+    ext = {
+        'JPG': "jpeg",
+        'JPEG': "jpeg",
+        'GIF': "gif",
+        'TGA': "tga",
+        'IFF': "iff",
+        'PPM': "ppm",
+        'PNG': "png",
+        'SYS': "sys",
+        'TIFF': "tiff",
+        'TIF': "tiff",
+        'EXR': "exr",  # POV3.7 Only!
+        'HDR': "hdr",  # POV3.7 Only! --MR
+    }.get(os.path.splitext(imgF)[-1].upper(), "")
 
-    print(imgF)
     if not ext:
         print(" WARNING: texture image format not supported ")
 
@@ -123,23 +106,6 @@
     return image_mapBG
 
 
-# XXX There’s a python func for this… --mont29
-def splitFile(path):
-    idx = path.rfind("/")
-    if idx == -1:
-        idx = path.rfind("\\")
-    return path[idx:].replace("/", "").replace("\\", "")
-
-
-# XXX There’s a python func for this… --mont29
-def splitPath(path):
-    idx = path.rfind("/")
-    if idx == -1:
-        return path, ""
-    else:
-        return path[:idx]
-
-
 def findInSubDir(filename, subdirectory=""):
     pahFile = ""
     if subdirectory:
@@ -160,7 +126,7 @@
     fn = bpy.path.abspath(image)
     fn_strip = os.path.basename(fn)
     if not os.path.isfile(fn):
-        fn = findInSubDir(splitFile(fn), splitPath(bpy.data.filepath))
+        fn = findInSubDir(os.path.basename(fn), os.path.dirname(bpy.data.filepath))
     fn = os.path.realpath(fn)
     return fn
 
@@ -331,7 +297,7 @@
 
             # (variable) dispersion_samples (constant count for now)
             tabWrite("}\n")
-            
+
             tabWrite("photons{")
             if not ob.pov.collect_photons:
                 tabWrite("collect off\n")
@@ -342,7 +308,6 @@
                 tabWrite("reflection on\n")
             tabWrite("}\n")
 
-
     materialNames = {}
     DEF_MAT_NAME = "Default"
 
@@ -1048,7 +1013,7 @@
                             # other kind of values needed: used the number 5 below to remap
                             tabWrite("[%.3g finish {diffuse %.3g}]\n" % \
                                      ((5.0 - material.diffuse_fresnel) / 5,
-                                      (material.diffuse_intensity * 
+                                      (material.diffuse_intensity *
                                        ((5.0 - material.diffuse_fresnel_factor) / 5))))
                             tabWrite("[%.3g\n" % ((material.diffuse_fresnel_factor / 5) *
                                                   (material.diffuse_fresnel / 5.0)))



More information about the Bf-extensions-cvs mailing list