Blender (jusqu'à 2.49)
|
Python
MESH
:
Supprimer
des sommets de manière aléatoire
|
|
Supprimer
des sommets de manière aléatoire
http://jmsoler.free.fr/util/blenderfile/py/randomizedduplivert.blend
Script
de base
import Blender
from Blender import NMesh, Object, Noise
Nr=Noise.random
Me=Object.GetSelected()[0].getData()
for v in Me.verts:
if Nr()> 0.5:
del Me.verts[Me.verts.index(v)]
Me.update() |
![](images/python/randomduplivert/randomduplivert03.jpg)
Première
variation sur le script
import Blender
from Blender import NMesh, Object, Noise
Nr=Noise.random
Me=Object.GetSelected()[0].getData()
LIMIT=0.5
listf2v={}
for f in Me.faces:
for v in f.v:
if v.index
not in listf2v.keys():
listf2v[Me.verts.index(v)]=[f]
elif f
not in listf2v[Me.verts.index(v)]:
listf2v[Me.verts.index(v)].append(f)
if len(listf2v.keys())>0:
for v in listf2v.keys():
if Nr()> LIMIT:
for f in listf2v[v]:
print
f
try:
del Me.faces[Me.faces.index(f)]
except:
pass
try:
del
Me.verts[v]
except:
pass
else:
for v in Me.verts:
if Nr()> LIMIT:
del
Me.verts[Me.verts.index(v)]
Me.update() |
Select
Random
Il est aussi possible
d'utiliser le menu Select/Random en mode Edit pour effectuer
la sélection de sommets au hasard pour les supprimer ensuite. Le
résultat est beaucoup plus propre, pour l'instant.
![](images/python/randomduplivert/randomduplivert04.jpg)
Les questions concernant cette page
peuvent être posées sur :
news://news.zoo-logique.org/3D.Blender
|