Last active
June 19, 2020 17:06
-
-
Save gfxhacks/aaa5e3bef43bca910143c536edbf5b9f to your computer and use it in GitHub Desktop.
Snippets to query and edit Parameters in Houdini with Python: https://gfxhacks.com/create-parameters-in-houdini-with-python
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
# edit a parameter using replace | |
oldParm = "oldParmId" | |
newParm = hou.FloatParmTemplate("newParmId", "NewParmLabel", 3, default_value=[1, 1, 1]) | |
g.replace(oldParm, newParm) | |
# if you defined a parameter earlier | |
g.remove(p) | |
# ...otherwise remove by id - useful to remove existing parameters | |
g.remove("myParm") | |
# clear all custom parameters | |
g.clear() | |
# check if a parameter exists. Returns the parameter, else nothing. | |
g.find("myParm") | |
# find index of parameter | |
g.findIndices("myParm") | |
# if you are using the Python Source Editor | |
# use print() to print out to the Python Shell | |
parm = g.find("parm1") | |
print("{}: {}".format(parm.name(), parm)) | |
# insert parameter above or below another parameter (by ID) | |
g.insertAfter("id") | |
g.insertBefore("id") | |
# insert parameter above or below another parameter or folder (by Index) | |
g.insertBefore((index,), p) | |
g.insertAfter((index,), p) | |
# insert parameter above a parameter within a folder (by Index) | |
g.insertBefore((folder index, parameter index), p) | |
# list all parameters in group | |
l = g.entries() | |
for i in l: | |
print(i) | |
# list names of all parameters in group | |
l = g.entries() | |
for i in l: | |
print(i.name) | |
# list names of parameters excluding folders | |
l = g.entriesWithoutFolders() | |
for i in l: | |
print(i.name()) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment