출력용 파일의 종류와 특성 3D 프린팅 파일 이해 3D Printing 출력용 데이터 확정 및 제품출력학습개요 출력용 파일의 종류와 특징에 대해 이해할 수 있다 . STL 포맷의 개념과 형식을 파악할 수 있다 . 출력용 파일의 오류에 대해 이해할 수 있다 . 오류 검출 프로그램의 종류에 대해 파악할 수 있다 . STL OBJ AMF 오류 검출 프로그램 1 교시 . 출력용 파일의 종류와 특성 학습목표 학습내용1. 출력용 파일의 종류와 특성 1) STL( STereoLithography ) 3D 프린팅의 표준 입력 파일 포맷 , 표준삼각형언어 , 표준 테셀레이션 ( Tessellation ) 언어 STL 파일은 3D 모델에 대한 정보를 저장 색상 , 질감 또는 기타 일반적인 모델 속성을 나타내지 않는 3 차원 객체의 표면형상 3 차원 데이터의 서페이스 (surface) 모델을 삼각형 면에 근사시키는 방식 2) STL 파일 형식의 주요 목적 3D 객체 (Object) 의 표면 형상을 인코딩 테셀레이션이라는 간단한 개념을 사용하여 정보 인코딩 테셀레이션의 사례 : 타일 바닥이나 벽 연상1. 출력용 파일의 종류와 특성 3) 3D 모델링의 테셀레이션 (Tessellation) 미국 3D 시스템즈의 Albert Consulting Group 작은 삼각형에 대한 정보를 파일에 저장할 수 있으면 이 파일이 임의의 3D 모델의 표면을 완전히 설명할 수 있다는 것을 알았으며 이것이 STL 파일 형식의 기본 아이디어 테셀레이션 : 기하학 용어 , 일정한 형태의 도형들로 평면을 빈틈없이 채우는 것1. 출력용 파일의 종류와 특성 4) STL 포맷의 개념과 형식 종류 ❶ 삼각형의 세 똑짓점이 나열된 순서에 따른 오른손 법칙 사용 ❷ Normal Vector 를 축으로 반시계 방향으로 꼭짓점이 입력되어야 함 ❸ 각 Vertex( 버텍스 , 꼭짓점 ) 는 인접한 모든 삼각형의 Vertex 이어야 한다는 꼭짓점 규칙1. 출력용 파일의 종류와 특성 5) STL 파일로 내보내기 (SolidWor 오른쪽으로 이동 ), Angle Tolerance( 각도 공차 ) = 5 도 ❺ OK ( 확인 ) ❻ Save ( 저장 )1. 출력용 파일의 종류와 특성 6) STL 포맷의 꼭짓점 수와 모서리 수를 구하는 방법 삼각형이 가장 적게 사용되는 정사면체에서 삼각형으로 된 면이 4 개이므로 STL 포맷으로 변환하면 삼각형 4 개에 대한 정보를 가지게 된다 . 삼각형 각각의 꼭짓점 과 모서리의 총합 은 각각 12 개 이지만 , 정사면체의 꼭짓점과 모서리는 삼각형 면들과 중복되므로 중복된 꼭짓점과 모서리를 각각 하나라고 생각하면 꼭짓점 은 4 개 이고 모서리 는 6 개 가 된다 .1. 출력용 파일의 종류와 특성 7) STL 파일 형식은 삼각형 패싯에 대한 정보를 저장하는 방법 ❶ 아스키 (ASCII) 코드 형식 인코딩 문자열을 사용하여 형상을 표현하고 , 솔리드 (solid) 는 다수의 패싯 (facet) 을 포함하여 각각의 패싯은 패싯 노멀로 나타내는 노멀 벡터 (normal vector) 로 시작해 아웃터 루프 이후에 삼각형 꼭짓점 각각을 나타내는 3 개의 버텍스 ( vertax ) 문자열에 표기하고 엔드 루프와 엔드 패싯 (facet) 문으로 끝낸다 .1. 출력용 파일의 종류와 특성 7) STL 파일 형식은 삼각형 패싯에 대한 정보를 저장하는 방법 ❷ 바이너리 (Binary) 코드 형식 인코딩 바이너리 코드 형식은 표와 같이 80byte 의 Head information 과 헤더 다음에 총 삼각형 수는 4byte 의 부호없는 정수를 사용하여 표시하고 , 전체 면 (facets) 들의 개수에 각 삼각형 facet 을 3 개의 float 형으로 정의한 노멀 벡터 좌표와 9 개의 float 형으로 정의한 버텍스 좌표 정보로 표현됨1. 출력용 파일의 종류와 특성 8) AMF(Additive Manufacturing File) 파일 형식 ❶ AMF 파일 형식은 CAD 시스템과 3D 프린터 간의 상호 형식으로 사용하기 위한 기술 독립적인 XML 기반의 형식 ❷ STL 파일 위해 삼각형 세분화를 사용한다 . STL 파일의 크기가 조정될 때 해상도를 유지한다는 것은 훨씬 더 많은 삼각형을 도입한다는 의미이다 . 예를 들어 , 10 마이크로 미터 해상도에서 10cm 구는 20,000 개의 삼각형이 필요하며 , 동일한 해상도에서 10cm 구를 확장하면 삼각형의 양이 크게 증가하여 파일 크기가 훨씬 커진다 . AMF 는 3D 객체가 디지털 방식으로 저장되는 방식을 재설계하여 이러한 문제를 해결하려고 한다 .1. 출력용 파일의 종류와 특성 9 ) OBJ( Wavefront file format specification) 파일 ❶ Wavefront 의 Visualizer 고유 파일 포맷 ❷ DXF 나 IGES 처럼 ASCII 형태 ( 확장자 . obj ) 로 데이터 저장할 수도 있고 Binary 형식 ( 확장자 .mod) 으로 저장할 수도 있다 . ❸ ASCII 형태인 OBJ 로 저장하더라도 DXF 나 IGES 만큼 데이터의 용량이 커지지는 않음 ❹ MTL 이라는 별도의 Material 파일을 사용하므로 모델 정보 이외에 텍스쳐 맵이나 재질에 대한 데이터를 함께 옮길 때에는 관련된 MTL 데이터도 찾아서 같이 옮겨야 한다 . OBJ 포맷은 3D 모델 데이터의 한 형식으로 기하학적 정점 , 텍스처 좌표 , 정점 법선과 다각형 면들을 포함한다 . 3D 애니메이션 프로그램인 Wavefront Technologies 에 의해 개발되었고 , 거의 모든 3D 프로그램간의 호환이 잘 되어 있어 많이 사용되고 있다 . 하지만 매 프레임에 하나의 파일이 필요하고 많은 용량이 필요하며 OBJ 파일로 내보내고 불러오는데 오랜 시간이 걸린다는 단점이 있다 .2. 출력용 파일의 오류 종류 1) 클로즈 메시와 오픈 메시 출력용 파일로 변환된 모델에서 그림과 같이 메시 사이에 한 면이 비어 있는 형상으로 변환되어 오픈 메시가 생기는 경우 구멍이 있는 메시2. 출력용 파일의 오류 종류 2) 클로즈 메시와 구멍이 생겨 오픈 메시가 된 구체 안이 비워져 있지 않은 원을 매니폴드 형상 비매니폴드 형상은 실제 존재할 수 없는 구조로 3D 프린팅 , 부울 작업 , 유체 분석 등에 오류가 생길 수 있다 . 그림을 보면 , 올바른 구조인 매니폴드 형상은 하나의 모서리를 2 개의 면이 공유하고 있지만 , 올바르지 못한 비매니폴드 형상은 하나의 모서리를 3 개 이상의 면이 공유하고 있는 경우와 모서리를 공유하고 있지 않은 서로 다른 면에 의해 공유되는 정점을 나타낸다 . 매니폴드 형상과 비매니폴드 형상2. 출력용 파일의 오류 종류 4) 메시가 떨어져 있는 경우 그림과 같이 메시와 메시 사이가 완전히 떨어져 있을 경우가 있다 . 메시와 메시 사이의 거리가 멀지만 실제로는 눈으로 구분하기 힘들 정도로 작게 떨어져 있다 . 이런 부분을 제대로 수정하지 않고 3D 프린팅하는 경우 오류가 발생할 수 있다 . 다른 메시와 단절된 메시2. 출력용 파일의 오류 종류 5) 반전면 오른손 법칙에 의해 생긴 normal vector 가 반시계 방향으로 입력되어 인접된 면과 같은 방향으로 되어야 하지만 , 반대로 시계 방향으로 입력되어 인접된 면과 normal vector 의 방향이 반대 방향일 경우 반전 면이 생기게 된다 . 반전 면은 시각화 및 렌더링 문제뿐만 아니라 3D 프린팅을 하는 경우에 문제가 발생할 수 있다 . 노멀 벡터 방향의 차이로 생긴 반전 면2. 출력용 파일의 오류 종류 6) 오류를 수정하지 않고 출력할 경우 메시가 분홍색으로 표시된 모델의 경우 오류를 수정하지 않고 출력할 경우 비정상적으로 출력될 소지가 있다 . 오류를 수정하지 않고 출력한 모델과 수정 후 출력한 출력물과의 시간 차이3. 출력 문제점 1) 출력 문제점이란 ? 3D 프린팅을 하고자 할 경우 , 출력용 파일의 오류뿐만 아니라 출력물의 여러 가지 요소가 문제점이 될 수 있다 . 출력용 파일의 오류가 없더라도 그대로 출력한다면 수정과 출력 시간 등의 시간이 배로 들기 때문에 , 오류가 없더라도 다른 요소들을 미리 생각하고 오류들과 함께 문제점 리스트에 작성해 놓고 하나씩 수정한용 모델링 파일 포맷으로 변환을 지원한다 . Netfabb 은 3MF, STL, STL(ASCII), Color STL , GTS, AMF, X3D, X3D8, 3DS, Compressed Mesh, OBJ, PLY, VRML, Slice 를 지원하고 , Meshmixer 는 obj , dea , ply, stl (Binary), stl (ACSCII), AMF, wrl , smesh 를 지원한다 . 서로 지원하는 포맷이 같은 것도 있지만 , 다른 것도 있기 때문에 자신이 원하는 포맷에 따라 Netfabb 이나 Meshmixer 같은 프로그램 중에 선택해 사용하면 된다 .4. 최종 출력용 모델링 파일 형식으로 저장하기 2 ) 기타 3D 프린팅 파일 포맷 ❶ 3mf 색상 , 재질 , 재료 , 메시 등의 정보를 한 파일에 담을 수 있도록 한 것으로 유연한 형식으로 필요한 데이터를 추가할 수 있는데 마이크로소프트 주도로 STL 포맷을 대체하기 위해 만든 포맷이다 . ➋ ply OBJ 포맷의 부족한 확장성으로 인한 성질과 요소에 개념을 종합하기 위해 고안되었으며 , 90 년대 중반 스탠포드 그래픽 연구소에서 개발되 스탠포드삼각형 형식 또는 다각형 파일 형식으로 , 주로 3D 스캐너를 이용해 물건이나 인물 등을 3D 스캔한 스캔데이터를 저장하기 위해 설계되었다 . 표면의 법선 색상 , 투명도 좌표 및 데이터를 포함하고 , ply 포맷은 stl 포맷과 비슷하게 ASCII 형식과 binary 형식이 있다 . STL, AMF, OBJ 파일 형식 이외에도 사용되고 있는 포맷5. 문제점 리스트학습정리 1 STL ( STereoLithography ) 파일은 3D 프린팅의 표준 입력 파일로 사용되고 있고 , STL 포맷은 삼각형의 세 꼭짓점이 나열된 순서에 따른 오른손 법칙을 사용한다 . 2 OBJ 파일 형식은 3D 프린팅이나 그래픽 프로그램에서 중요한 파일 형식 중 하나로 색상 및 질감 정보를 저장할 수 있어 컬러 3D 프린팅에 선호되는 형식이며 애니메이션이 적용되지 않은 3Dhow}