コード例 #1
0
ファイル: wyNode.cpp プロジェクト: nbolabs/WiEngine
wyRect wyNode::getBoundingBoxRelativeToParent() {
    wyRect r = {
        0, 0, m_width, m_height
    };
    updateNodeToParentTransform();
    return wyaTransformRect(m_transformMatrix, r);
}
コード例 #2
0
ファイル: wyNode.cpp プロジェクト: nbolabs/WiEngine
void wyNode::updateParentToNodeTransform() {
    if(m_inverseDirty) {
        updateNodeToParentTransform();
        m_inverseMatrix = m_transformMatrix;
        wyaInverse(&m_inverseMatrix);
        m_inverseDirty = false;
    }
}
コード例 #3
0
ファイル: wySpriteEx.cpp プロジェクト: JMQCode/WiEngine
wyAffineTransform wySpriteEx::getNodeToBatchNodeTransform() {
    updateNodeToParentTransform();
    wyAffineTransform t = m_transformMatrix;

    for(wyNode* p = m_parent; p != m_batchNode; p = p->getParent()) {
        wyAffineTransform tp = p->getTransformMatrix();
        wyaConcat(&t, &tp);
    }

    return t;
}
コード例 #4
0
ファイル: wyNode.cpp プロジェクト: nbolabs/WiEngine
wyAffineTransform wyNode::getNodeToWorldTransform() {
    updateNodeToParentTransform();
    wyAffineTransform t = m_transformMatrix;

    for(wyNode* p = m_parent; p != NULL; p = p->m_parent) {
        p->updateNodeToParentTransform();
        wyaConact(&t, &(p->m_transformMatrix));
    }

    return t;
}
コード例 #5
0
ファイル: wyNode.cpp プロジェクト: nbolabs/WiEngine
wyPoint wyNode::nodeToParentSpace(wyPoint p) {
    updateNodeToParentTransform();
    return wyaTransformPoint(m_transformMatrix, p);
}
コード例 #6
0
ファイル: wyNode.cpp プロジェクト: nbolabs/WiEngine
wyAffineTransform wyNode::getTransformMatrix() {
    updateNodeToParentTransform();
    return m_transformMatrix;
}