@Override public void depthFirstTraversal(SceneGraphVisitor visitor, DFSMode mode) { visitor.visit(this); }
/** * Visit each scene graph element ordered by BFS * @param visitor */ public void breadthFirstTraversal(SceneGraphVisitor visitor) { Queue<Spatial> queue = new LinkedList<Spatial>(); queue.add(this); while (!queue.isEmpty()) { Spatial s = queue.poll(); visitor.visit(s); s.breadthFirstTraversal(visitor, queue); } }
@Override public void depthFirstTraversal(SceneGraphVisitor visitor, DFSMode mode) { if (mode == DFSMode.POST_ORDER) { for (Spatial child : children.getArray()) { child.depthFirstTraversal(visitor); } visitor.visit(this); } else { //pre order visitor.visit(this); for (Spatial child : children.getArray()) { child.depthFirstTraversal(visitor); } } } @Override
@Override public void depthFirstTraversal(SceneGraphVisitor visitor) { visitor.visit(this); }
@Override public void depthFirstTraversal(SceneGraphVisitor visitor, DFSMode mode) { visitor.visit(this); }
/** * Visit each scene graph element ordered by BFS * @param visitor */ public void breadthFirstTraversal(SceneGraphVisitor visitor) { Queue<Spatial> queue = new LinkedList<Spatial>(); queue.add(this); while (!queue.isEmpty()) { Spatial s = queue.poll(); visitor.visit(s); s.breadthFirstTraversal(visitor, queue); } }
/** * Visit each scene graph element ordered by BFS * @param visitor */ public void breadthFirstTraversal(SceneGraphVisitor visitor) { Queue<Spatial> queue = new LinkedList<Spatial>(); queue.add(this); while (!queue.isEmpty()) { Spatial s = queue.poll(); visitor.visit(s); s.breadthFirstTraversal(visitor, queue); } }
@Override public void depthFirstTraversal(SceneGraphVisitor visitor) { for (Spatial child : children.getArray()) { child.depthFirstTraversal(visitor); } visitor.visit(this); }
@Override public void depthFirstTraversal(SceneGraphVisitor visitor, DFSMode mode) { if (mode == DFSMode.POST_ORDER) { for (Spatial child : children.getArray()) { child.depthFirstTraversal(visitor); } visitor.visit(this); } else { //pre order visitor.visit(this); for (Spatial child : children.getArray()) { child.depthFirstTraversal(visitor); } } } @Override