Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts/uvcopy.py')
-rw-r--r--release/scripts/uvcopy.py112
1 files changed, 0 insertions, 112 deletions
diff --git a/release/scripts/uvcopy.py b/release/scripts/uvcopy.py
deleted file mode 100644
index 73206e47109..00000000000
--- a/release/scripts/uvcopy.py
+++ /dev/null
@@ -1,112 +0,0 @@
-#!BPY
-""" Registration info for Blender menus: <- these words are ignored
-Name: 'UV Copy from Active'
-Blender: 242
-Group: 'Object'
-Tip: 'Copy UV coords from a mesh to another that has same vertex indices'
-"""
-
-__author__ = "Toni Alatalo, Martin Poirier et. al."
-__url__ = ("blender", "blenderartists.org")
-__version__ = "0.2 01/2006"
-
-__bpydoc__ = """\
-This script copies UV coords from a mesh to another (version of the same mesh).
-All target meshes must have the same number of faces at the active
-"""
-
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# ***** END GPL LICENCE BLOCK *****
-
-import Blender
-
-def face_key(me):
- '''
- Returns the face lengths for this mesh
- only copy between meshes that have matching face_key's
- '''
- return tuple([len(f) for f in me.faces])
-
-def main():
- scene = Blender.Scene.GetCurrent()
-
- source_ob = scene.objects.active
-
- if not source_ob or source_ob.type != 'Mesh':
- Blender.Draw.PupMenu("Error%t|No active object to copy UVs from.")
- return
-
- source_me = source_ob.getData(mesh=1)
-
- target_mes = [ ob.getData(mesh=1) for ob in scene.objects.context if ob != source_ob if ob.type == 'Mesh']
-
- # remove double meshes
- target_mes = dict([(me.name, me) for me in target_mes])
- target_mes = target_mes.values()
-
- if not target_mes:
- Blender.Draw.PupMenu("Error%t|No selected object(s) to copy UVs to.")
- return
-
- source_me = source_ob.getData(mesh=1)
-
- if not source_me.faceUV:
- Blender.Draw.PupMenu("Error%t|Active mesh has no UVs.")
- return
-
- if not target_mes:
- Blender.Draw.PupMenu("Error%t|no selected object other than the source, hence no target defined.")
- return
- error = False
-
- source_face_key = face_key(source_me)
- source_faces = source_me.faces
-
- fail_count = 0
-
- for target in target_mes:
- if len(source_me.faces) != len(target.faces):
- print '\ttarget "%s" facelen does not match "%s".' % (target.name, source_me.name)
- error = True
- fail_count +=1
- else:
- # slow but worth comparing
- if source_face_key != face_key(target):
- print '\t\terror, face len dosnt match for ob "%s" next mesh...' % target.name
- error = True
- fail_count +=1
- else:
- target_faces = target.faces
-
- # Add uvs if there not there
- target.faceUV = True
-
- for i, f_source in enumerate(source_faces):
- target_faces[i].uv = f_source.uv
-
- target.update()
-
- msg = 'Copied UVs to %d of %d mesh(s)' % (len(target_mes)-fail_count, len(target_mes))
-
- if error:
- msg += "|Could not copy some UV's, see console."
-
- Blender.Draw.PupMenu('UV Copy Finished%t|' + msg)
-
-if __name__ == '__main__':
- main() \ No newline at end of file