#include <string.h>
#include <maya/MIOStream.h>
#include <math.h>
#include <maya/MPxDeformerNode.h>
#include <maya/MItGeometry.h>
#include <maya/MPxLocatorNode.h>
#include <maya/MFnNumericAttribute.h>
#include <maya/MFnMatrixAttribute.h>
#include <maya/MFnMatrixData.h>
#include <maya/MFnPlugin.h>
#include <maya/MFnDependencyNode.h>
#include <maya/MTypeId.h>
#include <maya/MPlug.h>
#include <maya/MDataBlock.h>
#include <maya/MDataHandle.h>
#include <maya/MArrayDataHandle.h>
#include <maya/MPoint.h>
#include <maya/MVector.h>
#include <maya/MMatrix.h>
#include <maya/MDagModifier.h>
{
public:
offset();
virtual ~offset();
static void* creator();
unsigned int multiIndex);
public:
private:
};
offset::offset() {}
offset::~offset() {}
void* offset::creator()
{
return new offset();
}
{
offsetMatrix=mAttr.
create(
"locateMatrix",
"lm");
addAttribute( offsetMatrix);
attributeAffects( offset::offsetMatrix, offset::outputGeom );
}
unsigned int multiIndex)
{
pt *= omatinv;
float weight = weightValue(block,multiIndex,iter.
index());
pt.
y = pt.
y + env*weight;
pt *= omat;
}
return returnStatus;
}
offset::accessoryAttribute() const
{
return offset::offsetMatrix;
}
{
&result);
MObject attrMat = fnLoc.attribute(attrName);
result = cmd.
connect(objLoc,attrMat,this->thisMObject(),offset::offsetMatrix);
}
return result;
}
{
MFnPlugin plugin( obj, PLUGIN_COMPANY,
"3.0",
"Any");
result = plugin.registerNode( "offset", offset::id, offset::creator,
return result;
}
{
result = plugin.deregisterNode( offset::id );
return result;
}