Skip to content

Instantly share code, notes, and snippets.

@r4inm4ker
r4inm4ker / dyn_return_func.py
Created August 29, 2019 07:31
dynamic return func
class A(object):
def __init__(self):
self.var1 = None
self.var2 = None
class B(object):
def __init__(self):
self.var3 = None
self.var4 = None
@r4inm4ker
r4inm4ker / xray_createCube.py
Created August 10, 2019 22:15
x ray create cube context UI
from PySide2 import QtWidgets,QtCore, QtGui
import maya.cmds as mc
import maya.mel as mm
import maya.api.OpenMaya as om2
from maya.app.general.mayaMixin import MayaQWidgetDockableMixin
from functools import partial
class UI(MayaQWidgetDockableMixin, QtWidgets.QWidget):
def __init__(self, *args, **kwargs):
super(UI, self).__init__(*args, **kwargs)
@r4inm4ker
r4inm4ker / compareGeoTopology.py
Created April 26, 2017 10:16
compare geometries topology in Maya
import maya.cmds as mc
from maya.api.OpenMaya import MGlobal
sel = mc.ls(sl=1)
ret = mc.polyCompare(sel,v=1,e=1,fd=1)
if ret != 0:
MGlobal.displayInfo("geos NOT match!")
else:
MGlobal.displayInfo("geos match!")
@r4inm4ker
r4inm4ker / callbackOnImport.py
Created August 27, 2016 22:23
callbackOnImport
'''
source : https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/python_inside_maya/rpO70NI1jc0/I10eDlxZCQAJ
'''
import maya.OpenMaya as om
def catchFileImport(ret, fileObj, *args):
print "Importing:", fileObj.resolvedFullName()
om.MScriptUtil.setBool(ret, True)
mid = om.MSceneMessage.addCheckFileCallback(om.MSceneMessage.kBeforeImportCheck, catchFileImport)
@r4inm4ker
r4inm4ker / layerEditorWidget.py
Last active September 17, 2015 14:06
embed layer editor inside pyside / pyqt widget
from PySide import QtCore, QtGui
import shiboken
import maya.OpenMayaUI as omui
from maya.app.general.mayaMixin import MayaQWidgetDockableMixin
import pymel.core as pm
def wrapInstance(ptr, base=None):
"""
Utility to convert a pointer to a Qt class instance (PySide/PyQt compatible)
borrowed from http://nathanhorne.com/?p=485
@r4inm4ker
r4inm4ker / extractBlendShape.py
Last active May 13, 2024 09:27
extract blendshape target from blendshape node
import pymel.core as pm
import re
def parseVtxIdx(idxList):
"""convert vertex index list from strings to indexes.
idxList : [u'vtx[1]', u'vtx[3]', u'vtx[6]', u'vtx[8]', u'vtx[12:13]']
return : [1,3,6,8,12,13]
"""
parseIdxList = []
@r4inm4ker
r4inm4ker / selectEnclosedFaces.py
Last active May 11, 2016 19:11
Select enclosed faces by edge loop and one inner vertex in Maya
import maya.cmds as cmds
import re
import maya.OpenMaya as om
def getComponentId(component):
"""get id number from a component (i.e. pCube.vtx[12]) , and return as int (i.e. 12 ) ."""
tokens = re.split('[\[\]]',str(component))
try:
return int(tokens[1])