using BX;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
///
/// 常用方法
///
public class CommonMethods:SingletonManager
{
///
/// 手机震动
///
public void CellPhoneShank()
{
//BXSdk.Instance.Shake();
}
///
/// 删除所有子对象
///
/// 父节点
public void DeleteChildObjects(Transform node)
{
for (int i = 0; i < node.childCount; i++)
{
Object.Destroy(node.GetChild(i).gameObject);
}
}
///
/// 欧拉角转换Instector的rotation值
///
/// GameObject 的transform.up
/// GameObject 的transform.eulerAngle
/// 返回已经转换的值
public Vector3 EulerAngles2InspectorRotation(GameObject obj)
{
Vector3 resVector = obj.transform.eulerAngles;
if (Vector3.Dot(obj.transform.up, Vector3.up) >= 0f)
{
if (obj.transform.eulerAngles.x >= 0f && obj.transform.eulerAngles.x <= 90f)
{
resVector.x = obj.transform.eulerAngles.x;
}
if (obj.transform.eulerAngles.x >= 270f && obj.transform.eulerAngles.x <= 360f)
{
resVector.x = obj.transform.eulerAngles.x - 360f;
}
}
if (Vector3.Dot(obj.transform.up, Vector3.up) < 0f)
{
if (obj.transform.eulerAngles.x >= 0f && obj.transform.eulerAngles.x <= 90f)
{
resVector.x = 180 - obj.transform.eulerAngles.x;
}
if (obj.transform.eulerAngles.x >= 270f && obj.transform.eulerAngles.x <= 360f)
{
resVector.x = 180 - obj.transform.eulerAngles.x;
}
}
if (obj.transform.eulerAngles.y > 180)
{
resVector.y = obj.transform.eulerAngles.y - 360f;
}
if (obj.transform.eulerAngles.z > 180)
{
resVector.z = obj.transform.eulerAngles.z - 360f;
}
Debug.Log(" Inspector Rotation: " + " x=" + Mathf.RoundToInt(resVector.x * 1000) / 1000f + " , y=" + Mathf.RoundToInt(resVector.y * 1000) / 1000f + " , z=" + Mathf.RoundToInt(resVector.z * 1000) / 1000f);
return resVector;
}
}