Я запускаю новый проект в iPhone SDK, чтобы представлять и манипулировать графиками (в смысле сетей, а не гистограмм / круговых диаграмм / * диаграмм).
Я хочу иметь возможность интерактивно добавлять / перемещать / удалять узлы и дуги между ними, а также панорамировать / масштабировать все представление.
Насколько я вижу, у меня есть два основных варианта:
Я думаю, что плюсы / минусы каждого варианта:
Первый вариант облегчает рисование (вы просто заполняете структуру данных и рисуете кварцевые 2D контуры). Однако обнаружение касаний проблематично, так как вы должны решить, попадет ли заданная точка касания в узел (это легко, но вы должны опрашивать все узлы) или на ребро (это не так просто).
Второй вариант упрощает обнаружение и обработку касаний. Однако рисование может быть проблематичным, так как вам нужно повернуть и изменить размеры всех ваших видов; еще хуже, если вы перетаскиваете узел, вы должны сказать всем видам (удерживая ребро, инцидентное данному узлу) изменить размер / повернуть себя.
Какой из двух вариантов вы бы мне порекомендовали?
Заранее спасибо,
Biel