Skip to content

Instantly share code, notes, and snippets.

View fredrikaverpil's full-sized avatar

Fredrik Averpil fredrikaverpil

View GitHub Profile
@fredrikaverpil
fredrikaverpil / store_node_information.py
Last active July 16, 2025 10:18
Using Json To Store Node Information #maya
# Copy-pasted from http://www.mattmurrayanimation.com/using-json-to-store-node-information-in-maya/
import json
import pymel.core as pm
def store(name, objs):
pose={}
ctrls=[]
for o in objs:
@fredrikaverpil
fredrikaverpil / maya_floating_win.py
Last active July 16, 2025 10:16
Window floating atop Maya 2017
from PySide2 import QtWidgets, QtCore
def _maya_main_window():
"""Return Maya's main window"""
for obj in QtWidgets.qApp.topLevelWidgets():
if obj.objectName() == 'MayaWindow':
return obj
raise RuntimeError('Could not find MayaWindow instance')
@fredrikaverpil
fredrikaverpil / click2dto3d.py
Last active January 9, 2025 13:00
On Maya click: 2d coordinates to 3d world coordinates
import maya.api.OpenMaya as om
import maya.api.OpenMayaUI as omui
import maya.cmds as cmds
# Maya Python API:
# http://help.autodesk.com/view/MAYAUL/2017/ENU/?guid=__py_ref_index_html
def onPress():
"""Take x,y from mouse click, convert into 3d world coordinates"""
brew install Qt4
brew install openssl
brew install cmake
git clone https://github.com/PySide/pyside-setup.git --recurse-submodules
cd pyside-setup
# The following must be executed in a bash shell
python setup.py bdist_wheel --ignore-git --qmake=/usr/local/Cellar/qt/4.8.7_2/bin/qmake --openssl=/usr/local/Cellar/openssl/1.0.2h_1/bin/openssl --cmake=/usr/local/Cellar/cmake/3.5.2/bin/cmake
@fredrikaverpil
fredrikaverpil / get_set_values.py
Last active May 20, 2024 20:31
Get and set knob values #nuke
# Get all nodes of type Read
readnodes = nuke.allNodes('Read')
for readnode in readnodes:
print readnode
# List all knobs for selected node
print( nuke.toNode('Read1') )
# List all knobs for specific node
print( nuke.selectedNode() )
@fredrikaverpil
fredrikaverpil / storefunc.py
Last active September 15, 2023 13:31
Store function on Nuke NoOp (or on nuke.root()) node and have it made available upon loading of script
"""Store function on node
Usage example:
.. code-block::
# Control node
ctrl_node_name = 'MY_SCRIPT_NODE' # if None, store on nuke.root()
# Define your functions and add them to the dictionary
@fredrikaverpil
fredrikaverpil / get_set_palette_data.py
Last active May 10, 2023 19:40
Get and set QPalette data
from PySide import QtGui
#from PyQt4 import QtGui
import pickle
STYLE = 'plastique'
GROUPS = ['Disabled', 'Active', 'Inactive', 'Normal']
ROLES = [
'AlternateBase',
'Background',
'Base',