00001 #include "GLNormalRenderer.h" 00002 #include "DefaultGLDFS.h" 00003 #include "GLNormalRendererGLCoreVisitor.h" 00004 #include "GLNormalRendererGLGeometry3DVisitor.h" 00005 #include "GLNormalRendererGLGroupingVisitor.h" 00006 #include "X3DGLNode.h" 00007 00008 #include <iostream> 00009 00010 using namespace std; 00011 using namespace X3DTK; 00012 00013 GLNormalRenderer::GLNormalRenderer() 00014 { 00015 dfs = new DefaultGLDFS(); 00016 00017 dfs->setComponentVisitor(new GLNormalRendererGLCoreVisitor()); 00018 dfs->setComponentVisitor(new GLNormalRendererGLGeometry3DVisitor()); 00019 dfs->setComponentVisitor(new GLNormalRendererGLGroupingVisitor()); 00020 } 00021 00022 GLNormalRenderer::~GLNormalRenderer() 00023 { 00024 delete dfs; 00025 } 00026 00027 void GLNormalRenderer::setComponentVisitor(X3DComponentVisitor *component) 00028 { 00029 dfs->setComponentVisitor(component); 00030 } 00031 00032 void GLNormalRenderer::render(X3DGLNode *N) const 00033 { 00034 dfs->traverse(N); 00035 }