Esempio n. 1
0
        private void DrawCricleRadar(VertexHelper vh)
        {
            float   insideRadius = 0, outsideRadius = 0;
            float   block        = radarInfo.radius / radarInfo.splitNumber;
            int     indicatorNum = radarInfo.indicatorList.Count;
            Vector3 p            = new Vector3(radarCenterX, radarCenterY);
            Vector3 p1;
            float   angle = 2 * Mathf.PI / indicatorNum;

            for (int i = 0; i < radarInfo.splitNumber; i++)
            {
                Color color = radarInfo.backgroundColorList[i % radarInfo.backgroundColorList.Count];
                outsideRadius = insideRadius + block;
                ChartUtils.DrawDoughnut(vh, p, insideRadius, outsideRadius, 0, 360, color);
                ChartUtils.DrawCicleNotFill(vh, p, outsideRadius, radarInfo.lineTickness,
                                            radarInfo.lineColor);
                insideRadius = outsideRadius;
            }
            for (int j = 0; j <= indicatorNum; j++)
            {
                float currAngle = j * angle;
                p1 = new Vector3(p.x + outsideRadius * Mathf.Sin(currAngle),
                                 p.y + outsideRadius * Mathf.Cos(currAngle));
                ChartUtils.DrawLine(vh, p, p1, radarInfo.lineTickness / 2, radarInfo.lineColor);
            }
        }