티스토리 뷰

728x90
반응형

로딩창에 숫자 텍스트가 같이 올라가면서 로딩바가 채워지는 짧은 모션그래픽을 만들어보자

로딩바 애니메이션

여기 필요한 방법.

1. Stroke에 trim Path 키값을 건다. 0에서 100으로 채운다

2. trim Path값을 텍스트에 소스텍스트에 사용한다.

3. trim Path 값을 정수(Math.round())혹은 소숫점 value.toFixed(1) 소수점 첫번째까지 표기로 표현한다.

4.소스텍스트에 value값을 주고 뒤에 텍스트를 붙여볼 땐 + "text"

5. scale에 wiggle효과를 준다.

 

 


 

로딩창의 숫자는 소스텍스트에 trimpath값 end값을 불러온다.

 thisComp.layer("Shape Layer 3").content("Trim Paths 1").end

 

trimPath의 end값을 Source Text에 넣는 모습
whip을 끌어다 넣으면 Source Text 표현식에 이렇게 호출된다.

호출만 하면 text가 소수점이 끝도없이 표기된다.

소수점을 없애기 위해 정수로 표현할 것인가, 소수점을 지정할 것인가.

 

 

| 숫자를 정수로 만들기 Math.round

그리고 정수로 불러오려면 Math.round(값)을 쓰면된다.

이 함수는 소수첫째자리를 반올림하여 정수로 표현한다. 

값은

 thisComp.layer("Shape Layer 3").content("Trim Paths 1").end

 

이다.

end값이 0에서 100으로  키값이 주어져 있다.

 

 

Math.round(thisComp.layer("Shape Layer 3").content("Trim Paths 1").end)

이렇게 쓰면 되는데 너무 복잡해보이면 변수지정

N = thisComp.layer("Shape Layer 3").content("Trim Paths 1").end;

Math.round(N)

Math.round를 사용하니 소수점 첫째자리에서 반올림 되어 1.5xxxx 가 2로 표기된다.

 

 

| 숫자를 소수점 지정해주기  value.toFixed

 

아까 trimPath 의 end값을 N으로 변수 설정을 했다.

이 수치를 소수점 첫째자리까지 보여주고 싶다면 Math.round(N)를 쓰면 안된다.

값.value.toFixed(1)를 사용하니 소수점 둘째자리에서 반올림 되어 1.5xxxx 가 1.6으로 표기된다.

이렇게 값.value.toFixed(1)을 써주면 소숫점 첫째자리까지 보이게 소수점 둘째자리에서 반올림해주세요 하는 뜻.

 

거기에 퍼센트를 넣을땐 일반 텍스트 소스이기 때문에 플러스 쌍따옴표를 쓰고 원하는 텍스트를 앞뒤 어디든 추가해주면된다. 물론 수식에 영향받지 않는 위치를 선정해야겠다.

N = thisComp.layer("Shape Layer 3").content("Trim Paths 1").end;

N.value.toFixed(1) + "%"

그럼 이렇게 된다.

 

 

역동적인 로딩바를 만들기 위해 scale에 100%찰 때즘 바운스 한번 하게 키값을 주고. 차오를 때는 wiggle값을 줌. 

 

그럼 완성이다.

 

 

 

728x90
반응형
댓글
반응형
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday