Files
HDRobotics/Assets/Scripts/View/TCPView.cs

53 lines
1.6 KiB
C#
Raw Normal View History

2025-10-24 14:36:33 +09:00
using TMPro;
using UnityEngine;
using System;
public class TCPView : MonoBehaviour
{
public event Action OnTCPupdateRequested;
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><><C4B3>)
private float lastX, lastY, lastZ, lastRx, lastRy, lastRz;
private bool isFirstUpdate = true;
2025-10-24 14:36:33 +09:00
// --- TCP <20><>ǥ<EFBFBD><C7A5> ---
[SerializeField] private TextMeshProUGUI x;
[SerializeField] private TextMeshProUGUI Y;
[SerializeField] private TextMeshProUGUI Z;
[SerializeField] private TextMeshProUGUI Rx;
[SerializeField] private TextMeshProUGUI Ry;
[SerializeField] private TextMeshProUGUI Rz;
2025-11-14 13:50:31 +09:00
[SerializeField] public GameObject tcpPanel;
2025-10-24 14:36:33 +09:00
void Update()
{
OnTCPupdateRequested?.Invoke();
}
public void SetCoordinates(RobotData data)
{
if (data == null) return;
if (!isFirstUpdate &&
Mathf.Approximately((float)data.x, lastX) &&
Mathf.Approximately((float)data.y, lastY) &&
Mathf.Approximately((float)data.z, lastZ) &&
Mathf.Approximately((float)data.rx, lastRx) &&
Mathf.Approximately((float)data.ry, lastRy) &&
Mathf.Approximately((float)data.rz, lastRz))
{
return;
}
2025-10-24 14:36:33 +09:00
x.text = data.x.ToString("F2");
Y.text = data.y.ToString("F2");
Z.text = data.z.ToString("F2");
Rx.text = data.rx.ToString("F2");
Ry.text = data.ry.ToString("F2");
Rz.text = data.rz.ToString("F2");
// ij<><C4B3> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
lastX = (float)data.x; lastY = (float)data.y; lastZ = (float)data.z;
lastRx = (float)data.rx; lastRy = (float)data.ry; lastRz = (float)data.rz;
isFirstUpdate = false;
2025-10-24 14:36:33 +09:00
}
}