Пример #1
0
        public void ActivatePage(int number)
        {
            if (_points.Count == 0)
            {
                return;
            }
            if (number < 0 || number > Mathf.CeilToInt(_points.Count / _maxRowsOnPage))
            {
                return;
            }

            Clear();

            KVID6Table currentTable = (KVID6Table)GetCurrentTable();

            var pagePoints = _points.Skip(_maxRowsOnPage * number).Take(_maxRowsOnPage);

            foreach (var point in pagePoints)
            {
                var panel = (KVID6Table.KVID6Panel)currentTable.AddEmpty(Cell_Clicked);
                panel.Code.StringValue = point.Key;
                panel.X.FloatValue     = point.Value.x;
                panel.Y.FloatValue     = point.Value.y;
                panel.Z.FloatValue     = point.Value.z;
            }

            _activePageIndex            = number;
            _currentPageNumberText.text = _activePageIndex.ToString();
        }
Пример #2
0
        public void DeepClear()
        {
            _points.Clear();
            _currentRowIndex = 0;
            KVID6Table currentTable = (KVID6Table)GetCurrentTable();

            currentTable.ClearNextCode();
        }
Пример #3
0
        private void SaveCurrentPageChanges()
        {
            KVID6Table currentTable = (KVID6Table)GetCurrentTable();

            for (int i = 0; i < currentTable.PanelCount; ++i)
            {
                int index = _activePageIndex * _maxRowsOnPage + i;
                var panel = currentTable.Panels[i];
                //_points[index] = (panel.Code.StringValue, new Vector3(panel.X.FloatValue, panel.Y.FloatValue, panel.Z.FloatValue));
                _points[panel.Code.StringValue] = new Vector3(panel.X.FloatValue, panel.Y.FloatValue, panel.Z.FloatValue);
            }
        }