Example #1
0
        private void InitElements(Scene scene)
        {
            var objectRoot = new SharpGL.SceneGraph.Primitives.Folder()
            {
                Name = "Root"
            };

            scene.SceneContainer.AddChild(objectRoot);
            // This implements free rotation(with translation and rotation).
            var camera = GetCamera();

            objectArcBallEffect = new ArcBallEffect(
                camera.Position.X, camera.Position.Y, camera.Position.Z,
                camera.Target.X, camera.Target.Y, camera.Target.Z,
                camera.UpVector.X, camera.UpVector.Y, camera.UpVector.Z);
            objectRoot.AddEffect(objectArcBallEffect);
            var axisRoot = new SharpGL.SceneGraph.Primitives.Folder()
            {
                Name = "axis root"
            };

            scene.SceneContainer.AddChild(axisRoot);

            axisArcBallEffect = new Figures.ArcBallEffect(
                camera.Position.X, camera.Position.Y, camera.Position.Z,
                camera.Target.X, camera.Target.Y, camera.Target.Z,
                camera.UpVector.X, camera.UpVector.Y, camera.UpVector.Z);
            axisRoot.AddEffect(axisArcBallEffect);



            InitAxis(objectRoot);
            InitAxis(axisRoot);
            InitFrameElement(1, 1, 1, objectRoot);
            InitGridElement(-5, -5, 0, 10, 10, objectRoot);
        }