[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [1469] trunk/py/scripts/addons/ io_scene_obj/import_obj.py: pass pep8 check now.

Campbell Barton ideasman42 at gmail.com
Fri Jan 21 15:32:06 CET 2011


Revision: 1469
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=1469
Author:   campbellbarton
Date:     2011-01-21 14:32:05 +0000 (Fri, 21 Jan 2011)
Log Message:
-----------
pass pep8 check now.

Modified Paths:
--------------
    trunk/py/scripts/addons/io_scene_obj/import_obj.py

Modified: trunk/py/scripts/addons/io_scene_obj/import_obj.py
===================================================================
--- trunk/py/scripts/addons/io_scene_obj/import_obj.py	2011-01-21 14:08:17 UTC (rev 1468)
+++ trunk/py/scripts/addons/io_scene_obj/import_obj.py	2011-01-21 14:32:05 UTC (rev 1469)
@@ -39,7 +39,7 @@
 from io_utils import load_image, unpack_list, unpack_face_list
 
 
-def BPyMesh_ngon(from_data, indices, PREF_FIX_LOOPS= True):
+def BPyMesh_ngon(from_data, indices, PREF_FIX_LOOPS=True):
     '''
     Takes a polyline of indices (fgon)
     and returns a list of face indicie lists.
@@ -50,17 +50,20 @@
     PREF_FIX_LOOPS: If this is enabled polylines that use loops to make multiple polylines are delt with correctly.
     '''
 
-    if not set: # Need sets for this, otherwise do a normal fill.
-        PREF_FIX_LOOPS= False
+    if not set:  # Need sets for this, otherwise do a normal fill.
+        PREF_FIX_LOOPS = False
 
-    Vector= mathutils.Vector
+    Vector = mathutils.Vector
     if not indices:
         return []
 
     #    return []
-    def rvec(co): return round(co.x, 6), round(co.y, 6), round(co.z, 6)
-    def mlen(co): return abs(co[0])+abs(co[1])+abs(co[2]) # manhatten length of a vector, faster then length
+    def rvec(co):
+        return round(co.x, 6), round(co.y, 6), round(co.z, 6)
 
+    def mlen(co):
+        return abs(co[0]) + abs(co[1]) + abs(co[2])  # manhatten length of a vector, faster then length
+
     def vert_treplet(v, i):
         return v, rvec(v), i, mlen(v)
 
@@ -70,21 +73,20 @@
         else:
             return v1[1], v2[1]
 
-
     if not PREF_FIX_LOOPS:
         '''
         Normal single concave loop filling
         '''
         if type(from_data) in (tuple, list):
-            verts= [Vector(from_data[i]) for ii, i in enumerate(indices)]
+            verts = [Vector(from_data[i]) for ii, i in enumerate(indices)]
         else:
-            verts= [from_data.vertices[i].co for ii, i in enumerate(indices)]
+            verts = [from_data.vertices[i].co for ii, i in enumerate(indices)]
 
-        for i in range(len(verts)-1, 0, -1): # same as reversed(xrange(1, len(verts))):
-            if verts[i][1]==verts[i-1][0]:
-                verts.pop(i-1)
+        for i in range(len(verts) - 1, 0, -1):  # same as reversed(xrange(1, len(verts))):
+            if verts[i][1] == verts[i - 1][0]:
+                verts.pop(i - 1)
 
-        fill= fill_polygon([verts])
+        fill = fill_polygon([verts])
 
     else:
         '''
@@ -93,23 +95,22 @@
         '''
 
         if type(from_data) in (tuple, list):
-            verts= [vert_treplet(Vector(from_data[i]), ii) for ii, i in enumerate(indices)]
+            verts = [vert_treplet(Vector(from_data[i]), ii) for ii, i in enumerate(indices)]
         else:
-            verts= [vert_treplet(from_data.vertices[i].co, ii) for ii, i in enumerate(indices)]
+            verts = [vert_treplet(from_data.vertices[i].co, ii) for ii, i in enumerate(indices)]
 
-        edges= [(i, i-1) for i in range(len(verts))]
+        edges = [(i, i - 1) for i in range(len(verts))]
         if edges:
-            edges[0]= (0,len(verts)-1)
+            edges[0] = (0, len(verts) - 1)
 
         if not verts:
             return []
 
-
-        edges_used= set()
-        edges_doubles= set()
+        edges_used = set()
+        edges_doubles = set()
         # We need to check if any edges are used twice location based.
         for ed in edges:
-            edkey= ed_key_mlen(verts[ed[0]], verts[ed[1]])
+            edkey = ed_key_mlen(verts[ed[0]], verts[ed[1]])
             if edkey in edges_used:
                 edges_doubles.add(edkey)
             else:
@@ -117,118 +118,117 @@
 
         # Store a list of unconnected loop segments split by double edges.
         # will join later
-        loop_segments= []
+        loop_segments = []
 
-        v_prev= verts[0]
-        context_loop= [v_prev]
-        loop_segments= [context_loop]
+        v_prev = verts[0]
+        context_loop = [v_prev]
+        loop_segments = [context_loop]
 
         for v in verts:
-            if v!=v_prev:
+            if v != v_prev:
                 # Are we crossing an edge we removed?
                 if ed_key_mlen(v, v_prev) in edges_doubles:
-                    context_loop= [v]
+                    context_loop = [v]
                     loop_segments.append(context_loop)
                 else:
-                    if context_loop and context_loop[-1][1]==v[1]:
+                    if context_loop and context_loop[-1][1] == v[1]:
                         #raise "as"
                         pass
                     else:
                         context_loop.append(v)
 
-                v_prev= v
+                v_prev = v
         # Now join loop segments
 
-        def join_seg(s1,s2):
-            if s2[-1][1]==s1[0][1]: #
-                s1,s2= s2,s1
-            elif s1[-1][1]==s2[0][1]:
+        def join_seg(s1, s2):
+            if s2[-1][1] == s1[0][1]:
+                s1, s2 = s2, s1
+            elif s1[-1][1] == s2[0][1]:
                 pass
             else:
                 return False
 
             # If were stuill here s1 and s2 are 2 segments in the same polyline
-            s1.pop() # remove the last vert from s1
-            s1.extend(s2) # add segment 2 to segment 1
+            s1.pop()  # remove the last vert from s1
+            s1.extend(s2)  # add segment 2 to segment 1
 
-            if s1[0][1]==s1[-1][1]: # remove endpoints double
+            if s1[0][1] == s1[-1][1]:  # remove endpoints double
                 s1.pop()
 
-            s2[:]= [] # Empty this segment s2 so we dont use it again.
+            s2[:] = []  # Empty this segment s2 so we dont use it again.
             return True
 
-        joining_segments= True
+        joining_segments = True
         while joining_segments:
-            joining_segments= False
-            segcount= len(loop_segments)
+            joining_segments = False
+            segcount = len(loop_segments)
 
-            for j in range(segcount-1, -1, -1): #reversed(range(segcount)):
-                seg_j= loop_segments[j]
+            for j in range(segcount - 1, -1, -1):  # reversed(range(segcount)):
+                seg_j = loop_segments[j]
                 if seg_j:
-                    for k in range(j-1, -1, -1): # reversed(range(j)):
+                    for k in range(j - 1, -1, -1):  # reversed(range(j)):
                         if not seg_j:
                             break
-                        seg_k= loop_segments[k]
+                        seg_k = loop_segments[k]
 
                         if seg_k and join_seg(seg_j, seg_k):
-                            joining_segments= True
+                            joining_segments = True
 
-        loop_list= loop_segments
+        loop_list = loop_segments
 
         for verts in loop_list:
-            while verts and verts[0][1]==verts[-1][1]:
+            while verts and verts[0][1] == verts[-1][1]:
                 verts.pop()
 
-        loop_list= [verts for verts in loop_list if len(verts)>2]
+        loop_list = [verts for verts in loop_list if len(verts) > 2]
         # DONE DEALING WITH LOOP FIXING
 
-
         # vert mapping
-        vert_map= [None]*len(indices)
-        ii=0
+        vert_map = [None] * len(indices)
+        ii = 0
         for verts in loop_list:
-            if len(verts)>2:
+            if len(verts) > 2:
                 for i, vert in enumerate(verts):
-                    vert_map[i+ii]= vert[2]
-                ii+=len(verts)
+                    vert_map[i + ii] = vert[2]
+                ii += len(verts)
 
-        fill= tesselate_polygon([ [v[0] for v in loop] for loop in loop_list ])
+        fill = tesselate_polygon([[v[0] for v in loop] for loop in loop_list])
         #draw_loops(loop_list)
         #raise 'done loop'
         # map to original indices
-        fill= [[vert_map[i] for i in reversed(f)] for f in fill]
+        fill = [[vert_map[i] for i in reversed(f)] for f in fill]
 
-
     if not fill:
         print('Warning Cannot scanfill, fallback on a triangle fan.')
-        fill= [ [0, i-1, i] for i in range(2, len(indices)) ]
+        fill = [[0, i - 1, i] for i in range(2, len(indices))]
     else:
         # Use real scanfill.
         # See if its flipped the wrong way.
-        flip= None
+        flip = None
         for fi in fill:
             if flip != None:
                 break
             for i, vi in enumerate(fi):
-                if vi==0 and fi[i-1]==1:
-                    flip= False
+                if vi == 0 and fi[i - 1] == 1:
+                    flip = False
                     break
-                elif vi==1 and fi[i-1]==0:
-                    flip= True
+                elif vi == 1 and fi[i - 1] == 0:
+                    flip = True
                     break
 
         if not flip:
             for i, fi in enumerate(fill):
-                fill[i]= tuple([ii for ii in reversed(fi)])
+                fill[i] = tuple([ii for ii in reversed(fi)])
 
     return fill
 
+
 def line_value(line_split):
     '''
     Returns 1 string represneting the value for this line
     None will be returned if theres only 1 word
     '''
-    length= len(line_split)
+    length = len(line_split)
     if length == 1:
         return None
 
@@ -236,12 +236,12 @@
         return line_split[1]
 
     elif length > 2:
-        return ' '.join( line_split[1:] )
+        return ' '.join(line_split[1:])
 
 
 def obj_image_load(imagepath, DIR, IMAGE_SEARCH):
     if '_' in imagepath:
-        image= load_image(imagepath.replace('_', ' '), DIR)
+        image = load_image(imagepath.replace('_', ' '), DIR)
         if image:
             return image
 
@@ -275,14 +275,14 @@
     Create all the used materials in this obj,
     assign colors and images to the materials from all referenced material libs
     '''
-    DIR= os.path.dirname(filepath)
+    DIR = os.path.dirname(filepath)
 
     #==================================================================================#
     # This function sets textures defined in .mtl file                                 #
     #==================================================================================#
     def load_material_image(blender_material, context_material_name, imagepath, type):
 
-        texture= bpy.data.textures.new(name=type, type='IMAGE')

@@ Diff output truncated at 10240 characters. @@


More information about the Bf-extensions-cvs mailing list