Возможна ли ошибка в итераторе Quartz Composer? - PullRequest
1 голос
/ 23 марта 2012

При добавлении патча итератора в окно редактора я вижу только патч с 1 входом (итерации). Если я попытаюсь взорвать этот патч для просмотра подпатчей макроса, я получу пустое окно редактора (тот же результат, если дважды щелкнуть патч). Инспектор патчей просто показывает индекс итераций (по умолчанию 10).

Если у патча нет выходных данных, и я не вижу подлатчи, как мы на самом деле должны использовать патч итератора? Я понимаю, что в этом помогает еще один патч, называемый переменными итератора, но я все еще не понимаю, как использовать итератор, если он не имеет выходных данных.

Я посмотрел в Интернете и есть несколько учебных пособий по теме итераторов QC, но все они используют более старые версии OS X / Xcode - когда все работает иначе, и, конечно, выглядит иначе, чем я вижу.

Я также видел странное поведение со средством просмотра QC - оно не всегда обновляется, чтобы показать изменения, которые я сделал в редакторе, мне пришлось выйти из QC и перезапустить, чтобы увидеть обновления время от времени. Журналы ошибок в консоли не показывают много в способе регистрации ошибок. Возможно, КК для Льва не работает?

Я попытался удалить QC и загрузить новую копию, но все еще вижу тот же результат. Любое понимание высоко ценится.

Возможно, я полностью упускаю суть в отношении итераторов, я думаю, что они позволяют пользователю повторять эффекты из других патчей, перебирая значение индекса, но опять же, если у итератора нет выходных данных, и я не могу видеть в нем не вижу, как использовать итераторы.

Я использую MacBook Pro на процессоре 10.7.3 Lion & Intel 2,3 ГГц i5.

1 Ответ

3 голосов
/ 23 марта 2012

Простое руководство по Iterator:

  1. Открытие пустой композиции
  2. Добавление патча Clear
  3. Добавление патча Iterator
  4. Спуск вПатч итератора, дважды щелкнув тело патча (не заголовок)
  5. Добавить патч переменных итератора
  6. Добавить патч строки
  7. Подключить патч итератора переменных «Текущая позиция»вывод на вход «Начальная позиция Y» патча Line

Это демонстрирует:

  • Все внутри патча Iterator выполняется многократно (независимо от ввода «Итерации» патча Iterator
  • Патч переменных итератора предоставляет контекст внутри итератора (т. е. где вы находитесь в текущей последовательности итерации)
  • Патчу итератора не нужны выходные данные для визуализацииstuff

Также возможно публиковать выходные данные из патчей в Iterator (щелкните правой кнопкой мыши патч, перейдите в меню Publish Outputs).Из-за ограничений в реализации QC вы можете публиковать выходные данные только тогда, когда внутри Iterator (или любого другого макроса) нет патчей рендеринга (синего цвета).

Когда вы публикуете выходные данные из Iterator, внешние патчи видяттолько значение из последней итерации.Чтобы обойти это, вы можете использовать патч Queue внутри Iterator, чтобы создать структуру, которую вы затем можете опубликовать.

В итоге вы должны получить что-то похожее на это: Screenshot of QC Editor and Viewer

...