using System.Collections; using System.Collections.Generic; using UnityEngine; using DG.Tweening; public class CameraTween : MonoBehaviour { public static CameraTween instance; public List CameraPoses; // Start is called before the first frame update void Start() { instance = this; } private void ResetCmaera(int index) { if (!MoveCameraByMouse.instance.enabled) { MoveCameraByMouse.instance.enabled = true; ChangeCamera(CameraPoses[index]); } else { MoveCamera(CameraPoses[index]); } } public void MoveCameraToPos(string name) { if (name.Equals("主视角")) { ResetCmaera(0); MoveCameraByMouse.instance.target = GameObject.Find("Env_immobilization").transform; } if (name.Equals("空压机房")) { ResetCmaera(31); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("空压机房/fangzi001"); } if (name.Equals("回转窑空压机房")) { ResetCmaera(32); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("回转窑空压机房/fangzi"); } if (name.Equals("1号生产线")) { ResetCmaera(1); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("1号生产线/1号线回转窑"); } if (name.Equals("2号生产线")) { ResetCmaera(2); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("2号生产线/2号线回转窑"); } if (name.Equals("3号生产线")) { ResetCmaera(3); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("3号生产线/3号线回转窑"); } if (name.Equals("破碎系统")) { ResetCmaera(4); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("破碎机"); } if (name.Equals("生料系统")) { ResetCmaera(5); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("2号生产线/2号线生料磨"); } if (name.Equals("水泥磨系统")) { ResetCmaera(6); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("水泥磨"); } if (name.Equals("回转窑系统")) { ResetCmaera(7); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("2号生产线/2号线回转窑"); } if (name.Equals("煤磨系统")) { ResetCmaera(8); MoveCameraByMouse.instance.target = GameObject.Find("设备点位").transform.Find("2号生产线/2号线煤磨"); } if (name.Equals("总降电力室")) { ChangeCamera(CameraPoses[9]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("矿山电力室")) { ChangeCamera(CameraPoses[10]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("辅料处理配电室")) { ChangeCamera(CameraPoses[11]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("原材料电力室")) { ChangeCamera(CameraPoses[12]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("原料配料配电室")) { ChangeCamera(CameraPoses[13]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("一线生料磨电力室")) { ChangeCamera(CameraPoses[14]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("二线生料磨电力室")) { ChangeCamera(CameraPoses[15]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("三号线生料配电室")) { ChangeCamera(CameraPoses[16]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("一线窑头电力室1")) { ChangeCamera(CameraPoses[17]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("一线窑头电力室2")) { ChangeCamera(CameraPoses[18]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("窑尾电力室")) { ChangeCamera(CameraPoses[19]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("二线窑头电力室1")) { ChangeCamera(CameraPoses[20]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("二线窑头电力室2")) { ChangeCamera(CameraPoses[21]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("三号线窑头配电室")) { ChangeCamera(CameraPoses[22]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("三号线窑尾配电室")) { ChangeCamera(CameraPoses[23]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("一线原煤电力室")) { ChangeCamera(CameraPoses[24]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("余热发电电力室")) { ChangeCamera(CameraPoses[25]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("三号线熟料配电室")) { ChangeCamera(CameraPoses[26]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("水泥磨电力室")) { ChangeCamera(CameraPoses[27]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("万吨仓电力室")) { ChangeCamera(CameraPoses[28]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("石灰石破碎配电室")) { ChangeCamera(CameraPoses[29]); MoveCameraByMouse.instance.enabled = false; } if (name.Equals("石灰石输送配电室1、2")) { ChangeCamera(CameraPoses[30]); MoveCameraByMouse.instance.enabled = false; } } public void ChangeCamera(GameObject go) { Camera.main.transform.position = go.transform.position; Camera.main.transform.eulerAngles = go.transform.eulerAngles; } public void MoveCamera(GameObject go) { MoveCameraByMouse.instance.ison = false; Camera.main.transform.DOMove(go.transform.position, 2f); Camera.main.transform.DORotate(go.transform.eulerAngles, 2f); } // Update is called once per frame public int index = -1; void Update() { if (Input.GetKeyDown(KeyCode.UpArrow)) { if (index > 0) { index--; Camera.main.transform.parent = CameraPoses[index].transform; Camera.main.transform.localEulerAngles = Vector3.zero; Camera.main.transform.localPosition = Vector3.zero; } } if (Input.GetKeyDown(KeyCode.DownArrow)) { if (index < 31) { index++; Camera.main.transform.parent = CameraPoses[index].transform; Camera.main.transform.localEulerAngles = Vector3.zero; Camera.main.transform.localPosition = Vector3.zero; } } } }