Как анимировать процесс геометрических построений на учебной доске

ShuAnLi

New Member
Добрый день. Я новичок в AF. Мне нужно решить следующую задачу: у меня есть чертеж к геометрической задаче, который я нарисовал с помощью программы для рисования геометрических чертежей https://www.geogebra.org и сохранил в виде png файла. Как мне сделать его анимацию. Например, на прикрепленном файле готовый чертеж, который хотелось бы анимировать, сопровождая следующий текст: "В параллелограмме (анимация параллелограмм), на диагонали взята произвольная точка Е (анимация диагональ и на ней точка), из нее проведены перпендикуляры к сторонам параллелограмма (анимация перпендикуляров и точек пересечения со сторонами). Докажите, что получившаяся фигура - трапеция (обводится зеленая фигура). Я вижу логическое решение задачи так: раскладываю чертеж на слоиПерпендикуляры в параллелограмме.png, а внутри слоя анимацию процесса построения создаю с помощью маски. Но, как разложить на слои этот готовый чертеж?
 

IvanovDenis

Администратор
Команда форума
Для начала надо уточнить, в какие ещё форматы кроме png умеет сохранять ваше приложение для создания чертежей. Png это совершенно плоский растровый формат, и разделить его в том виде, в котором вы скинули, на слои в After effects можно только фактически вручную, масками, что не очень технологично.

Если программа умеет выгружать граф в векторном формате, лучше всего непосредственно в AI, то можно поискать более элегантные решения.

Если всё-таки нет, то анимировать подобные линии, особенно если вы хотите, чтобы они появлялись например, рисованием, проще всего при помощи Stroke по маске, которая лежит сверху на слое, который в свою очередь служит маской (не путать с векторной) прозрачности для нижнего слоя в режиме Alpha Matte.

1. Создаем слой поверх анимируемого
2. Рисуем рукой на верхнем слое векторную маску приблизительно по контуру, который хотим анимировать на нижнем слок (можно сделать верхний слой невидимым, это упростит задачу)
3. Применяем на верхний слой эффект Stroke, выбираем нарисованную нами маску, задаем нужную толщину Stroke, выбираем режим On transparent
4. Устанавливаем для нижнего слоя верхний слой как Alpha Matte или Inverted Alpha Matte
5. Анимируем Stroke так как нам надо при помощи создания ключей на End или Start, если надо чтобы он мигал для акцентирования внимания то анимируйте прозрачность или толщину Brush Size, в общем, экспериментируйте.
6. На верхнем слое может быть несколько векторных маск и несколько эффектов Stroke отдельно для каждой маски, которые будут анимировать появление соответственно отдельных линий на нижнем слое. Добавляем столько, сколько надо.

Сильно облегчит задачу при таком способе анимации, если вы эскпортируете отдельно в три слоя линии, текст (подписи), и узлы (точки), причем с альфа-каналом. Слой с узлами и точками можно будет просто бросить поверх слоя с линиями.

Вот грубый пример анимации треугольника AGE, отметил стрелками, на что обратить внимание:

1582087852644.png

Сам проект в аттаче.

А вообще, если все графы выглядят настолько простыми, как в примере, и линии везде прямые, то я бы просто отрисовал его векторными масками по отдельности в AE, и запустил по маскам линии эффектом Stroke без всяких многослойных Matte. Выглядит это как работа на 3 минуты. Текст и узлы нарисовал бы тоже средствами AE в отдельных слоях поверх.
 

Вложения

Последнее редактирование:

ShuAnLi

New Member
Большое спасибо за такой развернутый ответ).
Насколько я понимаю, никаких других "полезных форматов" Геогебра не поддерживает (см. скриншот всех возможных экспортов).
Чисто в плане просвещения: какой формат, если бы его поддерживала Геогебра сильно упростил бы задачу растаскивания графа на слои?
Форматы ГеоГебра.png
 

IvanovDenis

Администратор
Команда форума
Ну вот SVG очевидно, векторный, и он мог бы путем некоторых манипуляций быть скопирован сразу в виде масок, по которым повторюсь осталось бы просто запустить Stroke нужного цвета/толщины/анимации.

Но если оставлять всё в растровом PNG, и использовать вариант который я предложил с Matte-слоем, то просто надо поискать, есть ли в GeoGebra выделение например всех подписей и экспорта только их (что-то вроде "export selected" в corel draw), затем экспорта точек узлов, затем линий графа. Или может быть надо последовательно удалять надписи/точки/линии из готового чертежа, и экспортировать оставшееся. К сожалению, пока нет времени вникнуть в особенности работы именно Geogebra.

Но повторюсь линии графа в таком виде как они представлены у вас на картинке рисуются в аешке просто в два клика, причем ещё и несколькими способами. С точки зрения визуализации предполагаю, что даже проще, чем в ГеоГебре, но вероятно в геогебре математика какая-то под всем этим есть, тогда другое дело.

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