Labels on the arrows

Apr 3, 2013 at 7:42 PM
Edited Apr 3, 2013 at 7:43 PM
please help, I am Russian and bad know English.
Can I add the labels on the arrows?
If yes, please give me a simple example implementation
Apr 17, 2013 at 9:40 AM
Если вопрос еще акутален, что именно требуется сделать?
Apr 17, 2013 at 1:42 PM
Можешь дать пример рисования графа с помощью этой библиотеки? полагаю рисование на форме али на чем-нибудь другом.
Apr 18, 2013 at 9:52 PM
Пример можно скачать, в любом случае придется разбираться. Например для начала нужно создать свои типы, например:
    public class TestGraphLayout : GraphLayout<GVertex, IEdge<GVertex>, IBidirectionalGraph<GVertex, IEdge<GVertex>>> { }

    public class TestGraph : BidirectionalGraph<GVertex, IEdge<GVertex>>
    {
        public TestGraph() { }

        public TestGraph(bool allowParallelEdges)
            : base(allowParallelEdges) { }

        public TestGraph(bool allowParallelEdges, int vertexCapacity)
            : base(allowParallelEdges, vertexCapacity) { }
    }
Где, TestGraphLayout - собсно поле для отрисовки графа, TestGraph - сам граф с данными, GVertex - свой класс для данных о вертексе, GEdge - свой класс данных о связи.

Класс GVertex может быть абсолютно любой. GEdge класс например такой, с возможностью задания весового значения:
    public class GEdge: WeightedEdge<GVertex>
    {
        public GEdge(GVertex source, GVertex target, double weight = 0)
            : base(source, target, weight)
        {
        }
    }
Ну и все, дальше создаешь сначала GVertex экземпляры, потом связи GEdge (ибо для них нужны готовые вертексы). В TestGraph пихаешь это все, там методы есть AddVertex, AddEdge вроде. Потом TestGraphLayout. Graph присваиваешь заполненный экземпляр TestGraph. Вроде все...


Да, я сейчас пишу либу свою на основе Graph#, думаю скоро выложу и надеюсь получше выйдет, а то этот проект давно заброшен...
Apr 19, 2013 at 3:23 PM
Большое спасибо. Попробую.