コード例 #1
0
        public TimeDiagram CreateDiagram <T>(IGraphicsFactory <T, IGraph> factory, out InteractiveDiagram interactiveDiagram) where T : InteractiveDiagram
        {
            List <string> labels = new List <string>(Parameters.ChannelCount + Parameters.QueueCapacity + 3);

            labels.Add("Заявки");

            for (int i = 0; i < Parameters.ChannelCount; i++)
            {
                labels.Add($"Канал { Parameters.ChannelCount - i }");
            }

            for (int i = 0; i < Parameters.QueueCapacity; i++)
            {
                labels.Add($"Место { Parameters.QueueCapacity - i }");
            }

            labels.Add("Обслужено");
            labels.Add("Отказ");

            T idg = factory.CreateEmptyDiagram(labels);

            TimeDiagram diagram = new TimeDiagram(Parameters.ChannelCount, Parameters.QueueCapacity, idg);

            FillDiagram(diagram);

            interactiveDiagram = idg;

            return(diagram);
        }