[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18460] trunk/blender/release/scripts: [ #18082] make uvcalc_follow_active_coords. py bypass the gui and accept arguments when called from another script
Campbell Barton
ideasman42 at gmail.com
Mon Jan 12 05:07:12 CET 2009
Revision: 18460
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18460
Author: campbellbarton
Date: 2009-01-12 05:07:06 +0100 (Mon, 12 Jan 2009)
Log Message:
-----------
[#18082] make uvcalc_follow_active_coords.py bypass the gui and accept arguments when called from another script
from Bill N (slow67)
Also made uvcalc_quad_clickproj.py and uvcalc_follow_active_coords.py add UV's if they didn't exist.
Modified Paths:
--------------
trunk/blender/release/scripts/uvcalc_follow_active_coords.py
trunk/blender/release/scripts/uvcalc_quad_clickproj.py
Modified: trunk/blender/release/scripts/uvcalc_follow_active_coords.py
===================================================================
--- trunk/blender/release/scripts/uvcalc_follow_active_coords.py 2009-01-12 01:02:52 UTC (rev 18459)
+++ trunk/blender/release/scripts/uvcalc_follow_active_coords.py 2009-01-12 04:07:06 UTC (rev 18460)
@@ -42,28 +42,15 @@
import bpy
import BPyMesh
-def extend():
- sce = bpy.data.scenes.active
- ob = sce.objects.active
-
- # print ob, ob.type
- if ob == None or ob.type != 'Mesh':
- Draw.PupMenu('ERROR: No mesh object.')
+def extend(EXTEND_MODE,ob):
+ if EXTEND_MODE == -1:
return
-
- # Toggle Edit mode
+ me = ob.getData(mesh=1)
+ me_verts = me.verts
+ # Toggle Edit mode
is_editmode = Window.EditMode()
if is_editmode:
Window.EditMode(0)
-
- me = ob.getData(mesh=1)
- me_verts = me.verts
-
- # 0:normal extend, 1:edge length
- EXTEND_MODE = Draw.PupMenu("Use Face Area%t|Loop Average%x2|None%x0")
- if EXTEND_MODE == -1:
- return
-
Window.WaitCursor(1)
t = sys.time()
edge_average_lengths = {}
@@ -153,8 +140,7 @@
uvs_vhash_target[edgepair_outer_target[iA]][:] = uvs_vhash_source[edgepair_inner_source[1]] + (uvs_vhash_source[edgepair_inner_source[1]] - uvs_vhash_source[edgepair_outer_source[0]])
if not me.faceUV:
- Draw.PupMenu('ERROR: Mesh has no face UV coords.')
- return
+ me.faceUV= True
face_act = me.activeFace
if face_act == -1:
@@ -247,7 +233,22 @@
Window.RedrawAll()
Window.WaitCursor(0)
+
+def main():
+ sce = bpy.data.scenes.active
+ ob = sce.objects.active
+
+ # print ob, ob.type
+ if ob == None or ob.type != 'Mesh':
+ Draw.PupMenu('ERROR: No mesh object.')
+ return
+
+
+
+ # 0:normal extend, 1:edge length
+ EXTEND_MODE = Draw.PupMenu("Use Face Area%t|Loop Average%x2|None%x0")
+ extend(EXTEND_MODE,ob)
+
if __name__ == '__main__':
- extend()
-
-
\ No newline at end of file
+ main()
+
Modified: trunk/blender/release/scripts/uvcalc_quad_clickproj.py
===================================================================
--- trunk/blender/release/scripts/uvcalc_quad_clickproj.py 2009-01-12 01:02:52 UTC (rev 18459)
+++ trunk/blender/release/scripts/uvcalc_quad_clickproj.py 2009-01-12 04:07:06 UTC (rev 18460)
@@ -171,6 +171,9 @@
f_uv = f.uv
return [(v.co-face_corner_main, f_uv[i]) for i,v in enumerate(f.v)]
+ if me.faceUV==False:
+ me.faceUV= True
+
coords = [ (co,uv) for f in me.faces if f.sel for co, uv in get_face_coords(f)]
coords_orig = [uv.copy() for co, uv in coords]
@@ -264,4 +267,5 @@
if __name__=='__main__':
main()
- Window.DrawProgressBar(1.0, '')
\ No newline at end of file
+ Window.DrawProgressBar(1.0, '')
+
More information about the Bf-blender-cvs
mailing list