DXF
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
DXF는 1982년 오토캐드 1.0의 일부로 도입된 CAD 데이터 교환 파일 형식이다. 오토캐드의 DWG 형식을 정확하게 표현하기 위해 개발되었으며, 내부 사양이 공개되어 다양한 CAD 편집기 및 뷰어에서 지원된다. ASCII 및 이진 형식을 모두 지원하며, 파일 구조는 HEADER, CLASSES, TABLES, BLOCKS, ENTITIES, OBJECTS, THUMBNAILIMAGE 섹션으로 구성된다. DXF는 버전별로 데이터 구조의 차이가 있으며, 3D CG 소프트웨어에서 폴리곤 형상 데이터의 범용 포맷으로 사용되지만 텍스처 매핑 정보를 주고받는 데는 한계가 있다.
더 읽어볼만한 페이지
- CAD 파일 포맷 - .dwg
.dwg는 CAD 도면 형식 중 가장 널리 쓰이는 형식으로, 1970년대 후반 Interact CAD 패키지의 기본 파일 형식이었으며, 오토데스크가 AutoCAD의 기반으로 라이선스를 받아 발전시켜왔고, 그래픽 데이터, 비 그래픽 데이터, 메타데이터 등 다양한 정보를 포함한다. - CAD 파일 포맷 - .3ds
.3ds는 3D 모델을 저장하는 이진 파일 형식이며, 청크 기반 구조를 통해 형식 확장을 지원하고 객체, 조명, 카메라 정보를 저장하지만, 삼각형 메시와 8.3 DOS 형식의 텍스처 파일 이름 등 몇 가지 제한 사항이 존재한다. - 파일 포맷 - 바로 가기
바로 가기는 운영체제에서 파일, 폴더, 프로그램, 웹 페이지에 대한 참조를 제공하는 기능 및 파일로, 사용자들이 원본에 빠르게 접근하도록 GUI 환경의 사용성을 향상시킨다. - 파일 포맷 - EXE
EXE 파일 형식은 운영 체제에 따라 다양한 종류가 있는 실행 파일의 한 형태로, DOS MZ 실행 파일에서 PE, PE32+까지 발전해 왔으며, 코드, 데이터, 스택을 별도 관리하고 재배치 항목을 통해 실행 환경에 유연하게 대응하는 특징을 가진다.
| DXF - [IT 관련 정보]에 관한 문서 | |
|---|---|
| 파일 정보 | |
| 개발 정보 | |
| 개발자 | 오토데스크 |
| 최초 출시일 | 1982년 12월 |
| 최신 버전 | u28.1.01 |
| 최신 버전 출시일 | 2013년 3월 |
| 관련 링크 | DXF 형식 (오토데스크 도움말) |
2. 역사
DXF는 1982년 12월, AutoCAD 1.0의 일부로 도입되었으며, AutoCAD 고유 파일 형식인 DWG (Drawing)의 데이터를 정확하게 표현하기 위해 만들어졌다.[3] 오랫동안 오토데스크는 규격을 공개하지 않아 DXF 파일을 올바르게 생성하기가 어려웠다. 현재 오토데스크는 불완전한[3] DXF 규격을 온라인으로 공개하고 있다.
2. 1. 초기 역사와 규격 공개
DXF는 1982년 12월, AutoCAD 1.0의 일부로 도입되었으며, AutoCAD 고유 파일 형식인 DWG (Drawing)의 데이터를 정확하게 표현하기 위해 만들어졌다.[3] 오랫동안 오토데스크는 규격을 공개하지 않아 DXF 파일을 올바르게 생성하기가 어려웠다. 현재 오토데스크는 불완전한[3] DXF 규격을 온라인으로 공개하고 있다.2. 2. 버전별 발전과 호환성
DXF는 1982년 12월, AutoCAD 1.0의 일부로 도입되었으며, AutoCAD 고유 파일 형식인 DWG (Drawing)의 데이터를 정확하게 표현하기 위해 만들어졌다. 오랫동안 오토데스크는 규격을 공개하지 않아 DXF 파일을 올바르게 생성하기가 어려웠다. 현재 오토데스크는 불완전한[3] DXF 규격을 온라인으로 공개하고 있다.AutoCAD 릴리스 10 (1988년 10월) 이상의 버전은 ASCII 및 이진 형태의 DXF를 모두 지원한다.[4] 이전 버전은 ASCII만 지원한다.
AutoCAD가 더욱 강력해지고 더 복잡한 객체 유형을 지원하게 되면서 DXF는 덜 유용해졌다. ACIS 솔리드 및 영역을 포함한 특정 객체 유형은 문서화되지 않았다. AutoCAD 2006의 동적 블록을 포함한 다른 객체 유형과 AutoCAD의 수직 시장 버전에 특정한 모든 객체는 부분적으로 문서화되었지만 다른 개발자가 지원할 수 있을 만큼 충분히 문서화되지 않았다. 이러한 이유로 많은 CAD 응용 프로그램은 오토데스크로부터 또는 Open Design Alliance로부터 비-네이티브 방식으로 라이선스를 받을 수 있는 DWG 형식을 사용한다. DXF 파일은 좌표 및 치수에 사용된 측정 단위를 지정하지 않는다.
DXF는 오토데스크의 "오토캐드"에서 서로 다른 버전 간의 데이터 호환을 목적으로 제정되었다.
내부 사양이 공개되어 있기 때문에 많은 CAD 편집기에서 다루어지게 되었고, 크로스 플랫폼에서 동작하는 뷰어도 존재한다. 또한, 사양 해설 서적도 시판되고 있다. 당연히 프로그래밍 지식이 있다면 사용자가 DXF 형식을 다루는 소프트웨어를 독자적으로 제작하는 것도 가능하다. 그러나, 그 사양에 기인하여 각 버전별 데이터 구조의 차이를 흡수할 수 없기 때문에, 각 CAD 소프트웨어가 모든 버전까지 대응하지 못하는 경우도 많다.
3. 파일 구조
DXF의 데이터 형식은 "태그된 데이터" 형식으로, 파일의 각 데이터 요소 앞에 그룹 코드라고 하는 정수 번호가 온다. 그룹 코드의 값은 어떤 유형의 데이터 요소가 뒤따르는지를 나타내며, 특정 객체(또는 레코드) 유형에 대한 데이터 요소의 의미를 나타낸다. 도면 파일의 거의 모든 사용자가 지정한 정보는 DXF 형식으로 표시될 수 있다.[6]
DXF는 R12 이전과 R13 이후에 따라 다른 구조를 가진다.
| 버전 | HEADER | CLASSES | TABLES | BLOCKS | ENTITIES | OBJECTS | THUMBNAILIMAGE |
|---|---|---|---|---|---|---|---|
| R12 이전 | 시스템·도면 정보 | NA | 선 종류·레이어·스타일 등 | 블록 도형 | 도형 요소 각종 | NA | NA |
| R13 이후 | C++ 라이브러리 | GROUP·MLINE |
3. 1. ASCII DXF 파일 구조
DXF의 ASCII 버전은 모든 텍스트 편집기로 읽을 수 있다.[5] DXF 파일의 기본 구성은 다음과 같다:- '''HEADER 섹션:''' 도면에 대한 일반 정보. 각 매개변수에는 변수 이름과 관련 값이 있다.
- '''CLASSES 섹션:''' 데이터베이스의 BLOCKS, ENTITIES, OBJECTS 섹션에 인스턴스가 나타나는 응용 프로그램 정의 클래스에 대한 정보를 담고 있다. 일반적으로 다른 프로그램과의 상호 운용성을 허용할 만큼 충분한 정보를 제공하지 않는다.
- '''TABLES 섹션:''' 이 섹션에는 명명된 항목의 정의가 포함되어 있다.
- 응용 프로그램 ID (APPID) 테이블
- 블록 레코드 (BLOCK\_RECORD) 테이블
- 치수 스타일 (DIMSTYLE) 테이블
- 레이어 (LAYER) 테이블
- 선 유형 (LTYPE) 테이블
- 텍스트 스타일 (STYLE) 테이블
- 사용자 좌표계 (UCS) 테이블
- 뷰 (VIEW) 테이블
- 뷰포트 구성 (VPORT) 테이블
- '''BLOCKS 섹션:''' 이 섹션에는 도면의 각 블록을 구성하는 개체를 설명하는 블록 정의 개체가 포함되어 있다.
- '''ENTITIES 섹션:''' 이 섹션에는 모든 블록 참조를 포함하여 도면 개체가 포함되어 있다.
- '''OBJECTS 섹션:''' AutoLISP 및 ObjectARX 응용 프로그램에서 사용하는 비그래픽 개체에 적용되는 데이터가 포함되어 있다.
- '''THUMBNAILIMAGE 섹션:''' DXF 파일의 미리 보기 이미지가 포함되어 있다.
- '''END OF FILE'''
DXF의 데이터 형식은 "태그된 데이터" 형식이라고 하며, 이는 "파일의 각 데이터 요소 앞에 그룹 코드라고 하는 정수 번호가 온다는 것을 의미한다. 그룹 코드의 값은 어떤 유형의 데이터 요소가 뒤따르는지를 나타낸다. 이 값은 또한 특정 객체(또는 레코드) 유형에 대한 데이터 요소의 의미를 나타낸다. 도면 파일의 거의 모든 사용자가 지정한 정보는 DXF 형식으로 표시될 수 있다."[6]
DXF는 R12 이전과 R13 이후에서 다른 구조를 가진다.
| 버전 | HEADER | CLASSES | TABLES | BLOCKS | ENTITIES | OBJECTS | THUMBNAILIMAGE |
|---|---|---|---|---|---|---|---|
| R12 이전 | 시스템·도면 정보 | NA | 선 종류·레이어·스타일 등 | 블록 도형 | 도형 요소 각종 | NA | NA |
| R13 이후 | C++라이브러리 | GROUP·MLINE |
3. 2. 데이터 형식
DXF 파일의 기본 구성은 다음과 같다.[5]- '''HEADER''' 섹션: 도면에 대한 일반적인 정보를 담고 있으며, 각 매개변수는 변수 이름과 관련 값을 가진다.
- '''CLASSES''' 섹션: 데이터베이스의 `BLOCKS`, `ENTITIES`, `OBJECTS` 섹션에 인스턴스가 나타나는 응용 프로그램 정의 클래스에 대한 정보를 담고 있다. 일반적으로 다른 프로그램과의 상호 운용성을 허용할 만큼 충분한 정보를 제공하지 않는다.
- '''TABLES''' 섹션: 명명된 항목의 정의를 포함한다.
- 응용 프로그램 ID (`APPID`) 테이블
- 블록 레코드 (`BLOCK_RECORD`) 테이블
- 치수 스타일 (`DIMSTYLE`) 테이블
- 레이어 (`LAYER`) 테이블
- 선 유형 (`LTYPE`) 테이블
- 텍스트 스타일 (`STYLE`) 테이블
- 사용자 좌표계 (`UCS`) 테이블
- 뷰 (`VIEW`) 테이블
- 뷰포트 구성 (`VPORT`) 테이블
- '''BLOCKS''' 섹션: 도면의 각 블록을 구성하는 개체를 설명하는 블록 정의 개체를 포함한다.
- '''ENTITIES''' 섹션: 모든 블록 참조를 포함하여 도면 개체를 포함한다.
- '''OBJECTS''' 섹션: AutoLISP 및 ObjectARX 응용 프로그램에서 사용하는 비그래픽 개체에 적용되는 데이터를 포함한다.
- '''THUMBNAILIMAGE''' 섹션: DXF 파일의 미리 보기 이미지를 포함한다.
- '''END OF FILE'''
DXF의 데이터 형식은 "태그된 데이터" 형식이라고 하며, "파일의 각 데이터 요소 앞에 그룹 코드라고 하는 정수 번호가 온다는 것을 의미한다. 그룹 코드의 값은 어떤 유형의 데이터 요소가 뒤따르는지를 나타낸다. 이 값은 또한 특정 객체(또는 레코드) 유형에 대한 데이터 요소의 의미를 나타낸다. 도면 파일의 거의 모든 사용자가 지정한 정보는 DXF 형식으로 표시될 수 있다."[6]
DXF는 R12 이전과 R13 이후에서 다른 구조를 가진다.
| 버전 | HEADER | CLASSES | TABLES | BLOCKS | ENTITIES | OBJECTS | THUMBNAILIMAGE |
|---|---|---|---|---|---|---|---|
| R12 이전 | 시스템·도면 정보 | NA | 선 종류·레이어·스타일 등 | 블록 도형 | 도형 요소 각종 | NA | NA |
| R13 이후 | C++ 라이브러리 | GROUP·MLINE |
4. 호환성 및 비판
DXF는 오토데스크의 오토캐드 버전 간 데이터 호환을 위해 만들어졌지만, 여러 문제점과 한계점을 가지고 있다.
'''장점:'''
- 내부 사양이 공개되어 있어 다양한 CAD 편집기에서 지원하고, 크로스 플랫폼 뷰어도 존재한다.
- 프로그래밍 지식이 있다면 사용자가 직접 DXF 형식을 다루는 소프트웨어를 개발할 수 있다.
- 대부분의 3DCG 소프트웨어에서 폴리곤 형상 데이터의 범용 포맷으로 지원된다.
'''단점:'''
- 각 버전별 데이터 구조의 차이로 인해 모든 CAD 소프트웨어가 모든 DXF 버전을 완벽하게 지원하지 못하는 경우가 많다.
- UV 매핑 등의 질감 정보를 주고받을 수 없어, 최근에는 Wavefront obj 형식이나 3ds 맥스 형식이 더 많이 사용된다.
- 포괄적인 문서가 존재하지 않아,[3] 대안으로 SVG, DWF, EPS와 같은 개방형 파일 형식이 고려되기도 한다.
- DXF 파일은 좌표 및 치수에 사용된 측정 단위를 지정하지 않는다.
하지만, 이러한 단점에도 불구하고 DXF (및 DWG)는 ISO에서 사용하기 위한 CAD 파일 형식으로 여전히 선호되고 있다.[8]
4. 1. 호환성
AutoCAD 릴리스 10(1988년 10월) 이상의 버전은 ASCII 및 이진 형태의 DXF를 모두 지원한다.[4] 이전 버전은 ASCII만 지원한다.AutoCAD가 더욱 강력해지고 더 복잡한 객체 유형을 지원하게 되면서 DXF는 덜 유용해졌다. ACIS 솔리드 및 영역을 포함한 특정 객체 유형은 문서화되지 않았다. AutoCAD 2006의 동적 블록을 포함한 다른 객체 유형과 AutoCAD의 수직 시장 버전에 특정한 모든 객체는 부분적으로 문서화되었지만 다른 개발자가 지원할 수 있을 만큼 충분히 문서화되지 않았다. 이러한 이유로 많은 CAD 응용 프로그램은 오토데스크로부터 또는 Open Design Alliance로부터 비-네이티브 방식으로 라이선스를 받을 수 있는 DWG 형식을 사용한다. DXF 파일은 좌표 및 치수에 사용된 측정 단위를 지정하지 않는다.
대부분의 CAD 시스템과 많은 벡터 그래픽 패키지가 DXF 파일의 가져오기 및 내보내기를 지원하며, 특히 Adobe 제품, Inkscape 및 블렌더가 있다. 일부 CAD 시스템은 DXF를 기본 형식으로 사용하며, 특히 QCAD 및 LibreCAD가 있다. DXF는 오토데스크의 "오토캐드"에서 서로 다른 버전 간의 데이터 호환을 목적으로 제정되었다.
내부 사양이 공개되어 있기 때문에 많은 CAD 편집기에서 다루어지게 되었고, 크로스 플랫폼에서 동작하는 뷰어도 존재한다. 당연히 프로그래밍 지식이 있다면 사용자가 DXF 형식을 다루는 소프트웨어를 독자적으로 제작하는 것도 가능하다. 그러나, 그 사양에 기인하여 각 버전별 데이터 구조의 차이를 흡수할 수 없기 때문에, 각 CAD 소프트웨어가 모든 버전까지 대응하지 못하는 경우도 많다.
대부분의 3DCG 소프트웨어에서는 폴리곤 형상 데이터의 범용 포맷으로 지원되고 있지만, UV 매핑 등의 질감 정보를 주고받을 수 없다는 점에서 최근에는 Wavefront obj 형식이나 3ds 맥스 형식이 사용되는 경우가 많다.
4. 2. 비판 및 대안
포괄적인 문서가 존재하지 않기 때문에,[3] 종종 SVG (W3C에서 정의한 개방형 형식), DWF (오토데스크[7]에서 정의한 개방형 형식) 또는 심지어 EPS (ISO/IEC 표준 29112:2018)와 같은 대안 개방형 파일 형식에 대한 고려가 이루어진다. 그러나 DXF (및 DWG)는 ISO에서 사용하기 위한 CAD 파일 형식으로 여전히 선호된다.[8]DXF는 오토데스크의 "오토캐드"에서 서로 다른 버전 간의 데이터 호환을 목적으로 제정되었다. 내부 사양이 공개되어 있기 때문에 많은 CAD 편집기에서 다루어지게 되었고, 크로스 플랫폼에서 동작하는 뷰어도 존재한다. 또한, 사양 해설 서적도 시판되고 있다. 당연히 프로그래밍 지식이 있다면 사용자가 DXF 형식을 다루는 소프트웨어를 독자적으로 제작하는 것도 가능하다. 그러나, 그 사양에 기인하여 각 버전별 데이터 구조의 차이를 흡수할 수 없기 때문에, 각 CAD 소프트웨어가 모든 버전까지 대응하지 못하는 경우도 많다.
대부분의 3DCG 소프트웨어에서는 폴리곤 형상 데이터의 범용 포맷으로 지원되고 있지만, UV 매핑 등의 질감 정보를 주고받을 수 없다는 점에서 최근에는 Wavefront obj 형식이나 3ds 맥스 형식이 사용되는 경우가 많다.
5. 지원 소프트웨어
DXF는 다양한 소프트웨어에서 지원된다. DXF 파일을 지원하는 소프트웨어는 크게 웹 애플리케이션, 편집기, 뷰어, 파일 형식 변환, 라이브러리, 3D CG 소프트웨어 및 드로우 소프트웨어로 나눌 수 있다.
웹 애플리케이션, 편집기, 뷰어, 3D CG 소프트웨어 및 드로우 소프트웨어에 대한 자세한 내용은 하위 섹션을 참고하면 된다.
파일 형식 변환
- DWF Writer
- Teigha File Converter
- ReViPS
라이브러리
- Teigha Xtension SDK (DWGdirect)
- VoiCeAPI
5. 1. 웹 애플리케이션
- AutoCAD 360
- A360 Viewer
- Teigha Cloud
5. 2. 편집기
- AutoCAD, AutoCAD LT, AutoCAD Architecture, AutoCAD Civil 3D, AutoCAD Electrical, AutoCAD Map 3D, AutoCAD Mechanical
- ADS - ADS-win, ADS-LAX, ADS-LA
- ANDES - ANDES-ProWin, ANDES ProWinII, ANDES 本管Master, ANDES 電設Win, ANDES 水道Master
- ARCDRAW
- CADWe'll - CADWe'll CAPE, CADWe'll Tfas
- ArchiCAD
- CAE2D
- CADAM Drafting
- IntelliCAD
- Jw cad
- LibreCAD
- MicroStation
- M-Draf - M-Draf Suite, M-Draf Spirit, M-Draf LT
- NX
- POWERSP
- Strata Design - Strata Design 3D CX, Strata Design 3D CXi7, Strata Design 3D SE7, Strata Design 3D SE
- VectorWorks - Vectorworks Designer, Vectorworks Architect, Vectorworks Landmar, Vectorworks Spotlight, Vectorworks Fundamentals
- VoiCe
- 도노 래피드(図脳RAPID)
5. 3. 뷰어
- DWG TrueView
- Design Review
- Volo view express
- Teigha Viewer
- de·caff Viewer
- JETCAM CAD Viewer
- VoiCeFREE
5. 4. 3D CG 소프트웨어 및 드로우 소프트웨어
대부분의 3DCG 소프트웨어에서는 폴리곤 형상 데이터의 범용 포맷으로 DXF를 지원하고 있지만, UV 매핑 등의 질감 정보를 주고받을 수 없다는 점에서 최근에는 Wavefront obj 형식이나 3ds 맥스 형식이 사용되는 경우가 많다. 3D CG 소프트웨어로 설계 도면 정보를 포함하는 데이터를 처리할 수 있는 것은 적다.- Adobe Illustrator
- Blender
- CorelDRAW
- Inkscape
- Metasequoia
- Poser
- Shade
- STAR(T) Edition
- 육각대왕(六角大王)・육각대왕 슈퍼(六角大王Super)
참조
[1]
웹사이트
DXF specifications
http://images.autode[...]
[2]
웹사이트
FAQS.org
http://www.faqs.org/[...]
[3]
웹사이트
What is DXF?
https://ezdxf.readth[...]
Manfred Moitzi
2023-10-27
[4]
서적
The CAD guidebook : a basic manual for understanding and improving computer-aided design
https://www.worldcat[...]
Marcel Dekker
2003
[5]
웹사이트
DXF File Structure
http://www.autodesk.[...]
[6]
웹사이트
Chapter 1 -- DXF Format
http://www.autodesk.[...]
Autodesk.com
[7]
웹사이트
DWF files
https://www.adobe.co[...]
Adobe 2023
2023-10-27
[8]
웹사이트
ISO Central Secretariat requirements - FAQ for graphics (formats and files)
https://www.iso.org/[...]
ISO 2002
2023-10-27
[9]
웹사이트
DXF Reference
http://usa.autodesk.[...]
2017-03-15
[10]
인용
DXF specifications
http://images.autode[...]
[11]
문서
http://docs.autodesk[...]
[12]
문서
http://webcache.goog[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com