Skip to main content

Objetos e métodos básicos

O after expõe um modelo de objetos que reflete a estrutura do software. Aprende o vocabulário e o resto flui.

Hierarquia

thisComp ← a composição atual
└── thisLayer ← a layer com a expressão
└── thisProperty ← a propriedade com a expressão

thisComp

thisComp.width // largura em pixels
thisComp.height // altura em pixels
thisComp.duration // duração em segundos
thisComp.frameDuration // 1/FPS
thisComp.numLayers // número de layers
thisComp.name // nome da comp (string)

thisLayer

thisLayer.width // largura da layer
thisLayer.height // altura
thisLayer.index // número da layer (1 = topo)
thisLayer.name // nome
thisLayer.inPoint // tempo de entrada em segundos
thisLayer.outPoint // tempo de saída

Acessando outras layers

// por nome
thisComp.layer("Nome da Layer")
// por índice
thisComp.layer(2)
// layer acima da atual
thisComp.layer(thisLayer.index - 1)

Acessando propriedades de outra layer

// position de outra layer
thisComp.layer("Controle").transform.position
// opacity
thisComp.layer("Fundo").transform.opacity
// slider de expression controls
thisComp.layer("MASTER").effect("Meu Slider")("Slider")

Métodos importantes

valueAtTime(t) — retorna o valor da propriedade num tempo diferente:

thisComp.layer("Objeto").transform.position.valueAtTime(time - 0.5)

wiggle(freq, amp) — oscilação aleatória suave:

wiggle(2, 30)

linear(t, t_min, t_max, v_min, v_max) — mapeia um range de tempo pra um range de valores:

linear(time, 0, 30 * thisComp.frameDuration, 0, 100)

ease() — como linear mas com easing nas extremidades:

ease(time, 0, 1, 0, 100)

Tipos de dados

PropriedadeTipoExemplo
opacity, rotationnumber100
position, scalearray[960, 540]
corarray RGBA[1, 0, 0, 1]
// acessando componentes de um array
var pos = thisLayer.transform.position;
var x = pos[0];
var y = pos[1];