Created
April 23, 2013 22:04
-
-
Save draconiansolo/5447807 to your computer and use it in GitHub Desktop.
Nuke Python Tutorials, Accessing nodes Notes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#####ACCESSING NODES PART A######## | |
print nuke.selectedNode().name() #asi es como llamo el nodo seleccionado. | |
#nuke.selectedNodes() es con la que se seleccionan varios nodos. | |
for n in nuke.selectedNodes(): #... | |
print n.name(); #ciclo entre los objetos para mostrar el nombre. | |
#se puede pasar como parametro el tipo de nodo que uno quiere poner. | |
for n in nuke.selectedNodes("Blur"): #... | |
print n.name(); #ciclo entre los objetos para mostrar el nombre. | |
#nuke.allNodes() es con la que se seleccionan todos los nodos | |
#help("nuke.allNodes")#me sirve para ver la ayuda de las funciones. | |
for n in nuke.allNodes(): | |
#... tambien se puede usar un filtro como en selected nodes | |
print n.name(); #ciclo entre los objetos para mostrar el nombre. | |
#nuke.toNode(String node) | |
print nuke.toNode("Blur1") # con esto traigo el nodo que esta en el string. | |
# si le doy print asi no mas, me retorna todos los atributos del nodo con sus valores. | |
#help(myNode) retorna toda la ayuda de la clase de nodo! | |
myNode= nuke.toNode("Blur1") | |
#dependent nodes imprime los nodos que estan conectados a este, sean visibles o no e incluso si son expresiones. | |
#for n in nuke.dependentNodes(nuke.INPUTS,myNode): esta INPUTS, HIDDEN_INPUTS y EXPRESSIONS | |
for n in nuke.dependentNodes(node=myNode): | |
#el primer atributo es el tipo de nodos que quiero, el segundo atributo es el nodo del que quiero ver los dependientes. | |
print n.name(); | |
######### ACCESING NODES PART B ############## | |
myGroup=nuke.toNode("Group1") | |
#for n in nuke.allNodes(group=myGroup):#este es (filtro, grupo)... | |
#cualquier cosa, ver help("nule.allNodes") y ya | |
for n in nuke.allNodes("Transform",myGroup): | |
print n.name() | |
#tambien se puede llamar al nodo seleccionado que está dentro de un grupo usando | |
for n in myGroup.selectedNodes(): #pero asi no deja filtrar because retarded... no veo porque no pueda filtrarlos uno mismo por nombre o clase... pero bueeeeno. | |
print n.name() | |
#------------------------------------------------------ | |
from __future__ import with_statement | |
#esto me deja importar el "with", que me deja cambiar el contexto de lo que estoy escribiendo para cambiar de nivel... asi | |
myGroup=nuke.toNode("root.Group1.Group1") #agarrar el grupo ... tambien se puede usar concatenacion. | |
with myGroup: #elegir el contexto | |
for n in nuke.selectedNodes("Transform"): # y aqui si deja filtrar | |
print n.name() | |
print nuke.thisNode().name() #con esto retorna el contexto | |
print nuke.thisParent().name() # con esto retorna el parent | |
#parece que para esto tambien sirven begin() y end() | |
###### con esto ya se como hacer el codigo que quería nick para abrir los grupos en cuanto se abre el programa | |
for n in nuke.allNodes("Group"): | |
print n.name() | |
nuke.showDag(n) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment