Пример #1
0
                private NormalizedPoint Add(PointF point)
                {
                    NormalizedPoint result;
                    VisualPoint     visualPoint;

                    for (var i = _normalizedPoints.Count - 1; i >= 0; i--)
                    {
                        if (IsVisuallyIdentical(_normalizedPoints[i].Point, point))
                        {
                            visualPoint = _visualPoints[_normalizedPoints[i].VisualIndex];
                            visualPoint.Weight++;
                            result = new NormalizedPoint {
                                Point = point, VisualIndex = visualPoint.VisualIndex
                            };
                            _normalizedPoints.Add(result);
                            return(result);
                        }
                    }

                    visualPoint = new VisualPoint {
                        IsLocked = false, VisualIndex = _visualPoints.Count, Weight = 1
                    };
                    _visualPoints.Add(visualPoint);

                    result = new NormalizedPoint {
                        Point = point, VisualIndex = visualPoint.VisualIndex
                    };
                    _normalizedPoints.Add(result);
                    return(result);
                }
Пример #2
0
        /// <summary>
        /// Обноаление визуализации точки (зон инсоляции и описания точки)
        /// </summary>
        public void UpdateVisual()
        {
            // Подготовка визуальных объектов
            // Визуализация зон инсоляции точки
            if (VisualIllums == null)
            {
                VisualIllums = new VisualPointIllums(this);
            }
            // Зоны освещ.
            VisualIllums.VisualIsOn = IsVisualIllumsOn;

            // Визуализация описания точки
            if (VisualPoint == null)
            {
                VisualPoint = new VisualPoint(this);
            }

            Info = GetInfo();
        }
Пример #3
0
                private NormalizedPoint Add(PointF point)
                {
                    NormalizedPoint result;
                    VisualPoint visualPoint;

                    for (var i = _normalizedPoints.Count - 1; i >= 0; i--)
                    {
                        if (IsVisuallyIdentical(_normalizedPoints[i].Point, point))
                        {
                            visualPoint = _visualPoints[_normalizedPoints[i].VisualIndex];
                            visualPoint.Weight++;
                            result = new NormalizedPoint() { Point = point, VisualIndex = visualPoint.VisualIndex };
                            _normalizedPoints.Add(result);
                            return result;
                        }
                    }

                    visualPoint = new VisualPoint() { IsLocked = false, VisualIndex = _visualPoints.Count, Weight = 1 };
                    _visualPoints.Add(visualPoint);

                    result = new NormalizedPoint() { Point = point, VisualIndex = visualPoint.VisualIndex };
                    _normalizedPoints.Add(result);
                    return result;
                }
Пример #4
0
 private void OnNumberChanged()
 {
     VisualPoint?.VisualUpdate();
 }