Hi,
This is a short tool i wrote that may come in handy modeling (adding an inbetween vertex) or getting a pivot centered between multiple things.
Here's a before and after:
Hope you find it helpful.
cheers,
Nate
## # naHalfWay.py # #by # #Nathaniel O. Anozie (nathananozie dot blogspot dot com) #ogbonnawork at gmail dot com # #Modify at own risk ## #11-30-2014 initial release import maya.cmds as cmds """ #Put file in script path > select things want to make a halfway in between import naHalfWay reload(naHalfWay) naHalfWay.naHalfWay() """ def naHalfWay(): """ make half way locator in between 2 or more selected components or transforms (doesnt support selecting both components and transforms at same time) This is useful for things like equal spacing in rigging, centering a pivot for cloth simulation, adding new inbetween vertex in modeling etc """ result = [] selOrig = cmds.ls(selection = True, dag = True,type = 'transform') sel = [] sel = cmds.filterExpand( sm=(28,31,46) )#more than 2 vertices required #if cant find component it assumes ok to use as transform if sel is None and len(selOrig) >= 2: sel = selOrig if sel is not None and len(sel) >= 2: locatorsMade = [] #does making things we use for figuring out math for arg in sel: pos1 = cmds.xform(arg, q=True, ws=True, translation = True ) locator1 = cmds.spaceLocator() cmds.xform(locator1, ws=True, translation = [pos1[0],pos1[1],pos1[2]]) locatorsMade.append(locator1) result = cmds.spaceLocator() #default naming #print locatorsMade #does the spacing for driver in locatorsMade: cmds.pointConstraint(driver,result, mo=False, weight = 1) #cleanup for driver in locatorsMade: cmds.delete(driver) else: print 'Requires 2 or more selected components or transforms' return result