void TransformHelp::transformFromParent(BaseData &node, const BaseData &parentNode)
{
    nodeToMatrix(node, m_tHelpMatrix1);
    nodeToMatrix(parentNode, m_tHelpMatrix2);

    m_tHelpMatrix2 = AffineTransformInvert(m_tHelpMatrix2);
    m_tHelpMatrix1 = AffineTransformConcat(m_tHelpMatrix1, m_tHelpMatrix2);

    matrixToNode(m_tHelpMatrix1, node);
}
void TransformHelp::transformFromParentWithoutScale(BaseData &node, const BaseData &parentNode)
{

    helpParentNode.copy(&parentNode);
    helpParentNode.m_fScaleX = 1;
    helpParentNode.m_fScaleY = 1;

    nodeToMatrix(node, m_tHelpMatrix1);
    nodeToMatrix(helpParentNode, m_tHelpMatrix2);

    m_tHelpMatrix2 = AffineTransformInvert(m_tHelpMatrix2);
    m_tHelpMatrix1 = AffineTransformConcat(m_tHelpMatrix1, m_tHelpMatrix2);

    matrixToNode(m_tHelpMatrix1, node);
}
Beispiel #3
0
AffineTransform Node::getWorldToNodeAffineTransform() const
{
    return AffineTransformInvert(this->getNodeToWorldAffineTransform());
}