ShanxiKnowledgeBase/SXElectricalInspection/Assets/GuYuan/Interactive/ClampAmmetersInteractive.cs

97 lines
3.5 KiB
C#

using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
using DG.Tweening;
public class ClampAmmetersInteractive : MonoBehaviour
{
public bool isInteractive;
public GameObject g1;
public string selChildName;
public float linearMeasure;//默认的大小
public List<float> floats;
public string Fuan;
public string unit;
private void Start()
{
if (!transform.GetComponent<MeshCollider>())
{
transform.AddComponent<MeshCollider>();
}
//Fuan = ClampAmmetersManager.Instance.Init(selChildName);
}
[ContextMenu("运行")]
public void Init()
{
//g1 = transform.GetChild(0).GetComponent<Transform>().gameObject;
//selChildName = g1.name;
Fuan = ClampAmmetersManager.Instance.Init(selChildName);
}
private void OnMouseDown()
{
//Debug.Log("ok");
if (GameManager.Instance.temp == null) return;
if (GameManager.Instance.temp.transform.name.Equals("钳形电流表(Clone)"))
{
if (g1)
{
GameManager.Instance.DianFuIm.gameObject.SetActive(true);
GameManager.Instance.temp.transform.parent = g1.transform;
GameManager.Instance.temp.transform.DOLocalRotate(new Vector3(47.52f, 0, 53.88f), 0.25f);
GameManager.Instance.temp.transform.DOScale(new Vector3(50, 50, 50), 0.25f);
GameManager.Instance.temp.transform.DOLocalMove(new Vector3(1.42f, -6.02f, 8.35f), 0.25f);
float abs = Mathf.Abs(GameManager.Instance.QianStopValve.currentValue);
if (abs >= 1 && abs <= 3)
{
float dianyliu = float.Parse(Fuan);
GameManager.Instance.DianFuTex.text = dianyliu + " " + unit;
}
else
{
GameManager.Instance.DianFuTex.text = "-" + unit;
}
for (int i = 0; i < floats.Count; i++)
{
if (floats[(int)(GameManager.Instance.QianStopValve.Sum / 10)] > linearMeasure)
{
GetComponent<Fraction>().CompletedorNot = true;
}
}
}
}
if (GameManager.Instance.temp.transform.name.Equals("钳形电流表_大(Clone)"))
{
if (g1)
{
GameManager.Instance.DianFuIm.gameObject.SetActive(true);
GameManager.Instance.temp.transform.parent = g1.transform;
GameManager.Instance.temp.transform.DOLocalRotate(new Vector3(207.21f, -257.72f, -135.6f), 0.25f);
GameManager.Instance.temp.transform.DOScale(new Vector3(15, 15, 15), 0.25f);
GameManager.Instance.temp.transform.DOLocalMove(new Vector3(-0.2f, -2.8f, 1.02f), 0.25f);
float dianyliu = float.Parse(Fuan);
GameManager.Instance.DianFuTex.text = dianyliu + " " + unit;
for (int i = 0; i < floats.Count; i++)
{
if (floats[(int)(GameManager.Instance.QianStopValve.Sum / 10)] > linearMeasure)
{
GetComponent<Fraction>().CompletedorNot = true;
}
}
}
}
}
private void Update()
{
if (Input.GetKeyDown("t"))
{
Debug.Log(GameManager.Instance.DianFuTex.text + "==== GameManager.Instance.DianFuTex.text");
}
}
}