PointCouldAutoMatchController.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using Blue;
  2. using UnityEngine;
  3. public class PointCouldAutoMatchController : AbstractController
  4. {
  5. public GameObject AR_Map;
  6. public GameObject obj_A;
  7. public Vector3 obj_AVec;
  8. public GameObject obj_origin;
  9. public Vector3 OriginVec;
  10. public BindableProperty<float> A_X ;
  11. public Vector2 pos1;
  12. public Vector2 pos2;
  13. public double angle;
  14. private void Awake()
  15. {
  16. A_X = new BindableProperty<float>(obj_A.transform.position.x);
  17. A_X.Subscribe(PointChange);
  18. }
  19. private void PointChange(float obj)
  20. {
  21. Auto();
  22. }
  23. private void Auto()
  24. {
  25. angle = this.GetUtility<IGetAngleByTwoPointUtility>().GetAngleByTwoPoint(pos1,pos2);
  26. AR_Map.transform.localEulerAngles = new Vector3(0.0f, (float)angle, 0.0f);
  27. AR_Map.transform.localEulerAngles = new Vector3(0.0f, 16.6f, 0.0f);
  28. AR_Map.transform.localPosition = OriginVec;
  29. }
  30. void Update()
  31. {
  32. OriginVec = obj_origin.transform.position;
  33. obj_AVec = obj_A.transform.position;
  34. A_X.Value = obj_A.transform.position.x;
  35. }
  36. }