using Microsoft.MixedReality.Toolkit.UI;
using UnityEngine;
using UnityEngine.XR.WSA;
//using UnityEngine.XR.WSA.Persistence;
public class CubeScirpt : MonoBehaviour
{
///
/// 被保存的锚点
///
public string ObjectAnchorStoreName;
///
/// 储存锚点的仓库
///
//WorldAnchorStore anchorStore;
// ///
/// 是否被移动
///
bool HasMove = false;
// Start is called before the first frame update
void Start()
{
//WorldAnchorStore的静态方法 获取WorldAnchorStore实例
//WorldAnchorStore.GetAsync(AnchorStoreReady);
}
//private void AnchorStoreReady(WorldAnchorStore store)
//{
// // anchorStore = store;
// // string[] ids = anchorStore.GetAllIds();
// //遍历之前保存的空间锚 载入指定id场景对象信息
// for (int i = 0; i < ids.Length; i++)
// {
// //if (ids[i] == ObjectAnchorStoreName)
// {
// // WorldAnchor worldAnchor = anchorStore.Load(ids[i], gameObject);
// break;
// }
// }
//}
// Update is called once per frame
void Update()
{
if (HasMove)
{
//gameObject.transform.position = Camera.main.transform.position + Camera.main.transform.forward * 2;
}
//Selecte();
}
//private void AttachingAnchor_OnTrackingChanged(WorldAnchor self, bool located)
//{
// Debug.Log("located:" + located);
// if (located)
// {
// bool saved = anchorStore.Save(ObjectAnchorStoreName, self);
// self.OnTrackingChanged -= AttachingAnchor_OnTrackingChanged;
// }
//}
//public void Selecte()
//{
// if (anchorStore == null)
// {
// return;
// }
// if (HasMove)
// {
// WorldAnchor attachingAnchor = gameObject.AddComponent();
// if (attachingAnchor.isLocated)
// {
// bool saved = anchorStore.Save(ObjectAnchorStoreName, attachingAnchor);
// }
// else
// {
// //有时空间锚能立刻被定位到,这时,给对象添加空间锚后,空间锚组件的isLocated属性值会被设为true这时 OnTrackingChanged
// //事件不会被触发,。因此,在添加空间锚组件后,推荐立刻使用初始的isLocated状态去调用 OnTrackingChanged 事件
// attachingAnchor.OnTrackingChanged += AttachingAnchor_OnTrackingChanged;
// }
// }
// else
// {
// //当全息对象已附加空间锚组件后,不能被移动,如果需要移动全息对象:
// //立刻销毁空间锚组件
// //移动全息对象
// //添加一个新的空间锚到全息对象上
// WorldAnchor anchor = gameObject.GetComponent();
// if (anchor != null)
// {
// DestroyImmediate(anchor);
// }
// string[] ids = anchorStore.GetAllIds();
// for (int i = 0; i < ids.Length; i++)
// {
// if (ids[i] == ObjectAnchorStoreName)
// {
// bool deleted = anchorStore.Delete(ids[i]);
// break;
// }
// }
// }
//}
//public void OnManipulationStarted(ManipulationEventData eventData)
//{
// Debug.Log("OnManipulationStarted");
// HasMove = true;
//}
//public void OnManipulationEnded(ManipulationEventData eventData)
//{
// Debug.Log("OnManipulationEnded");
// HasMove = false;
//}
}