using System.Collections; using System.Collections.Generic; using UnityEngine; /// 边界数据 public class DataBorder { /// 网格细分 public readonly float smooth = 0.01f; /// minX public readonly float minX = 0; /// maxX public readonly float maxX = 0; /// minY public readonly float minY = 0; /// maxY public readonly float maxY = 0; /// 多边形边缘点 public readonly Vector3[] points; /// 边界数据 public DataBorder(float minX, float maxX, float minY, float maxY, Vector3[] points) { this.minX = minX; this.maxX = maxX; this.minY = minY; this.maxY = maxY; this.points = points; } /// 边界宽 public float Wide => maxX - minX; /// 边界高 public float High => maxY - minY; /// 网格宽 public int GridWide => Mathf.FloorToInt(Wide / smooth) + 1; /// 网格高 public int GridHigh => Mathf.FloorToInt(High / smooth) + 1; /// 最小点 public Vector3 MinPoint => new Vector3(minX, minY, 0); /// 最大点 public Vector3 MaxPoint => new Vector3(maxX, maxY, 0); }