Skip to content

Instantly share code, notes, and snippets.

View morphingdesign's full-sized avatar
💭
Learning something new

Hans Palacios morphingdesign

💭
Learning something new
View GitHub Profile
@morphingdesign
morphingdesign / hou_stampExp.h
Created January 26, 2021 00:53
HScript expression to retrieve local variable from stamping operator in Houdini.
stamp("../pathtoNode", "variableName", 1)
// The 3rd arg is the default value if the
// retrieved variable for a corresponding point
// does not exist.
@morphingdesign
morphingdesign / hou_attributeToLocalVar.h
Created January 25, 2021 20:26
Create and map a point attribute to a local variable in Houdini, as an alternative to using the Attribute Create SOP.
// Create custom variable
int pt_id = i@ptnum;
// Assign variable to point attribute
i@pt_id = pt_id;
// Map point attribute to local variable
addvariablename(0, "pt_id", "PT_ID");
@morphingdesign
morphingdesign / hou_defaultNoteAndBoxColor.py
Created January 25, 2021 02:04
Get and set default colors for Houdini sticky notes, text, and network boxes.
# Get default Houdini OOTB colors for Sticky Notes, Text, and Network Boxes
print(hou.defaultColor(hou.colorItemType.StickyNote))
# <hou.Color r=1, g=0.969, b=0.522>
print(hou.defaultColor(hou.colorItemType.StickyNoteText))
# <hou.Color r=0, g=0, b=0>
print(hou.defaultColor(hou.colorItemType.NetworkBox))
# <hou.Color r=0.52, g=0.52, b=0.52>
# Set custom default colors for Houdini Sticky Notes and Network Boxes
# Sticky Notes set to white
@morphingdesign
morphingdesign / hou_nodeColors.py
Created January 24, 2021 02:49
Outline of RGB values for default Houdini node color palette.
# Sorted from left to right and top to bottom.
# Row 1
hou.Color(0.8,0.016,0.016)
hou.Color(1.0,0.0,0.0)
hou.Color(0.98,0.275,0.275)
hou.Color(0.996,0.682,0.682)
hou.Color(1.0,0.529,0.624)
hou.Color(0.624,0.329,0.396)
# Row 2
hou.Color(0.573,0.353,0.0)
@morphingdesign
morphingdesign / set_nodeShape.py
Created January 24, 2021 00:32
Syntax for setting a node to a specified node shape from available Houdini node shapes.
# Sets the node shape to be a circle
node.setUserData('nodeshape', 'circle')
@morphingdesign
morphingdesign / hou_addNodeParms.py
Last active October 10, 2022 16:30
Add custom parameters and folder to Houdini node
# Acquire node from network
node = hou.node('/obj/geo/node')
# Add folder used to collect all newly create parameters
folder = hou.FolderParmTemplate("folder", "Folder Name")
# Define folder type; default is Tabs. Set to Simple
folder.setFolderType(hou.folderType.Simple)
# Add parameter types, defined by parameter name, label, and number of components
# Add float parameter
@morphingdesign
morphingdesign / hou_nodeShapes.py
Last active August 30, 2023 00:30
List of available Houdini node shapes
editor = hou.ui.paneTabOfType(hou.paneTabType.NetworkEditor)
print(editor.nodeShapes())
# Returned tuple of strings:
# ('rect', 'bone', 'bulge', 'bulge_down', 'burst', 'camera',
# 'chevron_down', 'chevron_up', 'cigar', 'circle', 'clipped_left',
# 'clipped_right', 'cloud', 'diamond', 'ensign', 'gurgle', 'light',
# 'null', 'oval', 'peanut', 'pointy', 'slash', 'squared', 'star',
# 'tabbed_left', 'tabbed_right', 'tilted', 'trapezoid_down',
# 'trapezoid_up', 'wave')