Реализация сетевой (графической) визуализации в iPhone SDK - PullRequest
1 голос
/ 02 февраля 2012

Я запускаю новый проект в iPhone SDK, чтобы представлять и манипулировать графиками (в смысле сетей, а не гистограмм / круговых диаграмм / * диаграмм).

Я хочу иметь возможность интерактивно добавлять / перемещать / удалять узлы и дуги между ними, а также панорамировать / масштабировать все представление.

Насколько я вижу, у меня есть два основных варианта:

  • Первый вариант: один вид обрабатывает все это.

  • Второй вариант: каждый элемент (узел или дуга) имеет свой собственный связанный вид.

Я думаю, что плюсы / минусы каждого варианта:

  • Первый вариант облегчает рисование (вы просто заполняете структуру данных и рисуете кварцевые 2D контуры). Однако обнаружение касаний проблематично, так как вы должны решить, попадет ли заданная точка касания в узел (это легко, но вы должны опрашивать все узлы) или на ребро (это не так просто).

  • Второй вариант упрощает обнаружение и обработку касаний. Однако рисование может быть проблематичным, так как вам нужно повернуть и изменить размеры всех ваших видов; еще хуже, если вы перетаскиваете узел, вы должны сказать всем видам (удерживая ребро, инцидентное данному узлу) изменить размер / повернуть себя.

Какой из двух вариантов вы бы мне порекомендовали?

Заранее спасибо,

Biel

...