Blender (jusqu'à 2.49)
Python 
Uvmapping  : 
Copie et colle les coordonnées UV 
    Début   Index
précédentScript Python
En chantier Suivant

1/ copier le fichier dans le répertoire .blender\scripts
2/ ouvrez le menu Scripts, éventuellement cliquez sur Update Menus
3/ sélectionnez UV editor copy and paste

4/ Dans l'interface graphique cochez la zone de sélection des données UV (dans la version actuelle, seule la zone FaceSelect est active les autres viendront plus tard )

5/ Cliquez Copy, faite vos modification sur le mesh . Cliquez Paste les données préservées sont réatribuées aux faces qui avaient été sélectionnées et uniquement à celles-là . Si la géométrie du mesh a été modifiée et comme  les coordonnées sont restaurées en fonction de l'ordre de la liste de face, il sepeut que le résultat soit différent .

Télécharger le script
 

#!BPY

""" Registration info for Blender menus: <- these words are ignored
Name: 'UV Editor copy and paste'
Blender: 232
Group: 'UV'
Tip: 'Copy and paste UV data from 3D window or UV editor '
"""
__author__ = "Jean-Michel Soler (jms)"
__url__ = ("blender", "elysiun",
"Script's homepage, http://jmsoler.free.fr/didacticiel/blender/tutor/py_uvcoord_copy_paste.htm",
"Communicate problems and errors, http://www.zoo-logique.org/3D.Blender/newsportal/thread.php?group=3D.Blender")
__version__ = "0.1 06/2006"

"""
jmsoler  (c) 20/06/2006
"""

import Blender
from Blender.Draw import *
from Blender.BGL import *

Copy  = Create(0)
Paste = Create(0)
MeshEditor = Create(0)
UVEditor = Create(0)
FaceSelect = Create(0)

UV=[]

def draw():
    global Copy,Paste, MeshEditor
    global UVEditor, FaceSelect 

    glClear(GL_COLOR_BUFFER_BIT)
    glRasterPos2f(20, 80)
    Text("UV copy/paste")
    glRasterPos2f(20, 60)

    Copy=Button(" Copy "  , 2, 10, 35, 100, 18)
    Paste=Button(" Paste ", 3, 130, 35, 100, 18) 

    MeshEditor = Toggle("MeshEditor", 4, 10, 55, 70, 18, MeshEditor.val ,"Copy from Mesh Edition mode ")
    UVEditor   = Toggle("UVEditor"  , 5, 85, 55, 70, 18, UVEditor.val ,"Copy from UV editor in Face Select mode")
    FaceSelect = Toggle("FaceSelect", 6, 160, 55, 70, 18, FaceSelect.val ,"Copy from Face Select mode in object mode  or edit mode")

    #boutons de sortie
    Button("Exit", 1, 10, 15, 220, 18)

def event(evt, val): 
    if (evt== QKEY and not val): Exit()

def bevent(evt):
    global UV, Copy,Paste, MeshEditor
    global UVEditor, FaceSelect 

    if  (evt== 1):
        Exit()
    if (evt in [4,5,6]):
       MeshEditor.val = 0
       FaceSelect.val = 0
       UVEditor.val = 0
       if  (evt==4):
         MeshEditor.val=1
       if  (evt==5):
         UVEditor.val=1
       if  (evt==6):
         FaceSelect.val =1

    if  (evt== 2 and  FaceSelect.val):
      if Blender.Object.GetSelected()[0]>0  and Blender.Object.GetSelected()[0].getType()=='Mesh':
         OB = Blender.Object.GetSelected()[0]
         ME=OB.getData()
         if ME.hasFaceUV() : 
            UV=[[f,ME.faces[f].uv[:]] for f in ME.getSelectedFaces(1)] 
            print UV
    if  (evt== 3 and  FaceSelect.val and len(UV)>0):
         OB = Blender.Object.GetSelected()[0]
         ME=OB.getData()
         ME.hasFaceUV(1)
         SEL=Blender.NMesh.FaceFlags['SELECT']
         for f in ME.faces:
             if f.flag & SEL:
                f.flag &=~SEL 
         for uv in UV:
             ME.faces[uv[0]].uv=uv[1][:]
             ME.faces[uv[0]].flag |= SEL 
         ME.update()
    Blender.Window.RedrawAll()
Register(draw, event, bevent)



 
 
 
 
précédentScript Python
 En Chantier Suivant
Vers le  Haut de page

Les questions concernant cette page  peuvent être posées sur  :
 news://news.zoo-logique.org/3D.Blender

Livre en français
Blender : apprenez, pratiquez, Créez, livre, Ed. Campus Press, coll. Starter Kit
Blender Starter Kit

Forum
FAQ
Lexique
Didacticiels
Compilations
Blender2KT
Débuter
Modelage
Blender python
Materiaux
Lumière
Animation
API python (eng)
Archives nzn
Statistiques
Doc flash Sculptris
Galerie Sculptris

mon site de démos sur youtube