Skip to content

Instantly share code, notes, and snippets.

@gfxhacks
Last active June 19, 2020 17:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gfxhacks/aaa5e3bef43bca910143c536edbf5b9f to your computer and use it in GitHub Desktop.
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
# 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