// // The purpose of this method is to compare object attributes and inherit them if appropriate. // e.g. lets say we assign a color to the top node of a hierarchy. Then all child nodes will be // called and this method is used. // mtlu_ObjectAttributes *mtlu_MayaObject::getObjectAttributes(ObjectAttributes *parentAttributes) { mtlu_ObjectAttributes *myAttributes = new mtlu_ObjectAttributes((mtlu_ObjectAttributes *)parentAttributes); if( this->hasInstancerConnection) { myAttributes->hasInstancerConnection = true; } if( this->isGeo()) { } if( this->isTransform()) { MFnDagNode objNode(this->mobject); myAttributes->objectMatrix = objNode.transformationMatrix() * myAttributes->objectMatrix; } this->attributes = myAttributes; return myAttributes; }
// // The purpose of this method is to compare object attributes and inherit them if appropriate. // e.g. lets say we assign a color to the top node of a hierarchy. Then all child nodes will be // called and this method is used. // std::shared_ptr<ObjectAttributes> mtlu_MayaObject::getObjectAttributes(std::shared_ptr<ObjectAttributes> parentAttributes) { std::shared_ptr<mtlu_ObjectAttributes> myAttributes = std::shared_ptr<mtlu_ObjectAttributes>(new mtlu_ObjectAttributes(parentAttributes)); if( this->hasInstancerConnection) { myAttributes->hasInstancerConnection = true; } if( this->isGeo()) { } if( this->isTransform()) { MFnDagNode objNode(this->mobject); myAttributes->objectMatrix = objNode.transformationMatrix() * myAttributes->objectMatrix; } this->attributes = myAttributes; return myAttributes; }