public override void init() { Device d3dDevice = GuiController.Instance.D3dDevice; //Iniciar kinect tgcKinect = new TgcKinect(); tgcKinect.init(); tgcKinect.DebugSkeleton.init(); //Analizador de gestos gestureAnalizer = new GestureAnalizer(); sceneBounds = new TgcBoundingBox(new Vector3(-10, 0, -10), new Vector3(10, 20, 10)); gestureAnalizer.setSceneBounds(sceneBounds); //Crear mueble de fondo mueble = TgcBox.fromSize(new Vector3(20, 20, 5), Color.SandyBrown); mueble.Position = new Vector3(0, 10, -10); //Crear algunos cajones Vector3 muebleCenterPos = mueble.Position; cajones = new List <GestureLocker>(); cajones.Add(crearCajon(muebleCenterPos + new Vector3(-3, 0, 0.25f), new Vector3(5, 2, 5))); cajones.Add(crearCajon(muebleCenterPos + new Vector3(0, 3, 0.25f), new Vector3(5, 2, 5))); cajones.Add(crearCajon(muebleCenterPos + new Vector3(3, 0, 0.25f), new Vector3(5, 2, 5))); GuiController.Instance.FpsCamera.Enable = true; GuiController.Instance.FpsCamera.setCamera(new Vector3(-3.5508f, 16.5873f, 13.2958f), new Vector3(-3.535f, 16.3069f, 12.336f)); center = TgcBox.fromSize(new Vector3(0, 0, 0), new Vector3(1, 1, 1), Color.Blue); }
public override void init() { Device d3dDevice = GuiController.Instance.D3dDevice; //Iniciar kinect tgcKinect = new TgcKinect(); tgcKinect.init(); tgcKinect.DebugSkeleton.init(); //Analizador de gestos gestureAnalizer = new GestureAnalizer(); sceneBounds = new TgcBoundingBox(new Vector3(-50, -40, 230), new Vector3(80, 50, 290)); gestureAnalizer.setSceneBounds(sceneBounds); sceneCenter = sceneBounds.calculateBoxCenter(); sceneCenterBox = TgcBox.fromSize(sceneCenter, new Vector3(30, 30, 30), Color.Blue); //Crear mueble de fondo mueble = TgcBox.fromSize(new Vector3(200, 100, 50), Color.SandyBrown); mueble.Position = new Vector3(20, 20, 200); //Crear puerta door = new GestureDoorLeft(); door.Mesh = TgcBox.fromSize(new Vector3(30, 40, 4), Color.Green).toMesh("door"); door.Mesh.Position = mueble.Position + new Vector3(-30, 20, 25); GuiController.Instance.FpsCamera.Enable = true; GuiController.Instance.FpsCamera.setCamera(new Vector3(1.5467f, 54.7247f, 401.1074f), new Vector3(1.4672f, 54.4561f, 400.1474f)); }
public override void init() { Device d3dDevice = GuiController.Instance.D3dDevice; //Loader de kinect tgcKinect = new TgcKinect(); tgcKinect.init(); tgcKinect.DebugSkeleton.init(); //Loader de focus FocusParser.TEXTURE_FOLDER = GuiController.Instance.ExamplesMediaDir + "Focus\\texturas\\"; FocusParser.MESH_FOLDER = GuiController.Instance.ExamplesMediaDir + "Focus\\texturas\\"; FocusParser loader = new FocusParser(); string fileScene = GuiController.Instance.ExamplesMediaDir + "Focus\\escena1.dat"; loader.FromFile(fileScene); _meshes = loader.Escene; _conjuntos = loader._focusSets; // Bounding box de la escena // Calculo el bounding box de la escena float x0 = 10000; float y0 = 10000; float z0 = 10000; float x1 = -10000; float y1 = -10000; float z1 = -10000; foreach (TgcMesh m in _meshes) { TgcBoundingBox box = m.BoundingBox; if (box.PMin.X < x0) { x0 = box.PMin.X; } if (box.PMin.Y < y0) { y0 = box.PMin.Y; } if (box.PMin.Z < z0) { z0 = box.PMin.Z; } if (box.PMax.X > x1) { x1 = box.PMax.X; } if (box.PMax.Y > y1) { y1 = box.PMax.Y; } if (box.PMax.Z > z1) { z1 = box.PMax.Z; } } bounds = new TgcBoundingBox(new Vector3(x0, y0, z0), new Vector3(x1, y1, z1)); Vector3 c = bounds.calculateBoxCenter(); c.Y = 0; center = TgcBox.fromSize(c, new Vector3(100, 100, 100), Color.Blue); //Escalas y centro de la escena para kinect tgcKinect.PositionScale = 1000; tgcKinect.sceneCenter = c; tgcKinect.skeletonOffsetY = 0.75f; //Analizador de gestos gestureAnalizer = new GestureAnalizer(); gestureAnalizer.setSceneBounds(bounds); //Camara GuiController.Instance.FpsCamera.Enable = true; GuiController.Instance.FpsCamera.MovementSpeed *= 10; GuiController.Instance.FpsCamera.JumpSpeed *= 10; GuiController.Instance.FpsCamera.setCamera(new Vector3(2000f, 1600f, -4000f), new Vector3(2000f, 500f, 0)); //GuiController.Instance.FpsCamera.setCamera(c, c + new Vector3(0, 0, 1)); //Separar cajones del resto del FocusSet cajones = new List <CajonFocus>(); foreach (FocusSet conjunto in _conjuntos) { if (conjunto.Tipo == FocusSet.TRASLACION) { CajonFocus cajon = new CajonFocus(); cajon.Conjunto = conjunto; cajon.init(); cajones.Add(cajon); } } }