/// <summary>
    /// 创建设备漂浮UI
    /// </summary>
    /// <param name="sisDev"></param>
    /// <param name="info"></param>
    /// <param name="isShow">是否显示</param>
    public GameObject CreateArchorFollowUI(GameObject archorDev, DepNode devDep, DevNode info)
    {
        GameObject targetTagObj = UGUIFollowTarget.CreateTitleTag(archorDev, Vector3.zero);

        if (UGUIFollowManage.Instance == null)
        {
            Debug.LogError("UGUIFollowManage.Instance==null");
            return(null);
        }
        Camera mainCamera = GetMainCamera();

        if (mainCamera == null)
        {
            return(null);
        }
        string devDepName = GetDepNodeId(devDep) + ArchorDevUIName;
        DisposeFollowTarget dispostTarget = targetTagObj.AddMissingComponent <DisposeFollowTarget>();

        dispostTarget.SetInfo(devDepName);

        //if (!DevDepNameList.Contains(devDepName)) DevDepNameList.Add(devDepName);
        GameObject          name         = UGUIFollowManage.Instance.CreateItem(ArchorDevUIPrefab, targetTagObj, devDepName, mainCamera, false, true);
        UGUIFollowTarget    followTarget = name.GetComponent <UGUIFollowTarget>();
        BaseStationFollowUI archorFollow = name.GetComponent <BaseStationFollowUI>();

        if (archorFollow != null)
        {
            archorFollow.InitInfo(info);
        }
        if (DevSubsystemManage.IsRoamState || !FunctionSwitchBarManage.Instance.ArchorInfoToggle.ison)
        {
            UGUIFollowManage.Instance.SetGroupUIbyName(devDepName, false);
        }
        return(name);
    }
    public GameObject CreateCameraUI(GameObject cameraDev, DepNode devDep, DevNode info)
    {
        GameObject targetTagObj = UGUIFollowTarget.CreateTitleTag(cameraDev, Vector3.zero);

        if (UGUIFollowManage.Instance == null)
        {
            Debug.LogError("UGUIFollowManage.Instance==null");
            return(null);
        }
        Camera mainCamera = GetMainCamera();

        if (mainCamera == null)
        {
            return(null);
        }
        string cameraDepName = GetDepNodeId(devDep) + CameraListName;
        DisposeFollowTarget dispostTarget = targetTagObj.AddMissingComponent <DisposeFollowTarget>();

        dispostTarget.SetInfo(cameraDepName);

        //if (!CameraDepNameList.Contains(cameraDepName)) CameraDepNameList.Add(cameraDepName);
        GameObject            name       = UGUIFollowManage.Instance.CreateItem(CameraUIPrefab, targetTagObj, cameraDepName, mainCamera, false, true);
        CameraMonitorFollowUI cameraInfo = name.GetComponent <CameraMonitorFollowUI>();

        if (cameraInfo != null)
        {
            cameraInfo.SetInfo(info);
        }
        if (DevSubsystemManage.IsRoamState || !FunctionSwitchBarManage.Instance.CameraToggle.ison || ObjectAddListManage.IsEditMode)
        {
            UGUIFollowManage.Instance.SetGroupUIbyName(cameraDepName, false);
        }
        return(name);
    }
    /// <summary>
    /// 创建建筑信息UI
    /// </summary>
    private void CreateFollowUI()
    {
        //if(FactoryDepManager.currentDep!=null||FactoryDepManager.currentDep as DepController)
        //{
        //    Debug.Log("FollowUI is exist:"+Name);
        //    return;
        //}
        GameObject         targetTagObj = UGUIFollowTarget.CreateTitleTag(gameObject, Vector3.zero);
        FollowTargetManage controller   = FollowTargetManage.Instance;

        if (controller != null && controller.BuildingNameUIPrefab != null)
        {
            if (UGUIFollowManage.Instance == null)
            {
                Debug.LogError("UGUIFollowManage.Instance==null");
                return;
            }
            Camera mainCamera = GetMainCamera();
            if (mainCamera == null)
            {
                return;
            }

            GameObject       name     = UGUIFollowManage.Instance.CreateItem(controller.BuildingNameUIPrefab, targetTagObj, controller.BuildingListName, null, false, true);
            BuildingFollowUI followUI = name.GetComponentInChildren <BuildingFollowUI>(false);

            DisposeFollowTarget dispostTarget = targetTagObj.AddMissingComponent <DisposeFollowTarget>();
            dispostTarget.SetInfo(controller.BuildingListName, name);

            if (followUI)
            {
                followUI.SetUIInfo(Name, Area, Height, FloorNum);
            }

            if (FunctionSwitchBarManage.Instance)
            {
                ToggleButton3 toggle = FunctionSwitchBarManage.Instance.BuildingToggle;
                if (!toggle.ison || FactoryDepManager.currentDep != FactoryDepManager.Instance)
                {
                    UGUIFollowManage.Instance.SetGroupUIbyName(controller.BuildingListName, false);
                }
            }
        }
    }
    /// <summary>
    /// 创建设备漂浮UI
    /// </summary>
    /// <param name="sisDev"></param>
    /// <param name="info"></param>
    /// <param name="isShow">是否显示</param>
    public GameObject CreateDevFollowUI(GameObject sisDev, DepNode devDep, DevNode info, Action <DeviceFollowUI> onCreateFinished = null)
    {
        GameObject targetTagObj = UGUIFollowTarget.CreateTitleTag(sisDev, Vector3.zero);

        if (UGUIFollowManage.Instance == null)
        {
            Debug.LogError("UGUIFollowManage.Instance==null");
            return(null);
        }
        Camera mainCamera = GetMainCamera();

        if (mainCamera == null)
        {
            return(null);
        }
        string devDepName = GetDepNodeId(devDep) + DevListName;
        DisposeFollowTarget dispostTarget = targetTagObj.AddMissingComponent <DisposeFollowTarget>();

        dispostTarget.SetInfo(devDepName);

        //if (!DevDepNameList.Contains(devDepName)) DevDepNameList.Add(devDepName);
        GameObject       name         = UGUIFollowManage.Instance.CreateItem(DevUIPrefab, targetTagObj, devDepName, mainCamera, false, true);
        UGUIFollowTarget followTarget = name.GetComponent <UGUIFollowTarget>();
        //followTarget.SetEnableDistace(true,60);
        DeviceFollowUI cameraInfo = name.GetComponent <DeviceFollowUI>();

        if (cameraInfo != null)
        {
            cameraInfo.SetInfo(info);
            if (onCreateFinished != null)
            {
                onCreateFinished(cameraInfo);
            }
        }
        //if (DevSubsystemManage.IsRoamState||!FunctionSwitchBarManage.Instance.DevInfoToggle.ison)
        //{
        //    UGUIFollowManage.Instance.SetGroupUIbyName(devDepName, false);
        //}
        return(name);
    }