digitalfabricationworkshop:remark
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| digitalfabricationworkshop:remark [2015/02/03 06:27] – created donghee | digitalfabricationworkshop:remark [2018/07/18 14:10] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | [[http:// | + | < |
| + | # Digital Fabrication Workshop | ||
| + | ## 첫째날: 디지털 패브리케이션과 만들기 | ||
| - | < | + | 2015년 1월 6일, 세종과학고 |
| - | < | + | |
| - | < | + | |
| - | <meta http-equiv=" | + | |
| - | <style type=" | + | |
| - | @import url(http:// | + | |
| - | @import url(http:// | + | |
| - | @import url(http:// | + | |
| - | body { | + | 이재경 |
| - | font-family: | + | |
| - | } | + | |
| - | h1, h2, h3 { | + | |
| - | font-family: | + | |
| - | font-weight: | + | |
| - | margin-bottom: | + | |
| - | } | + | |
| - | .remark-slide-content h1 { font-size: 3em; } | + | --- |
| - | .remark-slide-content h2 { font-size: 2em; } | + | |
| - | .remark-slide-content h3 { font-size: 1.6em; } | + | |
| - | .footnote { | + | # 강사소개 및 워크숍 정보 |
| - | position: absolute; | + | |
| - | bottom: 3em; | + | |
| - | } | + | |
| - | li p { line-height: | + | |
| - | .red { color: | + | |
| - | .large { font-size: 2em; } | + | |
| - | a, a > code { | + | |
| - | color: rgb(249, 38, 114); | + | |
| - | text-decoration: | + | |
| - | } | + | |
| - | code { | + | |
| - | -moz-border-radius: | + | |
| - | -web-border-radius: | + | |
| - | background: #e7e8e2; | + | |
| - | border-radius: | + | |
| - | } | + | |
| - | .remark-code, | + | |
| - | .remark-code-line-highlighted | + | |
| - | .pull-left { | + | |
| - | float: left; | + | |
| - | width: 47%; | + | |
| - | } | + | |
| - | .pull-right { | + | |
| - | float: right; | + | |
| - | width: 47%; | + | |
| - | } | + | |
| - | .pull-right ~ p { | + | |
| - | clear: both; | + | |
| - | } | + | |
| - | #slideshow .slide .content code { | + | |
| - | font-size: 0.8em; | + | |
| - | } | + | |
| - | #slideshow .slide .content pre code { | + | |
| - | font-size: 0.9em; | + | |
| - | padding: 15px; | + | |
| - | } | + | |
| - | .inverse { | + | |
| - | background: #272822; | + | |
| - | color: #777872; | + | |
| - | text-shadow: | + | |
| - | } | + | |
| - | .inverse h1, .inverse h2 { | + | |
| - | color: #f3f3f3; | + | |
| - | <!-- line-height: | + | |
| - | } | + | |
| - | /* Slide-specific styling | + | - **이재경**: 비정형 건축물의 가상 시공을 비롯하여, |
| - | # | + | - **장소/ |
| - | bottom: 12px; | + | - **참가**: 세종과학교 1학년 20여명. |
| - | left: 20px; | + | - **목표**: 디지털 패브리케이션 과정 경험. |
| - | } | + | - **진행 방법**: |
| - | # | + | |
| - | font-size: 0.9em; | + | |
| - | position: absolute; | + | |
| - | top: 151px; | + | |
| - | right: 140px; | + | |
| - | } | + | |
| - | # | + | |
| - | | + | |
| - | } | + | |
| - | #slide-how .slides .first, #slide-how .slides .second { | + | |
| - | | + | |
| - | height: 90px; | + | |
| - | width: 120px; | + | |
| - | | + | |
| - | -webkit-box-shadow: 0 0 10px #777; | + | |
| - | box-shadow: 0 0 10px #777; | + | |
| - | } | + | |
| - | # | + | |
| - | | + | |
| - | position: absolute; | + | |
| - | top: 20%; | + | |
| - | left: 20%; | + | |
| - | z-index: 1; | + | |
| - | } | + | |
| - | # | + | |
| - | position: relative; | + | |
| - | background: #fff; | + | |
| - | z-index: 0; | + | |
| - | } | + | |
| - | /* Two-column layout */ | ||
| - | .left-column { | ||
| - | color: #777; | ||
| - | width: 20%; | ||
| - | height: 92%; | ||
| - | float: left; | ||
| - | } | ||
| - | | ||
| - | color: #000; | ||
| - | } | ||
| - | .right-column { | ||
| - | width: 75%; | ||
| - | float: right; | ||
| - | padding-top: | ||
| - | } | ||
| - | .dokuwiki div.page { | ||
| - | min-height: 0px; | ||
| - | } | ||
| - | </ | ||
| - | </ | ||
| - | < | ||
| - | < | ||
| - | class: center, middle, inverse | ||
| - | # **Digital Fabrication Workshop ** | + |  | ||
| + | |||
| + | , 선물용 샤프, 던지면 바뀌는 요술공 | ||
| + | , 인형, 머리에 꽂을 수 있는, 비녀, 가스가 세면, 이산화 탄소를 측정. | ||
| + | 개복치 가스 | ||
| + | ``` | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 캐드에 대한 기초적인 생각 | ||
| + | |||
| + | 컴퓨터는 | ||
| + | |||
| + | 그럼 무슨 기준이 필요하나? | ||
| + | 사람이 컴퓨터에게 공간을 알려주기 위해서는 원점(0, | ||
| + | |||
| + | **원점, 방향, 모니터, 카메라, 마우스, 스냅, 정보 저장.** | ||
| + | |||
| + | --- | ||
| + | # 캐드: 원점과 방향 | ||
| + | |||
| + | 1. **원점**: origin point 0,0,0 | ||
| + | 2. **방향**: 축 axis (예: x,y,z축) | ||
| + | |||
| + |  투영. | ||
| + | |||
| + | 는 컴퓨터를 이용한 디자인(Computer Aided Design)으로 만들고, 분석하고, | ||
| + | 수정하는 등의 물건 디자인과정에서 컴퓨터를 이용하는 것을 말한다. | ||
| + | |||
| + | 캐드에는 평면을 디자인할 수 있는 2D캐드와 입체를 디자인할 수 있는 3D캐드로 구분된다. | ||
| + | |||
| + | 이번 워크숍에서 배우는 라이노는 3D 캐드이다. | ||
| + | |||
| + |  | ||
| + | |||
| + | --- | ||
| + | # 라이노 3D 개념 소개 | ||
| + | |||
| + | - 라이노의 기본 객체: | ||
| + | - 부울연산: | ||
| + | - 필터: 공간에 | ||
| + | - NURBS (NON-Unifom Rational B-Spline) 커브를 표현하는 수학적 방법. 커브의 기준 점을 통해서 커브를 연결하는 방식 | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 라이노 3D 개념 2 (연산) | ||
| + | |||
| + | - 필렛: 같은 평면에 있는 두 개의 커브를 접하는 반지름 R의 원으로 연결하는 것 | ||
| + | - Boolean: 솔리드 연산을 위해 사용되는 부울 연산. 솔리드의 교집합, 합집합, 차집합 연산을 할 수 있다. | ||
| + | - Join: 라이노의 객체를 결합하는 연산 | ||
| + | - Loft: 두개의 선을 이용하여 면을 만드는 연산 | ||
| + | - Cap: 커브가 닫혀있지않고 열려 있을때, 열려있는 커브를 덩어리 모양이 되도록 닫혀 주는명령 | ||
| + | |||
| + | |||
| + | --- | ||
| + | |||
| + | # 라이노 3D 개념 3 (연산) | ||
| + | - Section: 덩어리의 단면 추출 | ||
| + | - explode: 합쳐진 면과 선의 집합(객체)를 부숴주는 명령 | ||
| + | - extrude: 특정 방향으로 돌출 시켜주는 명령. 높이를 만들대 유용. | ||
| + | - Sweep 1 Rail: 곡선 레일을 기준으로 곡면을 만들 수 있는 명령. | ||
| + | |||
| + | --- | ||
| + | # 라이노 3D 개념 4 | ||
| + | |||
| + | - 면을 만드는 방법 | ||
| + | - 라이노 전용 서페이스. 메쉬와 다른 라이노 서페이스. | ||
| + | - 메쉬: 면들의 집합. 면안에 점이 있고 면. 그물망처럼 보이기 때문에 메쉬라고 이름을 지음. 용량을 줄이거나, | ||
| + | |||
| + | - 커브 투영: 커브를 특정 축으로 그림자를 낸것 | ||
| + | - 뷰 포트: 보는 틀 (위, 정면, 측면, 카메라 뷰) | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 라이노로 모델링 시연 | ||
| + | |||
| + | 실제 종이컵의 치수를 제어가며 라이노에서 모델을 만드는 방법을 소개 | ||
| + | |||
| + | |||
| + | : 3D모델을 삼각형의 면으로 쪼개어 저장하는 파일형식. | ||
| + | - 라이노에서 STL출력: 모델을 선택하고, | ||
| + | |||
| + | 주의점: **3D모델의 면이 터진곳 없이 면으로 모두 막혀** 있어야 3D프린팅을 할 수 있다. | ||
| + | |||
| + | --- | ||
| + | |||
| + | # CNC를 이용하여 제작한 Burning plate 제작과정 (이재경) | ||
| + | |||
| + | 의 결부방식을 표현하는 현치도를 라이노를 이용하여 그려보자. | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 현치도 그리기 | ||
| + | |||
| + | 1 솔리드로 box와 5면체를 그리고 두개를 접합하여 집을 그린다. | ||
| + | |||
| + | 2 골조 세우기 | ||
| + | |||
| + | 2-1 폴리 서피스의 와이어 커브 추출을 하여, 커브로 구성된 기본 골조를 만든다. | ||
| + | |||
| + | 2-2 커브를 explode하고, | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 현치도 그리기 2 | ||
| + | |||
| + | 2-3 땅으로 부터 올라오는 집의 기둥을 지붕사선면의 골조처럼, | ||
| + | |||
| + | 2-4 돼지발 만들기 | ||
| + | 지붕사선의 골조와 땅으로 부터 올라오는 골조를 만나는 면을 정리한다. | ||
| + | 정리하는 방법은 두개 골조가 만나는 면에서 튀어나오는 부분을 평면으로 자른다.(자를 평면 만들때는 구성평면을 이용하여 축이동을 하면 편리하다.) 그러면 돼지발 모양이 된다. | ||
| + | |||
| + | 2-5 돼지발 처럼된 골조를 전개도를 만들고, 이 전개도는 골조를 만들때 이용한다. | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 현치도 그리기 3 | ||
| + | |||
| + | 3 전개도 만들기 | ||
| + | |||
| + | 3-1 전개도 펴기: Orient3pt 명령을 이용하여 골조의 면을 평면에 붙여 넣기 한다. | ||
| + | |||
| + | 3-2 전개도 출력: 전개도의 자르는선과 접는선 출력하기: | ||
| + | 이 닫힌 커브를 선택하여 종이에 출력하고, | ||
| + | |||
| + | --- | ||
| + | |||
| + | # Pepakura 소개 | ||
| + | |||
| + | 페파쿠라: | ||
| + | |||
| + | http:// | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 집 전개도 만들기 | ||
| + | |||
| + | 참가자가 만들려고 하는 집모델을 수정하여 전개도를 만드는 방법을 시연 및 질답. | ||
| + | |||
| + | ? | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 랜더링 | ||
| + | |||
| + | - 랜더링: 모델을 빛과 주변 환경에 맞춰서 자연스럽게 다시 그려주는것. | ||
| + | - 랜더링도 어마어마한 분야. | ||
| + | - 환경맵 사용. 하늘로 설정 | ||
| + | - 조명 넣기 | ||
| + | - 사각형 조명 만들기 | ||
| + | - 렌더링 걸기 | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 나사 만들기 | ||
| + | |||
| + | 오늘은 3D 프린터를 한번 해봅시다. | ||
| + | 예제로 나사를 만들어 봅시다. | ||
| + | |||
| + | 나사 높이 30m. 나사 산 피치: 2m | ||
| + | |||
| + | <!-- 1. rectangle 만들기 --> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | |||
| + | |||
| + | 1 나사 몸통: 원통 만들어서 extrude | ||
| + | 2 나사산: 원통 밖으로 헬릭스(나선)을 그려서 나사산 자취 만들기 | ||
| + | 3 헬릭스를 기반으로 반타원 레일을 그려서, 나사산 튀어 나오도록 만들기 | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 나사 만들기 cont | ||
| + | |||
| + | 4 나사 머리를 그려서 나사 몸통과 붙이기 | ||
| + | 5 나사 볼트 만들기. 나사 몸통을 덥는 메스를 적당히 배치한다음에 나사와 메스의 | ||
| + | 부울연산 | ||
| + | 6 메스를 적당히 다듬어서 볼트 모양으로 만들기 | ||
| + | |||
| + | --- | ||
| + | # 나사산 만들기 튜토리얼 영상 | ||
| + | |||
| + | - Modeling screw threads 1 https:// | ||
| + | - Modeling screw threads 2 https:// | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 부울 연산 질문 | ||
| + | |||
| + | - 나사산 만들기에서 부울연산에 걸리는 시간이 길다. 왜? | ||
| + | -> 헬릭스, 레일 모델은 수학식으로 만들어져 있다(라이노 캐드엔진). | ||
| + | |||
| + | 솔리드 연산을 지원하는 캐드는 부울 연산을 쉽게 한다. | ||
| + | |||
| + | - 빼는 연산이 안될때 라이노는 어떻게 해야 하나? | ||
| + | -> 부울 연산보다는 처음 부터 최종 결과물을 모델링 한다. | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 나사 모델 | ||
| + | |||
| + |  | ||
| + | - 3D물체의 자른 한면과 단면의 Dup(겹치는)을 실행하여, | ||
| + | |||
| + | 또다른 단면 만들기 방법: 단면과 면이 만나는 라인을 바닦에 orient한다. (section으로 단면커브를 만들고, 단면커브를 선택하고 2D도면그리기(_Make2D)로 Top뷰에 단면을 만든다. | ||
| + | |||
| + | --- | ||
| + | |||
| + | # 2D 도면 | ||
| + | |||
| + |  | ||
| + | response = urlopen(req) | ||
| + | class NACA4DIGIT_PRE_STRIP(HTMLParser): | ||
| + | def __init__(self): | ||
| + | self.reset() | ||
| + | self.fed = [] | ||
| + | self.handle_on = False | ||
| + | def handle_data(self, | ||
| + | if self.handle_on: | ||
| + | self.fed.append(d) | ||
| + | def handle_starttag(self, | ||
| + | if tag == ' | ||
| + | self.handle_on = True | ||
| + | def handle_endtag(self, | ||
| + | if tag == ' | ||
| + | self.handle_on = False | ||
| + | def get_data(self): | ||
| + | return '' | ||
| + | ``` | ||
| + | |||
| + | --- | ||
| + | |||
| + | # Airfoil Generator Python Code Cont | ||
| + | |||
| + | ```python | ||
| + | a = response.read() | ||
| + | parser = NACA4DIGIT_PRE_STRIP() | ||
| + | parser.feed(a) | ||
| + | raw_naca4digit=parser.get_data().split(' | ||
| + | |||
| + | naca4digit = [d for d in raw_naca4digit if d is not '' | ||
| + | half_naca4digit = naca4digit[: | ||
| + | naca4digit = [] | ||
| + | for p in half_naca4digit: | ||
| + | xyz = [float(d) | ||
| + | xyz.append(0.0) | ||
| + | naca4digit.append(xyz) | ||
| + | naca4digit.append([0, | ||
| + | |||
| + | halfcrv = rs.AddCurve(naca4digit) | ||
| + | otherhalfcrv = rs.MirrorObject(halfcrv, | ||
| + | |||
| + | crv =rs.JoinCurves([otherhalfcrv, | ||
| + | upper_crv = rs.ScaleObject(crv, | ||
| + | bottom_crv = rs.ScaleObject(crv, | ||
| + | rs.MoveObject(upper_crv, | ||
| + | |||
| + | a = rs.JoinCurves([bottom_crv, | ||
| + | ``` | ||
| + | |||
| + | --- | ||
| - | 2014-1-7 박동희 | + | # MP3 플레이어 케이스 3D 프린팅 |
| - | http://dh8.kr/workshop/lgworkshopshare.html | + | ; | ||
| - | </ | ||
| - | </ | ||
| - | </ | ||
| + | </ | ||
digitalfabricationworkshop/remark.1422944873.txt.gz · Last modified: 2018/07/18 14:09 (external edit)