X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.g3d%2Fsrc%2Forg%2Fsimantics%2Fproconf%2Fg3d%2Fscenegraph%2FRootGraphicsNode.java;fp=org.simantics.g3d%2Fsrc%2Forg%2Fsimantics%2Fproconf%2Fg3d%2Fscenegraph%2FRootGraphicsNode.java;h=404d2ef77b809c111d650819b99a3eb8494cacb8;hb=10f144a2bb2d7bec98b812b83acecb333fd098ea;hp=0000000000000000000000000000000000000000;hpb=3055b543aa5afc0cca4bb3b341704e7c5103fa6a;p=simantics%2F3d.git diff --git a/org.simantics.g3d/src/org/simantics/proconf/g3d/scenegraph/RootGraphicsNode.java b/org.simantics.g3d/src/org/simantics/proconf/g3d/scenegraph/RootGraphicsNode.java new file mode 100644 index 00000000..404d2ef7 --- /dev/null +++ b/org.simantics.g3d/src/org/simantics/proconf/g3d/scenegraph/RootGraphicsNode.java @@ -0,0 +1,77 @@ +/******************************************************************************* + * Copyright (c) 2007- VTT Technical Research Centre of Finland. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * VTT Technical Research Centre of Finland - initial API and implementation + *******************************************************************************/ +package org.simantics.proconf.g3d.scenegraph; + +import java.util.ArrayList; +import java.util.Collection; + +import org.simantics.db.Graph; +import org.simantics.db.Resource; +import org.simantics.proconf.g3d.base.JmeRenderingComponent; +import org.simantics.proconf.g3d.stubs.G3DNode; + +import com.jme.scene.Node; + +public class RootGraphicsNode implements IGraphicsNode { + + JmeRenderingComponent component; + Resource rootNode; + private ArrayList children = new ArrayList(); + + + public RootGraphicsNode(JmeRenderingComponent component, Resource rootNode) { + this.component = component; + this.rootNode = rootNode; + } + + public void addChild(IGraphicsNode node) { + children.add(node); + } + + public void removeChild(IGraphicsNode node) { + children.remove(node); + } + + public Collection getChildren() { + return children; + } + + public void dispose() { + //throw new RuntimeException("Root cannot be disposed"); + } + + public Node getGroup() { + return component.getShadowRoot(); + } + + public IGraphicsNode getParent() { + return null; + } + + public Resource getResource() { + return rootNode; + } + + public void updateTransform(Graph graph) { + + } + + public String toString() { + return this.getClass().toString(); + } + + public G3DNode getG3DNode(Graph graph) { + return new G3DNode(graph, rootNode); + } + + + +} \ No newline at end of file