public override void DirectZoomInCall(PitchGrabObject pitchGrabObject, Action finalAction) { if (!zoomingIn && !zoomingOut && actualPitchGrabObject == null && !VisualizationManager.Instance.tiiesVisualization.movingPlane) { StartCoroutine(ZoomingIn(pitchGrabObject, finalAction)); } }
public void CreateClone(PitchGrabObject image, List <PitchGrabObject> list) { PitchGrabObject dio = Instantiate(actualPitchGrabObject); dio.transform.parent = actualPitchGrabObject.transform.parent; dio.transform.DestroyChildrenImmediate(); dio.transform.localPosition = _actualPitchObjectOriginalPosition; dio.transform.localScale = new Vector3(0.03f, 0.03f, 0.001f); dio.idName = image.idName; dio.gameObject.SetActive(false); dio.isClone = true; bool contenedor = false; foreach (var digitalObject in list) { if (digitalObject.idName == image.idName) { contenedor = true; } } if (!contenedor) { list.Add(dio); } }
public void destroyClone(PitchGrabObject imagen, List <PitchGrabObject> lista) { Debug.Log(imagen); PitchGrabObject obj = null; List <PitchGrabObject> listaAux = lista; int i = 0; foreach (PitchGrabObject photo in listaAux) { Debug.Log(photo); if (photo.idName == imagen.idName) { obj = photo; break; } i++; } lista.RemoveAt(i); if (obj != null) { Destroy(obj.gameObject); } RevisarLista(lista); }
public override IEnumerator ZoomingIn(PitchGrabObject pitchGrabObject, Action finalAction) { zoomingIn = true; SetZoomInInitialStatus(pitchGrabObject); MOTIONSManager.Instance.AddLines("Zooming In", pitchGrabObject.idName); var counter = 0; while (true) { pitchGrabObject.transform.position = Vector3.MoveTowards(pitchGrabObject.transform.position, Camera.main.transform.position, 0.01f); if (counter >= closeRange) { break; } counter++; yield return(new WaitForFixedUpdate()); } if (finalAction != null) { finalAction(); } zoomingIn = false; }
public void Awake() { zoomingIn = false; zoomingOut = false; actualPitchGrabObject = null; posibleActualPitchGrabObject = null; }
public override IEnumerator ZoomingIn(PitchGrabObject pitchGrabObject, Action finalAction) { zoomingIn = true; SetZoomInInitialStatus(pitchGrabObject); MOTIONSManager.Instance.AddLines("Zooming In", pitchGrabObject.idName); var counter = 0; while (true) { //pitchGrabObject.transform.position = new Vector3(0.0005f, 3.6575f, 0.0179f); pitchGrabObject.transform.position = new Vector3(InterfaceManager.Instance.leapMotionManager.leapMotionRig.transform.position.x, InterfaceManager.Instance.leapMotionManager.leapMotionRig.transform.position.y, InterfaceManager.Instance.leapMotionManager.leapMotionRig.transform.position.z + 0.020f); if (counter >= closeRange) { break; } counter++; yield return(new WaitForFixedUpdate()); } if (finalAction != null) { finalAction(); } zoomingIn = false; }
private IEnumerator ZoomingIn(PitchGrabObject pitchGrabObject, Action finalAction) { zoomingIn = true; SetZoomInInitialStatus(pitchGrabObject); dioManager.csvCreator.AddLines("ZoomingIn", pitchGrabObject.idName); var counter = 0; while (true) { pitchGrabObject.transform.position = Vector3.MoveTowards(pitchGrabObject.transform.position, Vector3.zero, 0.01f); if (counter >= dioManager.closeRange) { break; } counter++; yield return(new WaitForFixedUpdate()); } if (finalAction != null) { finalAction(); } zoomingIn = false; }
public void DirectZoomInCall(PitchGrabObject pitchGrabObject, Action finalAction) { if (!zoomingIn && !zoomingOut && actualPitchGrabObject == null && !dioManager.movingSphere) { StartCoroutine(ZoomingIn(pitchGrabObject, finalAction)); } }
public void Update() { if (!_dioManager.mouseInput) { _forwardVector = transform.TransformDirection(Vector3.forward); _ray = new Ray(transform.position, _forwardVector); } else { _ray = Camera.main.ScreenPointToRay(Input.mousePosition); } if (Physics.Raycast(_ray, out _raycastHit, maxDistance, ignoredLayerMask)) { var posiblePitcheGrabObject = _raycastHit.transform.gameObject.GetComponent <PitchGrabObject>(); if (posiblePitcheGrabObject == null) { return; } if (posiblePitcheGrabObject.dioController.visualizationController.id != _dioManager.actualVisualization) { if (_actualPitchGrabObject != null) { _actualPitchGrabObject.OnUnDetect(); } return; } if (_actualPitchGrabObject == null) { _actualPitchGrabObject = posiblePitcheGrabObject; } else { if (_actualPitchGrabObject.idName != posiblePitcheGrabObject.idName) { _actualPitchGrabObject.OnUnDetect(); _actualPitchGrabObject = posiblePitcheGrabObject; } } DebugLog(posiblePitcheGrabObject); _actualPitchGrabObject.OnDetected(); } else { if (_actualPitchGrabObject == null) { _dioManager.buttonPanel.DisableZoomIn(); return; } _actualPitchGrabObject.OnUnDetect(); } }
public override void SetZoomInInitialStatus(PitchGrabObject pitchGrabObject) { actualPitchGrabObject = pitchGrabObject; actualPitchGrabObject.dioController.inVisualizationPosition = false; _actualPitchObjectOriginalPosition = pitchGrabObject.transform.position; _actualPitchObjectOriginalRotation = pitchGrabObject.transform.rotation; _actualPitchObjectOriginalScale = pitchGrabObject.transform.localScale; }
public override void DirectZoomInCall(PitchGrabObject pitchGrabObject, Action finalAction) { //DELETE THIS emulate limitation in action manager if (!zoomingIn && !zoomingOut && actualPitchGrabObject == null) { StartCoroutine(ZoomingIn(pitchGrabObject, finalAction)); } }
public void DeseleccionarFromCategoria(List <PitchGrabObject> lista, int categoriaActual, Button boton, Color color, List <DIOController> imageList) { //listaImagenes = dioManager.sphereControllers.Count > dioManager.planeControllers.Count ? dioManager.sphereControllers.SelectMany(sc => sc.dioControllerList).ToList() : dioManager.planeControllers.SelectMany(sc => sc.dioControllerList).ToList(); listaImagenes = imageList; if (actualPitchGrabObject == null) { if (posibleActualPitchGrabObject == null) { return; } actualPitchGrabObject = posibleActualPitchGrabObject; } PitchGrabObject imagen = null; foreach (var photo in listaImagenes) { if (photo.pitchGrabObject.idName == actualPitchGrabObject.idName) { imagen = photo.pitchGrabObject; break; } } if ((int)Categorias.Categoria1 == categoriaActual) { imagen.isSelectedCat1 = !imagen.isSelectedCat1; } else if ((int)Categorias.Categoria2 == categoriaActual) { imagen.isSelectedCat2 = !imagen.isSelectedCat2; } else if ((int)Categorias.Categoria3 == categoriaActual) { imagen.isSelectedCat3 = !imagen.isSelectedCat3; } else if ((int)Categorias.Categoria4 == categoriaActual) { imagen.isSelectedCat4 = !imagen.isSelectedCat4; } else { Debug.Log("Error al eliminar desde una categoria, categoria ingresada desde ButtonPanelBgiies inválida"); } var action = "Deselect " + VisualizationManager.Instance.planeVisualization.panelBgiies.nombreCategoria; MOTIONSManager.Instance.AddLines(action, imagen.idName); zoomActive = false; destroyClone(imagen, lista); actualPitchGrabObject = imagen; deleteMarcador(color, boton); actualPitchGrabObject = null; eliminarFromCategoria = true; MostrarCategoria(lista, 0); }
public void LookPointerEnter(PitchGrabObject pitchGrabObject) { _initialAlpha = pitchGrabObject.dioController.visualizationController.alpha; var objectColor = pitchGrabObject.objectMeshRender.material.color; objectColor.a = 1.0f; pitchGrabObject.objectMeshRender.material.color = objectColor; posibleActualPitchGrabObject = pitchGrabObject; }
private void DebugLog(PitchGrabObject posiblePitcheGrabObject) { if (!debugOutput) { return; } print("Tag: " + _raycastHit.collider.tag); print(string.Format("ID Name: {0}, Sphere ID: {1}", posiblePitcheGrabObject.idName, posiblePitcheGrabObject.dioController.visualizationController.id)); print("Actual Sphere: " + posiblePitcheGrabObject.dioController.DioManager.actualVisualization); }
public void LookPointerExit(PitchGrabObject pitchGrabObject) { if (actualPitchGrabObject == null) { var objectColor = pitchGrabObject.objectMeshRender.material.color; objectColor.a = _initialAlpha; pitchGrabObject.objectMeshRender.material.color = objectColor; } posibleActualPitchGrabObject = null; }
//This creates the ray public void CastRay(Ray ray, int currentVisualizationId) { //Debug.DrawLine(_ray.origin, _ray.direction * maxDistance, Color.red); //Debug.Log(ray.direction.ToString() + " " + currentVisualizationId.ToString()); if (Physics.Raycast(ray, out _raycastHit, maxDistance, ignoredLayerMask)) { //Debug.Log ("Entre al if del raycast del mouse"); var posiblePitcheGrabObject = _raycastHit.transform.gameObject.GetComponent <PitchGrabObject>(); if (posiblePitcheGrabObject == null) { return; } if (posiblePitcheGrabObject.dioController.visualizationController.id != currentVisualizationId) { if (_actualPitchGrabObject != null) { _actualPitchGrabObject.OnUnDetect(); //funcion para ignorar las imagenes que se encuentren en otras vistas } return; } if (_actualPitchGrabObject == null) { _actualPitchGrabObject = posiblePitcheGrabObject; //en una primera instancia actualPitch es null, la primera vez que toca una foto valida toma el valor de posiblePitch RegisterRay(_actualPitchGrabObject); } else { if (_actualPitchGrabObject.idName != posiblePitcheGrabObject.idName) //si actualPitch no coincide con posiblePitch se actualiza actualPitch { _actualPitchGrabObject.OnUnDetect(); // actualPitch se hace null _actualPitchGrabObject = posiblePitcheGrabObject; //se le asigna el valor de posiblePitch RegisterRay(_actualPitchGrabObject); } } _actualPitchGrabObject.OnDetected(); //activa el MARCAR de buttonPanel y activa LookPointerStay que aplica ZoomIn(iluminar foto) } else { if (_actualPitchGrabObject == null) { //DELETE THIS tie button panel //_dioManager.buttonPanel.DisableZoomIn(); return; } _actualPitchGrabObject.OnUnDetect(); //si actualPitch no era nulo se hace null } }
public void LookPointerStay(PitchGrabObject pitchGrabObject) { posibleActualPitchGrabObject = pitchGrabObject; if ((ZoomInKeyboardInput() || ZoomInJoystickInput()) && actualPitchGrabObject == null && !dioManager.movingSphere) { if (!zoomingIn && !zoomingOut) { StartCoroutine(ZoomingIn(pitchGrabObject, null)); } } }
public void LookPointerEnter(PitchGrabObject pitchGrabObject) { //Debug.Log ("El pitchGrabOjbect es:" + pitchGrabObject); //Debug.Log("El valor del initial alpha antes es:" +_initialAlpha); _initialAlpha = pitchGrabObject.dioController.visualizationController.alpha; //Debug.Log("El valor del initial alpha despues es:" +_initialAlpha); var objectColor = pitchGrabObject.objectMeshRender.material.color; //Debug.Log ("El valor de objectColor es:" + objectColor); objectColor.a = 1.0f; //Debug.Log ("Ahora el valor de objecto colo es:" + objectColor); pitchGrabObject.objectMeshRender.material.color = objectColor; posibleActualPitchGrabObject = pitchGrabObject; }
public void LookPointerExit(PitchGrabObject pitchGrabObject) { if (actualPitchGrabObject == null) { var objectColor = pitchGrabObject.objectMeshRender.material.color; //DELETE THIS untie from bgiies mode and tie to panel bgiies /* * if (dioManager.bgiiesMode && dioManager.panelBgiies.mostrarCategoria) * objectColor.a = 0.66f; * else*/ objectColor.a = _initialAlpha; pitchGrabObject.objectMeshRender.material.color = objectColor; } posibleActualPitchGrabObject = null; }
public void createClone(PitchGrabObject imagen, List <PitchGrabObject> lista) { PitchGrabObject obj = Instantiate(actualPitchGrabObject); obj.transform.parent = actualPitchGrabObject.transform.parent; obj.transform.DestroyChildrenImmediate(); obj.idName = imagen.idName; obj.transform.localPosition = _actualPitchObjectOriginalPosition; obj.transform.localScale = _actualPitchObjectOriginalScale; obj.transform.localScale = Vector3.MoveTowards(actualPitchGrabObject.transform.localScale, _actualPitchObjectOriginalScale, _scaleSteps); if (obj.transform.localScale.EqualOrMinorCompareVector(_actualPitchObjectOriginalScale, 0.001f)) { obj.transform.localScale = _actualPitchObjectOriginalScale; } obj.gameObject.SetActive(false); bool contenedor = false; foreach (var photo in lista) { if (photo.idName == imagen.idName) { contenedor = true; } } if (!contenedor) { lista.Add(obj); } RevisarLista(lista); }
public override void LookPointerStay(PitchGrabObject pitchGrabObject) { posibleActualPitchGrabObject = pitchGrabObject; /* Code inside the lookPointer loop [in LookPointerBGIIES], triggered by the OnDetect function in pitchGrabObject, which is triggered by the lookPointerRaycasting if a new object is detected. * * if ((Input.GetMouseButtonDown(0) || dioManager.kinectGestures.kinectGestureZoomIn()) && actualPitchGrabObject == null && !dioManager.movingPlane) * { * if (!zoomingIn && !zoomingOut) * { * if (!zoomActive) * { * StartCoroutine(ZoomingIn(pitchGrabObject, null)); * dioManager.panelBgiies.interactableButtons(posibleActualPitchGrabObject); * zoomActive = true; * } * } * } */ }
public void DestroyClone(PitchGrabObject image, List <PitchGrabObject> list) { PitchGrabObject obj = null; List <PitchGrabObject> listaAux = list; int i = 0; foreach (PitchGrabObject photo in listaAux) { if (photo.idName == image.idName) { obj = photo; break; } i++; } list.RemoveAt(i); if (obj != null) { Destroy(obj.gameObject); } }
public void AcceptObject() { print("accept call"); bool unPitchedAccept = false; if (actualPitchGrabObject == null) { if (posibleActualPitchGrabObject == null) { return; } unPitchedAccept = true; actualPitchGrabObject = posibleActualPitchGrabObject; } var pitchMaterial = actualPitchGrabObject.GetComponent <MeshRenderer>(); actualPitchGrabObject.isSelected = !actualPitchGrabObject.isSelected; pitchMaterial.material.color = actualPitchGrabObject.isSelected ? Color.green : Color.white; if (actualPitchGrabObject.isSelected) { dioManager.buttonPanel.NegativeAcceptButton(); } else { dioManager.buttonPanel.PositiveAcceptButton(); } var action = actualPitchGrabObject.isSelected ? "Select" : "Deselect"; dioManager.csvCreator.AddLines(action, actualPitchGrabObject.idName); if (unPitchedAccept) { actualPitchGrabObject = null; } }
public override void LookPointerStay(PitchGrabObject pitchGrabObject) { posibleActualPitchGrabObject = pitchGrabObject; }
public abstract void LookPointerStay(PitchGrabObject pitchGrabObject);
public abstract void DirectZoomInCall(PitchGrabObject pitchGrabObject, Action finalAction);
public abstract void SetZoomInInitialStatus(PitchGrabObject pitchGrabObject);
public void RegisterRay(PitchGrabObject foto) { var action = "Move ray vector"; MOTIONSManager.Instance.AddLines(action, foto.idName); }
public abstract IEnumerator ZoomingIn(PitchGrabObject pitchGrabObject, Action finalAction);
public void ResetActualPitchGrabObject() { _actualPitchGrabObject = null; }