filled out Scene::processTransformBlock()
git-svn-id: svn://anubis/fart/trunk@170 7f9b0f55-74a9-4bce-be96-3c2cd072584d
This commit is contained in:
parent
84249c8231
commit
0ea6e96e0a
@ -257,6 +257,26 @@ void Scene::processOptions(refptr<Node> node)
|
|||||||
|
|
||||||
void Scene::processTransformBlock(refptr<Node> node)
|
void Scene::processTransformBlock(refptr<Node> node)
|
||||||
{
|
{
|
||||||
|
if ( typeid(*node) == typeid(TranslateBlockNode) )
|
||||||
|
{
|
||||||
|
m_transforms.push(m_transforms.top());
|
||||||
|
m_transforms.top().translate(node->getVector());
|
||||||
|
}
|
||||||
|
else if ( typeid(*node) == typeid(RotateBlockNode) )
|
||||||
|
{
|
||||||
|
m_transforms.push(m_transforms.top());
|
||||||
|
m_transforms.top().rotate(node->getNumber(),
|
||||||
|
node->getVector());
|
||||||
|
}
|
||||||
|
else if ( typeid(*node) == typeid(ScaleBlockNode) )
|
||||||
|
{
|
||||||
|
m_transforms.push(m_transforms.top());
|
||||||
|
m_transforms.top().scale(node->getVector());
|
||||||
|
}
|
||||||
|
|
||||||
|
processChildren(node);
|
||||||
|
|
||||||
|
m_transforms.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
refptr<Material> Scene::processMaterial(refptr<Node> node)
|
refptr<Material> Scene::processMaterial(refptr<Node> node)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user