입체조형 STL (.stl)
3D 표준표준 삼각형 언어(STL, 스테레오리소그래피로도 알려짐)는 원시 삼각형 면을 사용하여 단단한 3D 객체의 표면 형상을 설명하는 3D 프린팅 및 쾌속 조형 산업의 범용적이고 필수적인 포맷입니다.
OBJ을(를) STL(으)로 변환
무료 브라우저 내 OBJ-STL 변환기. 기기에서 파일을 즉시 변환하세요.
검사 및 메타데이터
운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 STL 파일을 식별합니다:
바이트 단위 헤더 시그니처 (매직 바이트)
운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 STL 파일을 식별합니다:
16진수 시그니처 (오프셋 0):
73 6F 6C 69 64ASCII 표현: solid
표준화: 3D Systems Stereolithography Specification
기술 사양
| 컨테이너 아키텍처 | ASCII format (starting with 'solid') or Binary format (80-byte header + 32-bit triangle count + 50-byte facet records) |
| 압축 | Uncompressed raw triangular facets |
| 바이트 엔디안 | Little-Endian (Intel x86) for binary STL |
| 색 공간 | None (monochrome geometry; proprietary VisCAM/Magics color hacks exist) |
| 채널 및 구조 | Triangular facets: surface normal vector (I, J, K) and three vertex coordinates (X, Y, Z) |
| 최대 크기 | Unbounded 3D physical coordinates (typically measured in millimeters) |
| 투명도 | None (solid physical objects) |
| 스트리밍 및 프로그레시브 | Sequential facet streaming allows continuous slice-by-slice slicing |
기술 비교 매트릭스: STL 대 경쟁사
| 기술적 속성 | STL (현재) | OBJ | 3MF | STEP |
|---|---|---|---|---|
| 3D 프린팅 슬라이서 채택률 | 100% 범용 표준 | 범용 지원 | 현대적 후속 표준 | CAD 엔지니어링 표준 |
| 색상 및 텍스처 지원 | 없음 (순수 표면 형상) | 전체 UV 텍스처 매핑 | 전체 색상, 재질 및 멀티 익스트루더 | 파라메트릭 단색 |
| 면 구조 | 독립된 삼각형 면 | 연결된 공유 정점 메시 | 공유 정점 인덱스 메시 | 정밀 파라메트릭 곡선 (NURBS) |
| 단위 정의 | 단위 없음 (mm로 가정) | 단위 없음 (미터/mm로 가정) | 명시적 단위 (mm, cm, 인치) | 명시적 엔지니어링 단위 |
일반적인 손상 모드 및 헥스 복구 가이드
3D 슬라이서에 '모델이 매니폴드가 아님 / 비매니폴드 모서리를 포함함' 경고가 표시됨.
근본 원인: 삼각형 메시의 구멍, 자체 교차하는 삼각형 또는 반전된 표면 법선.
복구: File2File 3D 메시 복구 도구 또는 Netfabb를 사용하여 메시를 방수 상태로 만드세요.
보안 분석 및 파서 공격 벡터
바이너리 STL 파서는 32비트 삼각형 개수를 평가하며, 이 과정에서 정수 오버플로가 발생하여 작은 힙 할당 및 범위를 벗어난 쓰기로 이어질 수 있습니다.
알려진 공격 벡터
- triangle_count * 50바이트 메모리 할당 중 정수 오버플로.
- 실제 파일 크기가 선언된 삼각형 개수보다 작을 때 발생하는 버퍼 초과 읽기.
- 수 gigabyte 규모의 삼각형 할당을 통한 서비스 거부(DoS) 공격.
방어적 모범 사례:
역사적 배경 및 주요 이력
주요 장점
- 3D 프린팅 분야의 독보적인 글로벌 표준: 모든 슬라이서(PrusaSlicer, Cura, Bambu Studio) 및 CAM 소프트웨어의 100% 지원.
- 단순하고 컴팩트한 바이너리 포맷: 정확히 84바이트의 헤더와 삼각형 면당 50바이트로 구성.
- 적층 제조 툴패스 생성에 필수적인 방수(Watertight) 표면 경계를 직접 표현.
기술적 제한 사항 및 단점
- 색상, 재질, 텍스처에 대한 지원 전무: 풀컬러 3D 프린트를 네이티브로 표현할 수 없음.
- 곡면은 수천 개의 평면 삼각형으로 근사화되어야 하므로 폴리곤 수가 크게 증가함.
- 물리적 측정 단위가 지정되지 않음(슬라이서가 밀리미터 또는 인치로 가정해야 함).
흥미로운 기술적 상식
- 척 헐은 1986년에 3D 프린팅 특허를 취득하고, 1987년에 SLA-1 프린터에 3D 모델을 공급하기 위해 STL 포맷을 만들었습니다.
- STL 파일에는 단위 메타데이터가 전혀 없습니다. '10'이라는 치수를 가진 큐브는 슬라이서 설정에 따라 10밀리미터, 10미터 또는 10인치를 의미할 수 있습니다.
- 바이너리 STL 파일에는 어떤 텍스트든 포함할 수 있는 80바이트 헤더가 있지만, 단어 'solid'로 시작해서는 안 됩니다. 그렇지 않으면 일부 디코더가 ASCII 파일로 오인할 수 있습니다.
자주 묻는 기술 질문
어떤 프로그램이 STL 파일을 여나요?
Cura, PrusaSlicer, Bambu Studio 같은 3D 프린팅 슬라이서, Fusion 360, Blender 같은 CAD 프로그램에서 STL 파일을 열거나 File2File.app에서 온라인으로 즉시 볼 수 있습니다.
ASCII STL과 Binary STL의 차이점은 무엇인가요?
Binary STL은 ASCII STL보다 대략 5~6배 작고 훨씬 빠르게 로드되므로 Binary STL이 3D 프린팅에 선호되는 선택입니다.
STL 파일을 OBJ나 GLB로 어떻게 변환할 수 있나요?
File2File.app을 사용하여 브라우저에서 직접 STL 파일을 텍스처가 적용된 OBJ 모델이나 웹용 GLB 파일로 변환할 수 있습니다.