예제 #1
0
        private void UpdateBackgroundInstances(int requiredCount)
        {
            int currentCount = lineBackgrounds.Count;

            // Add missing backgrounds
            int missingCount = requiredCount - currentCount;

            while (missingCount > 0)
            {
                LineChartBackground chartBackground = CreateLineBackground();
                chartBackground.transform.SetSiblingIndex(0);
                lineBackgrounds.Add(chartBackground);
                missingCount--;
            }

            // Remove redundant backgrounds
            int redundantCount = currentCount - requiredCount;

            while (redundantCount > 0)
            {
                LineChartBackground target = lineBackgrounds[lineBackgrounds.Count - 1];
                DestroyImmediate(target.gameObject);
                lineBackgrounds.Remove(target);
                redundantCount--;
            }
        }
예제 #2
0
        private LineChartBackground CreateLineBackground()
        {
            LineChartBackground lineBackground = viewCreator.InstantiateLineBackground("LineBackground",
                                                                                       chartDataContainerView.transform, PivotValue.BOTTOM_LEFT);

            lineBackground.GetComponent <RectTransform> ().sizeDelta = GetSize();
            return(lineBackground);
        }
예제 #3
0
        public LineChartBackground InstantiateLineBackground(string name, Transform parent, Vector2 pivot)
        {
            LineChartBackground renderer = CreateBaseGameObject(name, parent, pivot)
                                           .AddComponent <LineChartBackground> ();

            renderer.raycastTarget = false;

            return(renderer);
        }
예제 #4
0
        private void DrawLineBackground(LineChartBackground lineBackground, LineDataSet dataSet, int dataSetIndex)
        {
            lineBackground.color      = dataSet.FillColor;
            lineBackground.Texture    = dataSet.FillTexture;
            lineBackground.AxisBounds = GetAxisBounds();

            lineBackground.Points = dataSet.UseBezier ?
                                    CalculateBezierSegmentsPoints(bezierPoints[dataSetIndex]) :
                                    entriesPoints[dataSetIndex];
        }