Hi,
I try to develope a custom transform node with the python API.

import sys
import maya.OpenMaya as OpenMaya
import maya.OpenMayaMPx as OpenMayaMPx


nodeTypeName = "gShot"
nodeTypeId = OpenMaya.MTypeId(0x87081)
TransformMatrixID = OpenMaya.MTypeId(0x87082)


class shotNode(OpenMayaMPx.MPxTransform):
        def __init__(self):
                OpenMayaMPx.MPxTransform.__init__(self)

def nodeCreator():
        return OpenMayaMPx.asMPxPtr(shotNode())

def nodeInitializer():
        nAttr = OpenMaya.MFnNumericAttribute()
        tAttr = OpenMaya.MFnTypedAttribute()
        bAttr = OpenMaya.MFnNumericAttribute()
        eAttr = OpenMaya.MFnEnumAttribute()

        # version attribute
        shotNode.version = nAttr.create("version", "vs",
OpenMaya.MFnNumericData.kInt, 1)
        nAttr.setWritable(True)
        nAttr.setStorable(True)
        nAttr.setReadable(True)
        nAttr.setKeyable(False)

        shotNode.addAttribute(shotNode.version)

        return OpenMaya.MStatus.kSuccess

def initializePlugin(obj):
        plugin = OpenMayaMPx.MFnPlugin(obj,"Onirik","0.1")
        try:
                plugin.registerTransform(nodeTypeName, nodeTypeId, nodeCreator,
nodeInitializer, OpenMayaMPx.MPxTransformationMatrix,
TransformMatrixID)
        except:
                sys.stderr.write( "Failed to register node: %s" % nodeTypeName)

def uninitializePlugin(obj):
        plugin = OpenMayaMPx.MFnPlugin(obj)
        try:
                plugin.deregisterNode(nodeTypeId)
        except:
                sys.stderr.write( "Failed to deregister node: %s" % 
nodeTypeName).

How can i lock tx, ty, tz attribute from the node with python api.

Thanks

-- 
view archives: http://groups.google.com/group/python_inside_maya
change your subscription settings: 
http://groups.google.com/group/python_inside_maya/subscribe

Reply via email to