7-3.클릭하면 열리는 슬라이딩 도어 만들기

이번시간에는 실제로 다이나믹 콤포넌트를 사용해, 슬라이딩 도어를 만들어보도록 하겠습니다. 다이나믹 콤포넌트 중에서도 가장 쉬운 단계에 속하므로 차근차근 잘 따라와주세요.

0.준비물

아래 예제 파일을 다운받아서 열어주세요.

sliding_door_ex.zip

1.콤포넌트 확인하기

1) 콤포넌트를 선택한뒤, 아이콘을 클릭해 Component Attribute 창을 엽니다.

문틀, 미닫이문A, 미닫이문B 이렇게 총 3개의 콤포넌트로 이루어져 있는 것을 알수 있습니다.

2) 문 콤포넌트를 더블클릭해서 편집모드로 들어간뒤, 앞쪽 문 - 미닫이문A를 선택합니다. Component Attribute 창 에서도 미닫이문A만 나오는지 확인하세요.

2.변수 설정하기

다이나믹 콤포넌트에서 가장 중요한 것 중 하나가 '바꿀 것을 설정'하는 작업입니다. 이 문은 슬라이딩 도어이므로 가로로 움직입니다. 즉, 가로위치를 바꿔주어야 하는데요. 다이나믹 콤포넌트에서 가로위치는 X라는 고정된 명칭을 사용합니다.

3) Component Attributes 창에서 Add Attrubute 를 클릭한뒤, 나오는 메뉴에서 X를 선택해 X를 추가합니다.

4) 10cm라는 값이 표시될 것입니다. 왜 10cm 냐구요? 콤포넌트 문틀 두께가 10cm거든요. 이처럼, 다이나믹 콤포넌트는 내부의 위치값을 사용하게 됩니다. 1)

이 값을 임시로 바꾸어봅시다. 100 을 입력하고 엔터키를 눌러 적용합니다.(cm는 붙이지 마세요.)

문이 반대쪽으로 가서 붙는 걸 확인 할수 있습니다.오오~~

다시, 10을 입력해 원래 위치로 돌려놓습니다. 이제 문을 클릭하면, 알아서 동작하도록 할꺼에요.

3. 움직임 설정하기

이제 클릭하면 움직이게 해볼까요?

5) 다시 Add Attribute 를 클릭해 onClick 을 선택합니다. onClick은 이름에서 예상할 수 있듯 클릭할 때 반응을 설정합니다.

그런데, 값을 어떻게 넣어야 할까요?? 으으으음…

6) 필요한 기능은 Function에서 설정합니다. Function은 말 그대로 기능을 의미하기도 하고, 함수를 의미하기도 합니다. 클릭해보세요.

클릭하면 Select a spreadsheet function 이라는 항목이 나옵니다. 쓸수 있는 함수리스트인데요….음? spreadsheet?

네. 눈치채신 분도 있겠지만, 상당부분 엑셀의 함수들과 비슷합니다. 엑셀 잘쓰시면, 쉽게 익숙해지실꺼에요.

7) Select a spreadsheet function 를 클릭합니다. 리스트가 쏟아져나옵니다. 어지럽군요. @ㅂ@? 당장 쓸 애들은 아니므로 사뿐히 무시하고, onClick 항목에서 Animate 를 찾아 선택합니다. 요게 애니메이션 효과를 주는거에요.

그리고 onClick 옆쪽 입력창을 더블클릭해 입력가능상태로 만든다음, insert를 눌러 값을 입력합니다.

8) 입력된걸 확인하셨나요? 여기서 “attribute”는 조정할 항목을, 뒤쪽의 state들은 변경할 수치를 의미합니다. 여러개를 입력하면 여러단계로 바뀝니다. 하지만, 우리는 열렸다 닫혔다만 할꺼니 숫자는 두번만 입력할께요.

  ANIMATE("attribute",state1,state2,...stateN)

아래처럼 바꿔줍니다. 의미는 X값을 100과 10으로 바꾸어가며 움직여라 입니다.

  ANIMATE("X",100,10) 

9) 자, 이제 Interact with Dynamic Component 아이콘을 클릭한뒤, 미닫이문A를 클릭해봅니다. 아래처럼 되면 성공이에요~~

숙제

잘 하셨다면? 숙제도 해보세요.

1) 문을 반쯤 열리게도 해보세요. 완전히 열렸다가 → 반쯤 열렸다가 → 닫히게

2) 반대쪽 문도 클릭하면, 열리게 만들어보세요.

다음 시간에는 클릭하면 회전하는 문을 만들어 볼 예정입니다. 기대해주세요~

7-4. 원하는 각도로 열리는 회전문 만들기

1) 단, 콤포넌트가 생성된 위치를 기초로 계산하는 이상한 구조라…만들때는 영점에서 시작하는게 좋습니다