Я являюсь частью команды, которая создала инструмент для просмотра и взаимодействия с очень большими и сильно взаимосвязанными графами на языке C #/WPF. Просмотр и взаимодействие с графиком осуществляется с помощью пользовательского элемента управления, который принимает набор DrawingVisuals и отображает их на холсте. Узлы на графике могут иметь индивидуальную форму, созданную с помощью нашего редактора. Текущий элемент управления работает очень хорошо и хорошо сочетается с нашей программой, но есть обоснованные опасения по поводу производительности при рассмотрении гораздо больших графов (20 000+ узлов и большого количества соединений ).
После небольшого исследования выяснилось, что есть два подхода::
Принимая во внимание эти два совершенно разных подхода, какой маршрут лучше выбрать, учитывая:
Какой метод вы бы использовали и почему?
РЕДАКТИРОВАТЬ:
Похоже, аналогичный вопрос был задан, но на него не ответили.