|12 December 2012|
london, United Kingdom
MPxContext to MPxManipulatorNode values
I have an MPxManipulatorNode attached to a MPxContext,
in my context doPress() function I get some value
and I want to be able to pass that value to the MPxManipulatorNode
so I can draw something with it, but I can't find a way to pass that value to the manip.
I've tried to add an attribute to the MPxManipulatorNode:
nAttr = OpenMaya.MFnNumericAttribute()
manip.someValue = nAttr.create( "someValue", "sv", OpenMaya.MFnNumericData.kFloat)
and inside my context I set it:
depNode = OpenMaya.MFnDependencyNode(manipObject)
plug = depNode.findPlug('someValue',0)
but when I try to retrieve this value inside my manipulatorNode draw function:
fnThisNode = OpenMaya.MFnDependencyNode(self.thisMObject())
value = OpenMaya.MPlug(self.thisMObject(), fnThisNode.attribute("someValue")).asFloat()
I get this error:
# Warning: Node type 'TdependNode' is abstract. Cannot create. #
any ideas why?
or a different way to do that??
|01 January 2013|
The way I've done this in the past is to just use your standard class accessor/mutator interface. Create a mutator function like 'void setRadius( float val )' or whatever your data represents and invoke it after you've created your manipulator in your context. For example:
Hope this helps.
Last edited by Keilun : 02 February 2013 at 10:18 PM.
|02 February 2013|
Thread automatically closed
Note that as CGTalk Members, you agree to the terms and conditions of using this website.
|Thread Closed share thread|