Skip to content

Instantly share code, notes, and snippets.

@jamesrobinsonvfx
jamesrobinsonvfx / random_from_bitmask.h
Last active August 20, 2021 22:42
Pick a random value of a bitmask per point
int num_choices = 5;
int idx = floor(rand(i@id + 65536) * num_choices);
i@bitmask = int(pow(2, idx));
@jamesrobinsonvfx
jamesrobinsonvfx / copy_parm_to_clipboard.py
Last active August 20, 2021 22:52
Action button script to copy the value of a parameter to the clipboard (linux)
"""Action button script."""
import os
if kwargs["shift"]:
# Copy evaluated parameter string
text = kwargs["parmtuple"][0].evalAsString()
command = "echo -n {0}| xclip -sel clip".format(text)
os.system(command)
else:
# Copy a reference to this parameter
@jamesrobinsonvfx
jamesrobinsonvfx / houdini_version_package.json
Created April 25, 2021 04:02
Houdini Version in a Houdini Package
{
"path": "$HOME/cooltool/houdini{$HOUDINI_VERSION}"
}
@jamesrobinsonvfx
jamesrobinsonvfx / top_cook_cli.py
Created March 21, 2021 18:43
Cook Topnet on the Command Line
import hqueue.houdini as hq
node = hq.getNode("/obj/topnet1").displayNode()
node.executeGraph(False, True, False)
@jamesrobinsonvfx
jamesrobinsonvfx / attrib_menu.py
Last active August 20, 2021 22:48
Python Attribute Menu
node = kwargs["node"]
return kwargs["node"].generateInputAttribMenu(
attrib_type=hou.attribType.Point,
data_type=hou.attribData.Float,
min_size=1,
max_size=3
)