2013-03-22 17 views
8

Które z poniższych bibliotek (https://stackoverflow.com/questions/492893/graph-drawing-c-library) można wykorzystać do oceny współrzędnych węzłów? Chodzi mi o to, że chcę narysować wykres i manipulować nim, klikając go, aby dodać kilka węzłów lub usunąć, a następnie ocenić współrzędne przy użyciu niewielkiej biblioteki.Węzły graficzne koordynują ocenę

Wszystko, czego potrzebuję, to algorytm, który może uzyskać w pliku dot i we wcielonym układzie (http://en.wikipedia.org/wiki/DOT_language) zgodność z węzłami grafów i punktami 2D.

języki prefferable: C++, C#, Java

+1

Czy WPF rozwiązaniem dla Ciebie? Mam kompletną przykładową aplikację, która pozwala narysować węzły i łączniki na powierzchni 2D (ze zdefiniowanymi współrzędnymi X i Y), która obsługuje również przeciąganie i upuszczanie oraz wiele interesujących funkcji wizualnych. –

+0

Oczywiście WPF będzie idealny, to moje ulubione podejście GUI! Czy to projekt open source? Właśnie źle zrozumiałem "zdefiniowane współrzędne X i Y". Co masz na myśli? –

Odpowiedz

30

zrobiłem kompletny WPF MVVM próbkę "węzły Editor" Wspieranie przeciągnij i upuść oraz wiele interesujących cech wizualnych. Wygląda to tak:

enter image description here

Full Source Code on GitHub

+0

Dziękujemy za próbkę. Początkowo szukałem "biblioteki układów", nie masz układów w ogóle, jak rozumiem. Myślę, że byłoby wspaniale je wdrożyć w twojej próbce, bo podobało mi się to wizualnie. Czy trudno jest usunąć dyskretną siatkę? Chcę swobodnie manipulować węzłami. –

+0

@SergeyLapin 1 - Co rozumiesz przez "bibliotekę układów"? 2 - Siatka w rzeczywistości nie przyciąga węzłów, to tylko wizualizacja. Rzeczywiste przyciąganie występuje w właściwościach 'Node.X' i' Node.Y'. Spójrz na to. Jeśli chcesz usunąć siatkę, po prostu usuń 'Tło' używając' VisualBrush'. –

+0

Mam na myśli bibliotekę, która implementuje "Metody Layout" (możesz Ctrl + F tutaj http://en.wikipedia.org/wiki/Graph_drawing), ale ocena skończonych współrzędnych powinna być enkapsulowana. Tam można go używać niezależnie od implementacji konkretnego wykresu. –