Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2013, 02:45   #1
WizarD.89
Форумчанин
 
Аватар для WizarD.89
 
Регистрация: 02.12.2010
Сообщений: 160
Радость Быстрая реализация графа.

Здравствуйте! Меня интересует скорость прорисовки.


Я делаю графическое представления графа.

Все основано на интерфейсах. Их всего 4

Главный
Код:
  public interface IGraph 
    {
       ICollectionPeak Peaks { get; }
       ICollectionRib Ribs { get; }
       void Clear();
       int Height { get; set; }
       int Width { get; set; }
       bool Visible { get; set; }
    }
} 

  public delegate void RibDelegate(StrRib sender);
  public  interface ICollectionRib : IList<StrRib>
    {
      event RibDelegate AddEvent;
      event RibDelegate DeletedEvent;
      void Add(int from, int to);
      void Remove (int from, int to);
      List<StrRib> Items { get; }
    }
 public delegate void PeakDelegate(int sender);
   public interface ICollectionPeak
    {
       event PeakDelegate DeletedEvent;
       event PeakDelegate AddEvent;
       IPeak AddPeak(int number,int x,int y);
       void DeletePeak(int number);
       IPeak GetPeak(int number);
       void Clear();
    }

  public interface IPeak
    {

      Color Bolder { get; set; }
      Point LocationMid {get;set;}
      Color BackColor { get; set; }
      int Number { get; }
      bool Visible { get; set; }
      int WIDTH_PEAK { get; }
      int HEIGHT_PEAK { get; }
    }

Реализация
IPeak реализует Label
ICollectionPeak реализует Control.ControlCollection
ICollectionRib реализует List<StrRib>
IGraph реализует Panel


Получается вершины(Peak) это у меня элемент управления label.
И по этому удаление и добавление элементов проходит не быстро.

Как можно ускорить отображения графа? нужно бы граф был отдельным объектом. Может как по другому можно попробовать реализовать интерфейсы.
WizarD.89 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создание графа по матрице и поиск кратчайшего пути из одного графа в другой lexflax Общие вопросы C/C++ 1 06.09.2012 07:32
по заданной матрице смежности простого графа построить каркас этого графа с использованием поиска вширь d1m2o3n4 Помощь студентам 0 22.06.2011 22:43
Реализация о обход графа [Delphi] Proger_1 Помощь студентам 0 10.01.2011 21:40
Быстрая сортировка Serious Общие вопросы Delphi 2 02.11.2010 13:38
быстрая сортировка настолько быстрая Serg12 Помощь студентам 8 28.03.2010 21:31