filled out Scene::processBool() to handle all boolean shapes; added Node::isShape() virtual function to determine whether a node object represents a shape node

git-svn-id: svn://anubis/fart/trunk@167 7f9b0f55-74a9-4bce-be96-3c2cd072584d
This commit is contained in:
Josh Holtrop committed 2009-02-28 21:22:30 +00:00
1 parent 5a83786103
commit 32fcafc687
3 files changed
+114 -14

No files matched your search

+15 -4
View File
@@ -20,6 +20,7 @@ class Node
{
return refptr<Vector>(NULL);
}
virtual bool isShape() { return false; }
protected:
std::vector< refptr<Node> > m_children;
@@ -66,6 +67,8 @@ class AmbientNode : public VectorNode
class BoxNode : public Node
{
public:
bool isShape() { return true; }
};
class CameraNode : public Node
@@ -80,6 +83,8 @@ class ColorNode : public VectorNode
class CylNode : public Node
{
public:
bool isShape() { return true; }
};
class DiffuseNode : public VectorNode
@@ -96,6 +101,8 @@ class HeightNode : public IntegerNode
class IntersectNode : public Node
{
public:
bool isShape() { return true; }
};
class ItemsNode : public Node
@@ -126,6 +133,8 @@ class OptionsNode : public Node
class PlaneNode : public Node
{
public:
bool isShape() { return true; }
};
class PlanePositionNode : public Node
@@ -199,10 +208,6 @@ class SceneNode : public Node
{
};
class ShapeNode : public Node
{
};
class ShininessNode : public NumberNode
{
public:
@@ -223,10 +228,14 @@ class SpecularNode : public VectorNode
class SphereNode : public Node
{
public:
bool isShape() { return true; }
};
class SubtractNode : public Node
{
public:
bool isShape() { return true; }
};
class TranslateNode : public VectorNode
@@ -243,6 +252,8 @@ class TranslateBlockNode : public TranslateNode
class UnionNode : public Node
{
public:
bool isShape() { return true; }
};
class UpNode : public Node