4 Archivos adjunto(s)
Script x-ray a un objeto con python
Hola, por fin he terminado este pequeño script en Python para Autodesk Maya, luego de un par de días de programarlo y probarlo.
Lo que hace este script es activar o desactivar la transparencia del objeto seleccionado y así poder ver con mayor facilidad sus edges, vértices o faces.
Yo me he creado un hotkey con la tecla X, para hacerlo deben ir a:
- Windows
- Settings/Preferencias
- Hotkey Editor
Archivo adjunto 226552
(1).-En la ventana qué se abrirá deben ir a la pestaña: Runtime command editor y presionar (2)New, (3).-Luego ingresar un nombre cualquiera para este script, por ejemplo: Xray_Object en el item name, (4).-Pueden agregar una descripción, por ejemplo: Activa Transparencia en objeto (sin comillas), (5).-En Languaje: deben elegir Python
(6).-Pegar el código y clic a (7)save runtime command, (.-Cambiar en Edit Hotkey for a: Custom scripts
(9).-Elegir el script creado y presionar la tecla X, (10).-Aparecera un mensaje de que ya está asignado, pero deben dar clic a yes
(11).-Save and close.
Archivo adjunto 226553
Ahora solo deben elegir un objeto, elegir unos cuantos faces o lo que deseen y presionar en su teclado la X, notaran que se ve en modo xray y si presionan nuevamente, vuelve al modo en que estaba inicialmente.
Solo funciona con un objeto a la vez.
Aquí un gif de ejemplo.
Archivo adjunto 226554
Y por último el código (no copiar este, ya qué perdió la indentacion al pegarlo aquí, adjunto el archivo.py):.
Import Maya, cmds as mc.
A=mc, selectMode(q= True, object= True) if a==True:
listObj= mc, ls(selection=True)
cantObj= len(listObj).
If cantObj>1:
mc.warning(Debe seleccionar solo 1 objeto)
else:
Def XrayObj1(panel = mc, getPanel(wf = True)):
state = mc, displaySurface(q= True, x = True) if state == [0]:
mc, displaySurface(x = 1)
else:
mc, displaySurface(x = 0).
XrayObj1() else:
mc, selectMode(object=True) def XrayObj2(panel = mc, getPanel(wf = True)):
state = mc, displaySurface(q= True, x = True) if state == [0]:
mc, displaySurface(x = 1)
else:
mc, displaySurface(x = 0) mc, selectMode(component= True).
XrayObj2().
Espero les sea de utilidad, cualquier duda, pues aquí estamos.
Un afectuoso saludo.
Posdata: Adjunto el archivo py dentro del (*.zip,) abran y copien este código, ya qué esta con indentacion.
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=226552
https://foro3d.com/attachment.php?attachmentid=226553
https://foro3d.com/attachment.php?attachmentid=226554
https://foro3d.com/attachment.php?attachmentid=226555