Wednesday, September 15, 2010

Modeling punched wall with dynamic component


앞의 포스트는 잠깐 쉬어가는 성격이었고
이번엔 다시 진도를 나간다.

Dynamic component로 스파이럴을 만들며 면만들기에 성공했은데
이것만 해도 sketchup의 엄청난 가능성을 연 것이라고 자평하고 있다.
그렇다고 여기서 멈출 수는 없다.
이번에는 DC 모델의 면에 구멍 뚫기making holes on surface of DC model에 도전했다.
그냥 면이 아니라 곡면에.
구멍들의 위용을 보라.;;

곡면 만들기는 앞서 올린 방식이 아닌 다른 방식을 썼다.
이 방식은 세번째 포스트 말미에 최근까지 이미지와 파일이 올라 있었는데 용량이 쓸데없이 커서 둘다 내린바 있는 모델에서 사용한 방식을 이용했다. 여기서의 초점은 면만들기가 아니니 자세한건 다음에 기회가 있을 때 다시 하고.
구멍을 뚫어 보자.

아 이 모델은 수식을 짜는게 좀 어려웠다.
면만들기는 해봤던 방식이라 (그럼에도 조금 헤맸지만;;) 쉬운편이었지만
엇갈리게 구멍을 뚫고 싶어서 수식을 짜는데 조금 애를 먹었다.
그리고 여러가지 변수들의 수정이 용이하게 하려고 초기부터 신경을 쓴 점도 애를 먹은 이유. 게다가 중간에 면만들기 수식이 맘에 들지 않아(잘못짠 것이었음;;) 수정을 하게 된점도 유독 이 모델의 수식이 까다롭게 느껴진 이유중 하나.

스크린샷을 보고 간단히 설명해보자.
그 어느 때보다 스크린 샷이 많고 수식도 많다!!



Selected component is 'surface'.
It has 5 copies of subcomponent named 'set_2'.
N_of_c_x is number of copies of 'set_2'.
(Number Of Copies in X axis)

Inside 'surface' component, 'set_2' has
 its own subcomponent named 'set_1'.
'set_1' has 24 copies (N_of_C_Y inherited from 'surface').

L_of_sub, Pos_of_sub, Pos_of_sub_a affect the lengths and positions
of subcomponent 'sur_1' and '2'.
'IF' functions make happen cross openings of holes.
And what move in Z axis and rotate in Y axis
are the copies of 'set_1'(accordance with X and Y coordinates both).
'set_2' only has copies in X axis.

Selected 'set_1' component has 2 different  subcomponents below.
What really transformed in length are these two components.
They are affected parent's copy and Y position attributes.

'sur_1' is selected, the other one is 'sur_2' component.
실제로 구멍을 만드는 데 사용된 식은 set_1 의  L_of_sub, Pos_of_sub, Pos_of_sub 에 표현되어 있는 조건문들이다. 이 것들은 하위 콤포넌트인 sur_1, sur_2에 상속되어 이들의 길이를 변화시키는데, set_1 복사본 각각의 copy 값은 구멍의 위치와 관련있고, Y 좌표는 구멍의 크기에 영향을 미친다.

사인함수로 길이를 정의했으므로 주기에 따라 반복이 되는 건 당연하고
한 주기 안에서 교차로 오프닝이 생기도록 조건문을 사용하였다.

sur_1 의 경우 반주기를 기준으로 작은값은 오른쪽, 큰값은 왼쪽으로 오프닝이 생겨야 하는데 콤포넌트 기준점이 왼쪽이므로 반주기 이상 부분은 길이의 변위만큼 오른쪽으로 이동시켜주어야 한다.(set_1 의 Pos_of_sub_a)
반대로 sur_2는 반주기를 기준으로 작은값에 왼쪽, 큰값에 오른쪽에 오프닝이 생겨야 sur_1과 짝을 이루는 구멍이 생기는데, sur_2의 경우 콤포넌트 기준점이 오른쪽이므로 반주기 이상부분을 길이위 변위만큼 왼쪽으로 이동시켜야 한다.(set_1 의 Pos_of_sub)

길이의 변위도 반주기를 기준으로 조정을 해주어야 한다. 그냥두면 반주기보다 큰 부분은 구멍이 생기지 않는다.

이 조건문의 수식을 찾아내는게 조금 까다로웠지만 아마도 이후에 많이 사용될 것 같아 소비한 시간이 아깝진 않다.

처음엔 직선으로 최하위 콤포넌트 둘을 그려 작업을 한뒤 모든 수식이 정리됐을 때 'U' 자 형태로 다시 그려주고 최종적으로 복사 개수를 조정한뒤  마찬가지로 loft by splines 플러그인으로 마무리.
Start with, for instance, single line, replace later
with conceived shape
after setting all formulas.

Replaced 'U' shaped spline.
Replace one, then everything else will be changed
automatically.

Loft by splines separately,
cause the holes occur weird deformation.
Time consuming work.


두가지 형태의 이미지를 올려본다.
녹색형태가 수정전의 수식으로 만들어진것. 2차원 곡면이라 맘에 들지 않았다.
노란 모델에서 3차원 곡면 3 dimensinal surface이 만들어졌다. 위의 수식들은 이 노란 곡면의 것이다. 아 3차원 곡면의 아름다움!
구멍의 크기도 좀 늘렸다. 덕분에 인상이 강해졌다.
둘 모두 x, y 방향으로 곡면의 한주기 크기만큼 만든다음 복사를 통해 큰 면을 만든것.









손을 더쓰면 구멍의 크기에도 변화를 줄 수 있는데
역시 손을 볼게 많을 것 같므로 일단 여기까지.

이젠 건물 하나 DC로 거뜬히 올리겠는걸;;;


마지막으로.  작업한 모델들 모음.

No comments:

Post a Comment