using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using System.Linq; public class CircleGenerator : ShapeGenerator { #region InspectorVariables [Header("Circle values")] [Range(0,100)] public Vector3 midPoint = Vector3.zero; [Range(0,100)] public float radius = 1f; [Header("Technical")] [Range(3,1000)] public int sideCount = 500; [Header("Parts")] public MeshFilter circleMesh; #endregion InspectorVariables #region Implementation protected override void GenerateShape() { Vector3[] circle = GetCirclePoints(radius, sideCount, Vector3.zero); if (circleMesh.sharedMesh != null) circleMesh.sharedMesh.Clear(); circleMesh.mesh = CreateMesh(CreatePlane(circle)); } #endregion Implementation }