#include "GL_NormalRenderer.h" #include "GL_NormalRendererGeometry3DVisitor.h" #include "GL_NormalRendererGroupingVisitor.h" namespace X3DTK { namespace GL { NormalRenderer::NormalRenderer() { // The algorithm for drawing the normals is based upon a DFS graph traversal // of the GL scene graph. setGraphTraversal(new DFSGraphTraversal()); // Setting the component visitor to the tree traversal algorithm. setComponentVisitor(new NormalRendererGeometry3DVisitor()); setComponentVisitor(new NormalRendererGroupingVisitor()); } void NormalRenderer::setNormalLength(float value) { Singleton::getInstance()->setNormalLength(value); } void NormalRenderer::render(SFNode N) const { glDisable(GL_COLOR_MATERIAL); traverse(N); } } }