KR101573168B1 - 3차원 모델의 비트맵 생성 장치 및 방법 - Google Patents

3차원 모델의 비트맵 생성 장치 및 방법 Download PDF

Info

Publication number
KR101573168B1
KR101573168B1 KR1020150029747A KR20150029747A KR101573168B1 KR 101573168 B1 KR101573168 B1 KR 101573168B1 KR 1020150029747 A KR1020150029747 A KR 1020150029747A KR 20150029747 A KR20150029747 A KR 20150029747A KR 101573168 B1 KR101573168 B1 KR 101573168B1
Authority
KR
South Korea
Prior art keywords
pixel
output direction
bitmap
unit
dimensional
Prior art date
Application number
KR1020150029747A
Other languages
English (en)
Inventor
최광민
장성호
박재영
한상훈
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020150029747A priority Critical patent/KR101573168B1/ko
Application granted granted Critical
Publication of KR101573168B1 publication Critical patent/KR101573168B1/ko
Priority to US15/059,718 priority patent/US10035297B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00795Reading arrangements
    • H04N1/00827Arrangements for reading an image from an unusual original, e.g. 3-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
    • B33Y50/00Data acquisition or data processing for additive manufacturing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4097Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using design data to control NC machines, e.g. CAD/CAM
    • G05B19/4099Surface or curve machining, making 3D objects, e.g. desktop manufacturing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1835Transforming generic data
    • G06K15/1836Rasterization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1867Post-processing of the composed and rasterized print image
    • G06K15/1889Merging with other data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Geometry (AREA)
  • Chemical & Material Sciences (AREA)
  • Materials Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Generation (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)
  • Architecture (AREA)

Abstract

3차원 모델의 비트맵 생성 장치 및 방법이 개시된다. 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 픽셀 열 생성부, 상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 교차점 계산부, 상기 각 픽셀 열을 래스터화(rasterize)하고, 상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 래스터화부 및 상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 비트맵 생성부를 포함한다.

Description

3차원 모델의 비트맵 생성 장치 및 방법{APPARATUS AND METHOD FOR GENERATING BITMAP OF 3-DIMENSIONAL MODEL}
본 발명의 실시예들은 3차원 프린팅을 위한 3차원 모델의 비트맵 생성 기술과 관련된다.
폴리 젯(Poly jet), MJM(Multi Jet Modeling)과 같은 재료 분사 방식의 3차원 프린팅 방식의 경우, 프린팅 과정에서 공간에 떠 있는 부분이 흘러내리지 않도록 지지하기 위한 지지재(support material)가 필요하며, 3차원 모델을 프린팅하기 전에 지지재가 형성되어야 할 영역을 결정하여야 한다.
이와 관련하여, 종래 기술인 대한민국 등록특허 10-0450358호는 3차원 모델 출력 시 출력 대상을 3차원 프린터의 출력 방향에 수직한 방향으로 분할하여 3차원 프린터의 출력 방향에 수직한 방향으로 파트재와 지지재 영역을 계산하여 출력하도록 하고 있다.
그러나, 종래 기술은 각 층별 파트재 위치를 구한 후, 각 층과 각 층 상단의 모든 파트재들의 비트맵을 병합(OR)하고, 병합한 비트맵과 해당 층의 파트재 위치를 나타내는 비트맵의 부울 차(XOR)를 구하여 해당 층의 지지재 비트맵을 완성한 후에야 3차원 프린터에서 출력을 시작할 수 있다. 결국, 종래 기술의 경우 최상단 층부터 지지재 영역의 위치를 차례대로 계산해야 하므로 병렬화가 불가능하며 매우 큰 계산량이 필요하다.
또한, 종래 기술의 경우, 3차원 프린터에서 출력을 시작하는데 필요한 최하단 층의 파트재와 지지재 비트맵부터 우선적으로 계산할 수가 없으며, 최하단 층의 지지재 영역을 알려면 모든 상단 층의 파트재 영역을 계산해야 한다.
따라서, 종래 기술의 경우, 모든 층의 파트재 비트맵을 생성한 후에야 3차원 프린터에서 출력을 시작할 수 있다.
대한민국 등록특허 10-0450358호 (2004. 09. 16)
본 발명의 실시예들은 3차원 프린팅을 위한 3차원 모델의 비트맵 생성 장치 및 방법을 제공하기 위한 것이다.
본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 픽셀 열 생성부, 상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 교차점 계산부, 상기 각 픽셀 열을 래스터화(rasterize)하고, 상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 래스터화부 및 상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 비트맵 생성부를 포함한다.
상기 래스터화부는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 상기 교차점 사이에 위치한 픽셀을 지지재 영역으로 결정할 수 있다.
상기 래스터화부는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 최초 교차점 아래에 위치한 픽셀을 지지재 영역으로 결정할 수 있다.
3차원 모델의 비트맵 생성 장치는 상기 비트맵을 3차원 프린터로 전송하는 전송부를 더 포함할 수 있다.
상기 전송부는, 상기 출력 방향을 기준으로 상기 출력 방향에 수직인 평면의 비트맵을 순차적으로 전송할 수 있다.
본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 방법은 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계, 상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 단계, 상기 각 픽셀 열을 래스터화(rasterize)하는 단계, 상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 단계 및 상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 단계를 포함한다.
상기 결정하는 단계는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 상기 교차점 사이에 위치한 픽셀을 지지재 영역으로 결정할 수 있다.
상기 결정하는 단계는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 최초 교차점 아래에 위치한 픽셀을 지지재 영역으로 결정할 수 있다.
3차원 모델의 비트맵 생성 방법은 상기 비트맵을 3차원 프린터로 전송하는 단계를 더 포함할 수 있다.
상기 전송하는 단계는, 상기 출력 방향을 기준으로 상기 출력 방향에 수직인 평면의 비트맵을 순차적으로 전송할 수 있다.
본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 픽셀 열 생성부, 상기 출력 방향에 수직인 임의의 평면에 대한 상기 출력 방향의 좌표를 기준 좌표로 설정하는 기준 좌표 설정부, 상기 복수의 픽셀 열 각각에 대하여, 상기 출력 방향의 좌표가 상기 기준 좌표 이상인, 각 픽셀 열과 3차원 모델의 최초 교차점을 계산하는 교차점 계산부, 상기 각 픽셀 열에서 상기 기준 좌표를 가지는 픽셀을 래스터화하고, 상기 최초 교차점의 존재 여부에 기초하여 상기 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정하는 래스터화부 및 상기 래스터화된 픽셀을 병합하여, 상기 평면에 대한 비트맵을 생성하는 비트맵 생성부를 포함한다.
상기 지지재 영역 결정부는, 상기 최초 교차점이 존재하는 경우, 빈 공간에 해당하는 픽셀을 지지재 영역으로 결정할 수 있다.
상기 기준 좌표 설정부는, 상기 평면에 대한 비트맵 생성이 완료된 경우, 상기 기준 좌표를 상기 기준 좌표를 상기 출력 방향의 픽셀 크기만큼 증가시키고, 상기 교차점 계산부 및 상기 래스터화부는, 상기 기준 좌표가 상기 3차원 공간에서 최상단 평면의 상기 출력 방향 좌표 또는 상기 3차원 모델에 대한 상기 출력 방향의 최상단 좌표보다 큰 경우, 상기 최초 교차점 계산 및 상기 래스터화를 종료할 수 있다.
3차원 모델의 비트맵 생성 장치는 상기 평면에 대한 비트맵을 3차원 프린터로 전송하는 전송부를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 방법은 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계, 상기 출력 방향에 수직인 임의의 평면에 대한 상기 출력 방향의 좌표를 기준 좌표로 설정하는 단계, 상기 복수의 픽셀 열 각각에 대하여, 상기 출력 방향의 좌표가 상기 기준 좌표 이상인, 각 픽셀 열과 3차원 모델의 최초 교차점을 계산하는 단계, 상기 각 픽셀 열에서 상기 기준 좌표를 가지는 픽셀을 래스터화하는 단계, 상기 최초 교차점의 존재 여부에 기초하여, 상기 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정하는 단계 및 상기 래스터화된 픽셀을 병합하여, 상기 평면에 대한 비트맵을 생성하는 단계를 포함한다.
상기 결정하는 단계는, 상기 최초 교차점이 존재하는 경우, 빈 공간에 해당하는 픽셀을 지지재 영역으로 결정할 수 있다.
상기 3차원 모델의 비트맵 생성 방법은 상기 평면에 대한 비트맵 생성이 완료된 경우, 상기 기준 좌표를 상기 출력 방향의 픽셀 크기만큼 증가시키는 단계 및 상기 증가된 기준 좌표가 상기 3차원 공간에서 최상단 평면의 상기 출력 방향 좌표 또는 상기 3차원 모델에 대한 상기 출력 방향의 최상단 좌표 이하인 경우, 상기 계산하는 단계로 되돌아가는 단계를 더 포함할 수 있다.
상기 3차원 모델의 비트맵 생성 방법은 상기 평면에 대한 비트맵을 3차원 프린터로 전송하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 기록매체에 저장된 컴퓨터 프로그램은 하드웨어와 결합되어, 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계, 상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 단계, 상기 각 픽셀 열을 래스터화(rasterize)하는 단계, 상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 단계 및 상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 단계를 실행시킬 수 있다.
본 발명의 일 실시예에 따른 기록매체에 저장된 컴퓨터 프로그램은 하드웨어와 결합되어, 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계, 상기 출력 방향에 수직인 임의의 평면에 대한 상기 출력 방향의 좌표를 기준 좌표로 설정하는 단계, 상기 복수의 픽셀 열 각각에 대하여, 상기 출력 방향의 좌표가 상기 기준 좌표 이상인, 각 픽셀 열과 상기 3차원 모델의 최초 교차점을 계산하는 단계, 상기 각 픽셀 열에서 상기 기준 좌표를 가지는 픽셀을 래스터화하는 단계, 상기 최초 교차점의 존재 여부에 기초하여, 상기 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정하는 단계 및 상기 래스터화된 픽셀을 병합하여, 상기 평면에 대한 비트맵을 생성하는 단계를 실행시킬 수 있다.
본 발명의 실시예들에 따르면, 비트맵 생성 시 파트재와 지지재 영역을 단일 실행 경로 안에서 한 번에 구할 수 있도록 하여, 비트맵 생성을 위한 계산량을 줄일 수 있다.
또한, 본 발명의 실시예들에 따르면, 각 층의 비트맵을 다른 층의 비트맵과 독립적으로 계산할 수 있도록 함으로써, 메모리 사용량을 현저히 줄일 수 있으며, 병렬 처리가 가능토록 할 수 있다.
또한, 본 발명의 실시예들에 따르면, 3차원 프린터의 출력 방향을 기초로 최하당 층의 비트맵부터 우선적으로 계산하여 3차원 프린터에서 즉시 출력을 시작할 수 있도록 함으로써, 출력을 위한 대기 시간을 줄일 수 있다.
도 1은 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도
도 2는 본 발명의 다른 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도
도 3는 본 발명의 또 다른 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도
도 4는 본 발명의 또 다른 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도
도 5는 픽셀 열의 예시도
도 6은 본 발명의 일 실시예에 따른 교차점 계산을 설명하기 위한 예시도
도 7은 본 발명의 일 실시예에 따른 지지재 영역 결정을 설명하기 위한 예시도
도 8은 본 발명의 일 실시예에 따른 비트맵 생성을 설명하기 위한 예시도
도 9는 본 발명의 다른 실시예에 따른 지지재 영역 결정을 설명하기 위한 예시도이다.
도 10은 본 발명의 일 실시예에 따른 교차점 계산 및 래스터화 과정을 설명하기 위한 예시도
도 11은 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 방법의 순서도
도 12는 본 발명의 다른 실시예에 따른 3차원 모델의 비트맵 생성 방법의 순서도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, “포함” 또는 “구비”와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 픽셀열 생성부(110), 교차점 계산부(120), 레스터화부(130), 비트맵 생성부(140)를 포함한다.
도시된 예에서, 3차원 모델의 비트맵 생성 장치는 3차원 모델을 입력 받아, 3차원 프린터의 출력을 위한 비트맵을 생성하기 위한 장치이다. 이때, 3차원 모델은 예를 들어, STL 포맷의 파일을 의미할 수 있다.
한편, 도 1에 도시된 3차원 모델의 비트맵 생성 장치는 3차원 프린터와 네트워크로 연결된 서버 내지는 퍼스널 컴퓨터 등과 같이 데이터 저장 및 연산 능력을 가진 장치의 일부 구성으로 구현될 수 있다. 다만, 반드시 이에 한정되는 것은 아니며, 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 일부 구성으로 구현될 수도 있다.
픽셀 열 생성부(110)는 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 출력 방향에 평행한 복수의 픽셀 열로 분할한다. 이때, 픽셀 열은 비트맵의 픽셀을 출력 방향으로 쌓아 올린 직육면체를 의미할 수 있다.
구체적인 예로, 도 5를 참조하면, 도시된 예에서 Z축 방향을 3차원 프린터의 출력 방향인 것으로 가정하면, 픽셀 열(510)은 각각의 픽셀을 Z축 방향으로 쌓아 올린 것을 의미한다. 한편, 도시된 예에서, X-Y 평면 상에 격자무늬로 표현된 부분(520)은 3차원 프린터의 출력 방향에 수직한 평면을 구성하는 픽셀들의 집합을 나타낸다.
교차점 계산부(120)는 픽셀 열 생성부(120)에 의해 생성된 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산한다.
구체적인 예로, 도 6을 참조하면, 도 6은 특정 픽셀 열(610)과 3차원 모델(620)을 Y축 방향에서 바라본 이차원 이미지를 도시하고 있다. 도시된 예와 같이, 3차원 공간 상에서 3차원 모델(620)이 존재하는 위치에 있는 픽셀 열(610)은 3차원 모델(620)의 윤곽선과 교차하게 된다. 따라서, 교차점 계산부(120)는 각각의 픽셀 열(610)과 3차원 모델(620)의 윤곽선이 교차하는 지점을 교차점(630)으로 계산할 수 있다.
예를 들어, 3차원 모델이 삼각형 메시(triangle mesh) 모델인 경우, 교차점 계산부(120)는 평면 테스트(plane test), 선분 함수(edge function) 등과 같은 기술을 이용하여, 교차점을 계산할 수 있다.
또 다른 예로, 3차원 모델이 파라메트릭(parametric) 모델인 경우, 교차점 계산부(120)는 3차원 모델의 각 표면을 나타내는 수식에 픽셀 열에 포함된 각 픽셀의 좌표를 대입하여, 교차점을 계산할 수 있다.
또한, 교차점 계산부(120)는 각 픽셀 열에 교차하는 3차원 모델의 기본 요소(예를 들어, 삼각형)를 빠르게 검색할 수 있도록 k-d 트리(k-d tree), R 트리(R tree), 다차원 세그먼트 트리 등과 같은 다차원 인덱싱 기술을 이용할 수 있다.
한편, 교차점 계산부(120)가 교차점을 계산하는 방법은 위에 열거된 예에 한정되는 것은 아니므로, 위에 열거된 예 외에도 3차원 모델과 픽셀 열의 교차점을 계산하기 위한 다양한 방법이 이용될 수 있다.
래스터화부(130)는 픽셀 열 생성부(130)에 의해 생성된 각 픽셀열을 래스터화(rasterize)하고, 교차점 계산부(120)에 의해 계산된 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재(support material) 영역을 결정한다. 이때, 지지재 영역은 3차원 프린터에 의한 3차원 모델의 출력 시 공중에 떠 있는 부분을 지지하기 위한 지지대인 지지재가 형성되는 영역을 의미한다.
구체적으로, 래스터화부(130)는 예를 들어, 주사선 변환(scan-line conversion) 등과 같은 래스터화 기술을 이용하여, 각 픽셀 열을 래스터화할 수 있다.
또한, 래스터화부(130)는 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀이 지지재 영역에 해당하는지 여부를 결정할 수 있다.
구체적으로, 도 7을 참조하면, 도 7에서 특정 픽셀 열(710)과 3차원 모델(720)의 교차점을 기준으로, 711, 712 및 713 영역은 빈 공간에 해당한다. 또한, 이들 빈 공간 중 711, 712 영역은 3차원 프린터에 의해 출력 시 물체가 공중에 떠 있는 영역에 대응하므로, 지지재가 형성되어야 하는 영역에 해당한다. 따라서, 래스터화부(130)는 래스터화된 픽셀 열(730)에서 빈 공간에 해당하는 픽셀 중 출력 방향(즉, Z 축 방향)을 기준으로 최초 교차점 아래에 있는 영역(711)에 포함된 픽셀과 교차점 사이의 영역(712)에 포함된 픽셀을 지지재 영역으로 결정할 수 있다.
비트맵 생성부(140)는 래스터화부(130)에 의해 래스터화된 각 픽셀 열을 병합하여, 3차원 모델에 대한 비트맵을 생성한다. 구체적인 예로, 도 8은 3차원 모델(810)과 3차원 모델(810)에 대한 비트맵(820)을 X-Z 평면상에 이차원으로 나타낸 예시도이다. 도시된 예에서, 3차원 모델(810)에 대한 비트맵(820)은 파트재 영역과 지지재 영역에 대한 정보를 모두 포함하고 있으며, 비트맵(820)에서 Z 좌표가 동일한 픽셀들로 이루어진 각 평면은 3차원 프린터에 의해 출력되는 각 층에 대응되는 비트맵에 해당한다. 즉, 도시된 예에서, 821에 해당하는 부분은 3차원 프린터에서 세 번째로 출력되는 층에 대한 비트맵에 해당한다.
도 2는 본 발명의 다른 실시예에 따른 비트맵 생성 장치의 구성도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 픽셀열 생성부(110), 교차점 계산부(120), 레스터화부(130), 비트맵 생성부(140) 및 전송부(150)를 포함한다.
도 2에 도시된 비트맵 생성 장치는 3차원 모델의 비트맵 생성 장치는 3차원 모델에 대한 비트맵을 생성하고, 생성된 비트맵을 3차원 프린터로 제공하기 위한 것으로, 예를 들어, 3차원 프린터와 네트워크로 연결된 서버 내지는 퍼스널 컴퓨터 등과 같이 데이터 저장 및 연산 능력을 가진 장치의 일부 구성으로 구현될 수 있다.
한편, 도시된 예에서, 픽셀열 생성부(110), 교차점 계산부(120), 레스터화부(130) 및 비트맵 생성부(140)는 도 1에 도시된 구성과 동일하므로, 이에 대한 상세한 설명은 생략한다.
전송부(150)는 비트맵 생성부(140)에 의해 생성된 비트맵을 3차원 프린터로 전송한다. 이때, 비트맵 전송을 위해 다양한 형태의 유/무선 네트워크 방식이 이용될 수 있다.
한편, 본 발명의 일 실시예에 따르면, 전송부(150)는 비트맵 생성부(140)에 의해 생성된 비트맵 중 3차원 출력 방향을 기준으로 출력 방향에 수직인 평면의 비트맵을 순차적으로 전송할 수 있다. 구체적으로, 도 8을 참조하면, 비트맵(820)에서 Z 좌표가 동일한 평면에 대한 비트맵은 3차원 프린터에 의해 출력되는 각 층에 대한 비트맵이며, Z 좌표가 작을수록 먼저 출력되는 층에 대한 비트맵이다. 따라서, 전송부(150)는 Z 좌표가 작은 평면의 비트맵부터 순차적으로 3차원 프린터로 전송함으로써, 전송량을 줄임과 동시에 전체 비트맵을 전송하기 전에도 즉각적으로 출력이 이루어질 수 있도록 할 수 있다.
도 3은 본 발명의 또 다른 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 픽셀 열 생성부(310), 기준 좌표 설정부(320), 교차점 계산부(330), 래스터화부(340) 및 비트맵 생성부(350)를 포함한다.
도 3에 도시된 3차원 모델의 비트맵 생성 장치는 3차원 프린터와 네트워크로 연결된 서버 내지는 퍼스널 컴퓨터 등과 같은 데이터 저장 및 연산 능력을 가진 장치의 일부 구성으로 구현될 수 있다. 다만, 반드시 이에 한정되는 것은 아니며, 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 일부 구성으로 구현될 수도 있다
한편, 픽셀 열 생성부(310)는 도 1 내지 도 2에 도시된 픽셀 열 생성부(110)와 동일한 구성이므로 이에 대한 상세한 설명은 생략한다.
기준 좌표 설정부(320)는 3차원 프린터의 출력 방향에 수직인 임의의 평면에 대한 출력 방향의 좌표를 기준 좌표로 설정한다. 예를 들어, 출력 방향이 3차원 공간 상의 Z축 방향과 평행한 것으로 가정하는 경우, 기준 좌표는 X-Y 평면에 평행한 임의의 평면에 대한 Z 축 좌표를 의미한다.
예를 들어, 기준 좌표 설정부(320)는 기준 좌표의 초기값을 출력 방향을 기준으로 최하 층에 해당하는 평면의 출력 방향의 좌표 값으로 설정하고, 기준 좌표 값을 가지는 평면에 대한 비트맵 생성이 완료된 경우, 기준 좌표를 출력 방향(즉, Z축 방향)의 픽셀 크기만큼 증가시킬 수 있다.
교차점 계산부(330)는 픽셀 열 생성부(310)에 의해 생성된 복수의 픽셀 열 각각에 대하여, 출력 방향의 좌표가 기준 좌표 설정부(320)에 의해 설정된 기준 좌표 이상인 각 픽셀 열과 3차원 모델의 최초 교차점을 계산한다. 즉, 도 1 및 도 2에 도시된 교차점 계산부(330)는 각 픽셀 열과 3차원 모델의 모든 교차점을 계산하는 반면, 도 3에 도시된 교차점 계산부(330)는 기준 좌표를 기준으로 최초 교차점만을 계산한다는 점에서 차이가 있다.
래스터화부(340)는 픽셀 열 생성부(310)에 의해 생성된 복수의 픽셀 열 각각에 대하여, 출력 방향의 좌표가 기준 좌표 설정부(320)에 의해 설정된 기준 좌표 값을 가지는 픽셀을 래스터화한다. 예를 들어, 기준 좌표 설정부(320)에 의해 설정된 출력 방향의 좌표가 3인 경우, 래스터화부(340)는 각 픽셀 열에서 출력 방향의 좌표가 3인 픽셀들을 래스터화할 수 있다.
한편, 래스터화부(340)는 교차점 계산부(330)에 의해 계산된 최초 교차점의 존재 여부에 기초하여, 래스터화된 픽셀열에서 빈 공간에 해당하는 픽셀 중 지지재 영역에 해당하는 픽셀을 결정한다.
한편, 기준좌표 설정부(320), 교차점 계산부(330) 및 래스터화부(340)의 구체적 동작에 관한 설명은 도 9 및 10을 참조하여 후술하기로 한다.
비트맵 생성부(350)은 래스터화부(340)에 의해 래스터화된 픽셀을 병합하여, 3차원 출력 방향에 수직인 평면에 대한 비트맵을 생성한다. 즉, 래스터화부(340)는 기준 좌표 설정부(320)에 의해 설정된 기준 좌표에 따라 3차원 프린터의 출력 방향을 기준으로 최하 층에 해당하는 평면에 포함된 모든 픽셀들을 래스터화한 후, 다음 층에 해당하는 평면에 포함된 픽셀들을 래스터화하게 된다. 따라서, 비트맵 생성부(350)는 래스터화부(340)에 의해 래스터화된 픽셀을 병합하여, 3차원 프린터의 출력 방향을 기준으로 최하 층에 대한 평면의 비트맵부터 순차적으로 생성할 수 있게 된다.
도 4는 본 발명의 또 다른 실시예에 따른 3차원 모델의 비트맵 생성 장치의 구성도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 장치는 픽셀 열 생성부(310), 기준 좌표 설정부(320), 교차점 계산부(330), 래스터화부(340), 비트맵 생성부(350) 및 전송부(360)를 포함한다.
도 4에 도시된 3차원 모델의 비트맵 생성 장치는 3차원 프린터로 3차원 모델에 대한 비트맵을 제공하기 위한 것으로, 예를 들어, 3차원 프린터와 네트워크로 연결된 서버 내지는 퍼스널 컴퓨터 등과 같은 데이터 저장 및 연산 능력을 가진 장치의 일부 구성으로 구현될 수 있다.
한편, 도시된 예에서, 픽셀 열 생성부(310), 기준 좌표 설정부(320), 교차점 계산부(330), 래스터화부(340), 비트맵 생성부(350)는 도 3에 도시된 구성과 동일하므로, 이에 대한 상세한 설명은 생략한다.
전송부(360)는 비트맵 생성부(350)에 의해 생성된 비트맵을 3차원 프린터로 전송한다. 이때, 비트맵 전송을 위해 다양한 형태의 유/무선 네트워크 방식이 이용될 수 있다.
구체적으로, 도 3에서 설명한 바와 같이 비트맵 생성부(350)는 3차원 프린터의 출력 방향을 기준으로, 최하 층에 대한 비트맵부터 순차적으로 생성하게 된다. 이에 따라 전송부(360)는 출력 방향을 기준으로 최하 층에 대한 비트맵부터 순차적으로 3차원 프린터로 전송함으로써, 전송량을 줄임과 동시에 전체 비트맵을 전송하기 전에도 즉각적으로 출력이 이루어질 수 있도록 할 수 있다.
도 9는 본 발명의 일 실시예에 따른 지지재 영역 결정을 설명하기 위한 예시도이다.
도 9에서, 3차원 프린터의 출력 방향은 Z 축 방향인 것으로 가정한다.
도 9를 참조하면, 기준 좌표 설정부(320)에 의해 설정된 기준 좌표가 c1인 것으로 가정하면, 픽셀 열 910의 경우, 3차원 모델(930)과의 최초 교차점(911)이 존재한다. 또한, 픽셀 열 910에서 Z 축 좌표가 c1인 픽셀은 빈 공간에 해당한다. 따라서, 래스터화부(340)는 픽셀 열 910에서 Z 축 좌표가 c1인 픽셀을 지지재 영역에 해당하는 픽셀으로 결정할 수 있다.
한편, 기준 좌표가 c2 인 것으로 가정하면, 픽셀 열 910에서 3차원 모델(930)과의 최초 교차점(912)이 존재한다. 또한, 픽셀 열 910에서 Z 축 좌표가 c2인 픽셀은 빈 공간에 해당하는 픽셀이다. 따라서, 기준 좌표 설정부(320)는 픽셀 열 910에서 Z 축 좌표가 c2인 픽셀을 지지재 영역에 해당하는 픽셀으로 결정할 수 있다.
한편, 기준 좌표가 c3인 것으로 가정하면, 픽셀 열 910에서 3차원 모델(930)과의 최초 교차점이 존재하지 않는다. 따라서, 기준 좌표 설정부(320)는 픽셀 열 910에서 Z 축 좌표가 c3인 픽셀을 빈 공간에 해당하는 픽셀으로 결정할 수 있다.
한편, 픽셀 열 920의 경우, 3차원 모델(930)과 교차하지 않으므로, 기준 좌표가 c1, c2 및 c3인 경우, 모두 최초 교차점은 존재하지 않는다. 따라서, 기준 좌표 설정부(320)는 픽셀열 920에서 Z 축 좌표가 c1, c2 및 c3인 픽셀을 빈 공간에 해당하는 픽셀로 결정할 수 있다.
도 10은 본 발명의 일 실시예에 따른 교차점 계산 및 래스터화 과정을 설명하기 위한 예시도이다.
도 10에서 3차원 프린터의 출력 방향은 Z 축 방향인 것으로 가정한다. 또한, 각 픽셀 열은 11개의 픽셀로 구성되며, 픽셀 열에 포함된 각 픽셀의 Z 축 방향의 크기는 1인 것으로 가정한다. 또한, 도시된 예에서, c는 기준 좌표를 의미한다.
우선, 기준 좌표 설정부(320)는 출력 방향을 기준으로 최하층에 대한 평면의 Z 축 좌표를 기준 좌표(즉, c=1)로 설정할 수 있다. 이후, 교차점 계산부(330)는, 각각의 픽셀 열에 대하여 Z 축 좌표가 기준 좌표인 1 이상인 최초 교차점(1010)을 계산할 수 있다. 이후, 래스터화부(340)는 각각의 픽셀 열에서 Z 축 좌표가 기준 좌표인 1의 값을 가지는 픽셀(1020)을 래스터화하고, 래스터화된 픽셀이 지지재 영역에 해당하는지 여부를 판단할 수 있다. 도시된 예에서, 기준 좌표인 1의 값을 가지는 픽셀(1020) 이 빈 공간에 해당하는 경우, 최초 교차점(1010)이 존재하므로, 래스터화부(340)는 해당 픽셀(1020)이 지지재 영역에 해당하는 것으로 판단할 수 있다.
한편, 기준 좌표 설정부(320)는 모든 픽셀 열에 대해 기준 좌표(c)가 1인 픽셀들의 래스터화가 완료된 경우, 기준 좌표(c)를 각 픽셀의 Z 축 방향의 크기인 1만큼 증가시켜 2로 변경할 수 있다.
이후, 교차점 계산부(330)는 각각의 픽셀 열에 대하여 Z 축 좌표가 기준 좌표인 2 이상인 최초 교차점을 계산할 수 있다. 한편, 도시된 예와 같이 특정 픽셀 열에 대하여 변경 전 기준 좌표를 기준으로 계산된 최초 교차점이 존재하며, 변경된 기준 좌표가 해당 최초 교차점의 Z 축 상의 좌표보다 작은 경우, 최초 교차점 계산 과정이 생략될 수 있다. 즉, 도시된 예에서, 변경 전 기준 좌표인 1을 기준으로 계산된 최초 교차점(1010)의 Z 축 상의 좌표가 변경된 기준 좌표인 2 이상이므로, 도시된 픽셀 열에 대해서는 최초 교차점 계산이 생략될 수 있다.
한편, 3차원 공간에서 기준 좌표인 2의 값을 가지는 픽셀(1030)에 해당하는 영역이 빈 공간에 해당하는 경우, 기준 좌표 이상인 최초 교차점(1010)이 존재하므로, 래스터화부(340)는 픽셀(1030)이 지지재 영역에 해당하는 것으로 판단할 수 있다.
한편, 기준 좌표 설정부(320)는 모든 픽셀 열에 대해 기준 좌표(c)가 2인 픽셀들의 래스터화가 완료된 경우, 기준 좌표(c)를 각 픽셀의 Z 축 방향의 크기인 1만큼 증가시켜 3으로 변경할 수 있다.
이후, 교차점 계산부(330)는 각각의 픽셀 열에 대하여 Z 축 좌표가 기준 좌표인 3 이상인 최초 교차점(1040)을 계산할 수 있다. 이후, 래스터화부(340)는 픽셀 열에서 Z 축 좌표가 기준 좌표인 3의 값을 가지는 픽셀(1050)을 래스터화하고, 래스터화된 픽셀이 지지재 영역에 해당하는지 여부를 판단할 수 있다. 구체적으로, 3차원 공간에서 교차점 1010과 1040 사이의 영역에 3차원 모델이 존재하는 경우, 픽셀(1050)은 빈 공간에 해당하지 않으므로, 래스터화부(340)는 해당 픽셀(1050)이 파트재 영역에 해당하는 것으로 판단할 수 있다.
한편, 기준 좌표 설정부(320)는 모든 픽셀 열에 대해 기준 좌표(c)가 3인 픽셀들의 래스터화가 완료된 경우, 기준 좌표(c)를 각 픽셀의 Z 축 방향의 크기인 1만큼 증가시켜 4로 변경할 수 있다.
이후, 교차점 계산부(330)는 각각의 픽셀 열에 대하여 Z 축 좌표가 기준 좌표인 4 이상인 최초 교차점을 계산할 수 있다. 다만, 도시된 픽셀 열의 경우, 변경 전 기준 좌표인 3을 기준으로 계산된 최초 교차점(1040)이 존재하며, 변경된 기준 좌표가 해당 최초 교차점(1040)의 Z 축 상의 좌표보다 작으므로, 해당 픽셀 열에 대한 최초 교차점 계산 과정은 생략될 수 있다.
한편, 상기한 바대로 교차점 1010과 1040 사이의 영역에 3차원 모델이 존재하는 경우, 픽셀(1060)은 빈 공간에 해당하지 않으므로, 래스터화부(340)는 해당 픽셀(1060)이 파트재 영역에 해당하는 것으로 판단할 수 있다.
한편, 기준 좌표 설정부(320)는 모든 픽셀 열에 대해 기준 좌표(c)가 4인 픽셀들의 래스터화가 완료된 경우, 기준 좌표(c)를 각 픽셀의 Z 축 방향의 크기인 1만큼 증가시켜 5로 변경할 수 있다.
이후, 교차점 계산부(330)는 각각의 픽셀 열에 대하여 Z 축 좌표가 기준 좌표인 5 이상인 최초 교차점(1070)을 계산할 수 있다. 구체적으로, 3차원 공간에서 기준 좌표인 5의 값을 가지는 픽셀(1080)에 해당하는 영역이 빈 공간에 해당하는 경우, 최초 교차점(1070)이 존재하므로, 래스터화부(340)는 픽셀(1080)이 지지재 영역에 해당하는 것으로 판단할 수 있다.
한편, 교차점 계산부(330)에 의해 설정된 기준 좌표(c)가 3차원 공간에서 최상단 평면의 Z 축 좌표 또는 3차원 모델의 최상단 Z 축 좌표보다 큰 경우, 교차점 계산부(330)와 래스터화부(340)는 최초 교차점 계산 및 래스터화를 종료할 수 있다. 이때, 3차원 공간에서 최상단 평면의 Z 축 좌표는 픽셀 열의 Z 축 방향의 최상단 좌표일 수 있다.
구체적으로, 도시된 예에서, 픽셀 열의 최상단에 위치한 픽셀의 Z 축 좌표가 11인 것으로 가정하면, 기준 좌표 설정부(220)에 의해 설정된 기준 좌표(c)가 12인 경우, 픽셀 열의 최상단 좌표보다 크게 되므로, 교차점 계산부(330)와 래스터화부(340)는 최초 교차점 계산 및 래스터화를 종료할 수 있다.
도 11은 본 발명의 일 실시예에 따른 3차원 모델의 비트맵 생성 방법의 순서도이다.
예를 들어, 도 11에 도시된 방법은 도 1 또는 도 2에 도시된 3차원 모델의 비트맵 생성 장치에 의해 수행될 수 있다.
3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 방향으로 분할하여 복수의 픽셀 열을 생성한다(1110).
이후, 3차원 모델의 비트맵 생성 장치는 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산한다(1120).
이후, 3차원 모델의 비트맵 생성 장치는 각 픽셀 열을 래스터화(rasterize)하고(1130), 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정한다(1140).
이때, 3차원 모델의 비트맵 생성 장치는 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 교차점 사이에 위치한 픽셀을 지지재 영역으로 결정할 수 있다.
또한, 3차원 모델의 비트맵 생성 장치는 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 최초 교차점 아래에 위치한 픽셀을 지지재 영역으로 결정할 수 있다.
이후, 3차원 모델의 비트맵 생성 장치는 래스터화된 각 픽셀 열을 병합하여, 3차원 모델에 대한 비트맵을 생성한다(1150).
이후, 3차원 모델의 비트맵 생성 장치는 생성된 비트맵을 3차원 프린터로 전송한다(1160). 이때, 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향을 기준으로 출력 방향에 수직인 평면의 비트맵을 순차적으로 전송할 수 있다.
한편, 3차원 모델의 비트맵 생성 장치가 3차원 프린터의 일부 구성으로 구현되는 경우, 도 11에서 1160 단계는 생략될 수 있다.
도 12는 본 발명의 다른 실시예에 따른 3차원 모델의 비트맵 생성 방법의 순서도이다.
예를 들어, 도 12에 도시된 방법은 도 3 또는 도 4에 도시된 3차원 모델의 비트맵 생성 장치에 의해 수행될 수 있다.
3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 출력 방향에 평행한 방향으로 분할하여 복수의 픽셀 열을 생성한다(1210).
이후, 3차원 모델의 비트맵 생성 장치는 3차원 프린터의 출력 방향에 수직인 임의의 평면에 대한 출력 방향의 좌표를 기준 좌표로 설정한다(1220).
이후, 3차원 모델의 비트맵 생성 장치는 복수의 픽셀 열 각각에 대하여, 출력 방향의 좌표가 기준 좌표 이상인, 각 픽셀 열과 3차원 모델의 최초 교차점을 계산한다(1230).
이후, 3차원 모델의 비트맵 생성 장치는 각 픽셀 열에서 기준 좌표를 가지는 픽셀을 래스터화하고(1240), 최초 교차점의 존재 여부에 기초하여, 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정한다(1250).
이때, 3차원 모델의 비트맵 생성 장치는 각 픽셀 열에서 최초 교차점이 존재하는 경우, 해당 픽셀 열에서 빈 공간에 해당하는 픽셀을 지지재 영역으로 결정할 수 있다.
이후, 3차원 모델의 비트맵 생성 장치는 래스터화된 픽셀을 병합하여, 출력 방향에 수직인 임의의 평면에 대한 비트맵을 생성한다(1260).
이후, 3차원 모델의 비트맵 생성 장치는 기준 좌표를 출력 방향의 픽셀 크기만큼 증가시키고(1280), 변경된 기준 좌표가 출력 방향을 기준으로 3차원 공간의 최상단 평면의 좌표 또는 3차원 모델의 최상단 좌표를 초과하는지 여부를 판단한다(1290).
이때, 변경된 기준 좌표가 최상단 평면의 좌표를 초과하지 않는 경우, 3차원 모델의 비트맵 생성 장치는 변경된 기준 좌표가 최상단 평면의 좌표를 초과할 때까지 1230 내지 1290 단계를 반복한다.
한편, 3차원 모델의 비트맵 생성 장치가 3차원 프린터의 일부 구성으로 구현되는 경우, 도 12에서 1270 단계는 생략될 수 있다. 한편, 도 11 및 도 12에 도시된 순서도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
110, 310: 픽셀열 생성부
120, 330: 교차점 계산부
130, 340: 래스터화부
140, 350: 비트맵 생성부
150, 360: 전송부
320: 기준 좌표 설정부

Claims (20)

  1. 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 픽셀 열 생성부;
    상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 교차점 계산부;
    상기 각 픽셀 열을 래스터화(rasterize)하고, 상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 래스터화부; 및
    상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 비트맵 생성부를 포함하는 3차원 모델의 비트맵 생성 장치.
  2. 청구항 1에 있어서,
    상기 래스터화부는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 상기 교차점 사이에 위치한 픽셀을 지지재 영역으로 결정하는 3차원 모델의 비트맵 생성 장치.
  3. 청구항 1에 있어서,
    상기 래스터화부는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 최초 교차점 아래에 위치한 픽셀을 지지재 영역으로 결정하는 3차원 모델의 비트맵 생성 장치.
  4. 청구항 1에 있어서,
    상기 비트맵을 3차원 프린터로 전송하는 전송부를 더 포함하는 3차원 모델의 비트맵 생성 장치.
  5. 청구항 4에 있어서,
    상기 전송부는, 상기 출력 방향을 기준으로 상기 출력 방향에 수직인 평면의 비트맵을 순차적으로 전송하는 3차원 모델의 비트맵 생성 장치.
  6. 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계;
    상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 단계;
    상기 각 픽셀 열을 래스터화(rasterize)하는 단계;
    상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 단계; 및
    상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 단계를 포함하는 3차원 모델의 비트맵 생성 방법.
  7. 청구항 6에 있어서,
    상기 결정하는 단계는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 상기 교차점 사이에 위치한 픽셀을 지지재 영역으로 결정하는 3차원 모델의 비트맵 생성 방법.
  8. 청구항 6에 있어서,
    상기 결정하는 단계는, 상기 래스터화된 각 픽셀 열에서 빈 공간에 해당하는 픽셀 중 최초 교차점 아래에 위치한 픽셀을 지지재 영역으로 결정하는 3차원 모델의 비트맵 생성 방법.
  9. 청구항 6에 있어서,
    상기 비트맵을 3차원 프린터로 전송하는 단계를 더 포함하는 3차원 모델의 비트맵 생성 방법.
  10. 청구항 9에 있어서,
    상기 전송하는 단계는, 상기 출력 방향을 기준으로 상기 출력 방향에 수직인 평면의 비트맵을 순차적으로 전송하는 3차원 모델의 비트맵 생성 방법.
  11. 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 픽셀 열 생성부;
    상기 출력 방향에 수직인 임의의 평면에 대한 상기 출력 방향의 좌표를 기준 좌표로 설정하는 기준 좌표 설정부;
    상기 복수의 픽셀 열 각각에 대하여, 상기 출력 방향의 좌표가 상기 기준 좌표 이상인, 각 픽셀 열과 3차원 모델의 최초 교차점을 계산하는 교차점 계산부;
    상기 각 픽셀 열에서 상기 기준 좌표를 가지는 픽셀을 래스터화하고, 상기 최초 교차점의 존재 여부에 기초하여 상기 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정하는 래스터화부; 및
    상기 래스터화된 픽셀을 병합하여, 상기 평면에 대한 비트맵을 생성하는 비트맵 생성부를 포함하는 3차원 모델의 비트맵 생성 장치.
  12. 청구항 11에 있어서,
    상기 래스터화부는, 상기 최초 교차점이 존재하는 경우, 빈 공간에 해당하는 픽셀을 지지재 영역으로 결정하는 3차원 모델의 비트맵 생성 장치.
  13. 청구항 11에 있어서,
    상기 기준 좌표 설정부는, 상기 평면에 대한 비트맵 생성이 완료된 경우, 상기 기준 좌표를 상기 출력 방향의 픽셀 크기만큼 증가시키고,
    상기 교차점 계산부 및 상기 래스터화부는, 상기 기준 좌표가 상기 3차원 공간에서 최상단 평면의 상기 출력 방향의 좌표 또는 상기 3차원 모델에 대한 상기 출력 방향의 최상단 좌표보다 큰 경우, 상기 최초 교차점 계산 및 상기 래스터화를 종료하는 3차원 모델의 비트맵 생성 장치.
  14. 청구항 11에 있어서,
    상기 평면에 대한 비트맵을 3차원 프린터로 전송하는 전송부를 더 포함하는 3차원 모델의 비트맵 생성 장치.
  15. 3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계;
    상기 출력 방향에 수직인 임의의 평면에 대한 상기 출력 방향의 좌표를 기준 좌표로 설정하는 단계;
    상기 복수의 픽셀 열 각각에 대하여, 상기 출력 방향의 좌표가 상기 기준 좌표 이상인, 각 픽셀 열과 3차원 모델의 최초 교차점을 계산하는 단계;
    상기 각 픽셀 열에서 상기 기준 좌표를 가지는 픽셀을 래스터화하는 단계;
    상기 최초 교차점의 존재 여부에 기초하여, 상기 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정하는 단계; 및
    상기 래스터화된 픽셀을 병합하여, 상기 평면에 대한 비트맵을 생성하는 단계를 포함하는 3차원 모델의 비트맵 생성 방법.
  16. 청구항 15에 있어서,
    상기 결정하는 단계는, 상기 최초 교차점이 존재하는 경우, 빈 공간에 해당하는 픽셀을 지지재 영역으로 결정하는 3차원 모델의 비트맵 생성 방법.
  17. 청구항 15에 있어서,
    상기 평면에 대한 비트맵 생성이 완료된 경우, 상기 기준 좌표를 상기 출력 방향의 픽셀 크기만큼 증가시키는 단계; 및
    상기 증가된 기준 좌표가 상기 3차원 공간에서 최상단 평면의 상기 출력 방향의 좌표 또는 상기 3차원 모델에 대한 상기 출력 방향의 최상단 좌표 이하인 경우, 상기 계산하는 단계로 되돌아가는 단계를 더 포함하는 3차원 모델의 비트맵 생성 방법.
  18. 청구항 15에 있어서,
    상기 평면에 대한 비트맵을 3차원 프린터로 전송하는 단계를 더 포함하는 3차원 모델의 비트맵 생성 방법.
  19. 하드웨어와 결합되어,
    3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계;
    상기 복수의 픽셀 열 각각에 대하여, 각 픽셀 열과 3차원 모델의 교차점을 계산하는 단계;
    상기 각 픽셀 열을 래스터화(rasterize)하는 단계;
    상기 교차점에 기초하여 래스터화된 각 픽셀 열에서 지지재 영역을 결정하는 단계; 및
    상기 래스터화된 각 픽셀 열을 병합하여, 상기 3차원 모델에 대한 비트맵을 생성하는 단계를 실행시키기 위하여 기록매체에 저장된 컴퓨터 프로그램.
  20. 하드웨어와 결합되어,
    3차원 프린터의 출력 방향에 기초하여, 3차원 공간을 상기 출력 방향에 평행한 복수의 픽셀 열로 분할하는 단계;
    상기 출력 방향에 수직인 임의의 평면에 대한 상기 출력 방향의 좌표를 기준 좌표로 설정하는 단계;
    상기 복수의 픽셀 열 각각에 대하여, 상기 출력 방향의 좌표가 상기 기준 좌표 이상인, 각 픽셀 열과 3차원 모델의 최초 교차점을 계산하는 단계;
    상기 각 픽셀 열에서 상기 기준 좌표를 가지는 픽셀을 래스터화하는 단계;
    상기 최초 교차점의 존재 여부에 기초하여, 상기 래스터화된 픽셀 중 지지재 영역에 해당하는 픽셀을 결정하는 단계; 및
    상기 래스터화된 픽셀을 병합하여, 상기 평면에 대한 비트맵을 생성하는 단계를 실행시키기 위하여 기록매체에 저장된 컴퓨터 프로그램.
KR1020150029747A 2015-03-03 2015-03-03 3차원 모델의 비트맵 생성 장치 및 방법 KR101573168B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150029747A KR101573168B1 (ko) 2015-03-03 2015-03-03 3차원 모델의 비트맵 생성 장치 및 방법
US15/059,718 US10035297B2 (en) 2015-03-03 2016-03-03 Apparatus and method for generating bitmap of 3-dimensional model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150029747A KR101573168B1 (ko) 2015-03-03 2015-03-03 3차원 모델의 비트맵 생성 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101573168B1 true KR101573168B1 (ko) 2015-12-01

Family

ID=54882803

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150029747A KR101573168B1 (ko) 2015-03-03 2015-03-03 3차원 모델의 비트맵 생성 장치 및 방법

Country Status (2)

Country Link
US (1) US10035297B2 (ko)
KR (1) KR101573168B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200368815A1 (en) * 2019-05-23 2020-11-26 The Boeing Company Additive manufacturing with adjusted cooling responsive to thermal characteristic of workpiece

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015030211A (ja) 2013-08-04 2015-02-16 泰 金田 自然な方向にそって印刷する3次元印刷方法および3dプリンタ

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175422B1 (en) * 1991-01-31 2001-01-16 Texas Instruments Incorporated Method and apparatus for the computer-controlled manufacture of three-dimensional objects from computer data
US5943235A (en) * 1995-09-27 1999-08-24 3D Systems, Inc. Rapid prototyping system and method with support region data processing
JP6306616B2 (ja) * 2013-03-14 2018-04-04 ストラタシス リミテッド 3次元プリンティングのためのスライシングおよび/またはテクスチャリング
US20140303942A1 (en) * 2013-04-05 2014-10-09 Formlabs, Inc. Additive fabrication support structures
WO2014172687A2 (en) * 2013-04-18 2014-10-23 Massachusetts Institute Of Technology, Inc. Methods and apparati for implementing programmable pipeline for three-dimensional printing including multi-material applications
US9931791B2 (en) * 2013-09-29 2018-04-03 Makerbot Industries, Llc Three-dimensional printing with multi-material support
US10061870B2 (en) * 2014-03-18 2018-08-28 Palo Alto Research Center Incorporated Automated metrology and model correction for three dimensional (3D) printability
US9770869B2 (en) * 2014-03-18 2017-09-26 Stratasys, Inc. Additive manufacturing with virtual planarization control
EP3023229B1 (en) * 2014-11-24 2021-09-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A method for three-dimensional color printing and a three-dimensional color printing device
KR20170014617A (ko) * 2015-07-30 2017-02-08 삼성에스디에스 주식회사 3차원 모델의 비트맵 생성 방법과 이를 수행하기 위한 장치 및 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015030211A (ja) 2013-08-04 2015-02-16 泰 金田 自然な方向にそって印刷する3次元印刷方法および3dプリンタ

Also Published As

Publication number Publication date
US10035297B2 (en) 2018-07-31
US20160260248A1 (en) 2016-09-08

Similar Documents

Publication Publication Date Title
CN105006010B (zh) 执行路径渲染的方法和设备
US8339409B2 (en) Tile-based graphics system and method of operation of such a system
US20170032561A1 (en) Method of generating bitmap of three-dimensional model, device and system for performing the same
US11080878B2 (en) Method and apparatus for detecting 3D object from 2D image
JP6169876B2 (ja) 電子ビーム描画装置、描画用図形データ作成装置、電子ビーム描画方法、描画用図形データ作成方法、およびプログラム
CN101986344A (zh) 图形处理系统
KR101682807B1 (ko) 3차원 모델의 비트맵 생성 장치 및 방법
KR101676576B1 (ko) 3차원 모델의 복셀화 및 각 복셀의 속성 할당 장치 및 방법
KR20220008466A (ko) 3차원 점군 데이터의 메쉬 생성 방법 및 장치
EP3319047B1 (en) Apparatus for generating an acceleration structure for ray tracing
CN103392190B (zh) 纹理映射装置
US8570321B2 (en) Rasterization engine and three-dimensional graphics system for rasterizing in order adapted to characteristics of polygon
KR101573168B1 (ko) 3차원 모델의 비트맵 생성 장치 및 방법
KR101769013B1 (ko) 공간타일 기반의 3차원 객체 모델 병합을 통한 3차원 모델 가시화 방법
US8902217B2 (en) Image generating method
KR20160132545A (ko) 3차원 프린터 장치 및 상기 장치에서의 3차원 오브젝트 배치 방법
KR101682298B1 (ko) 3차원 모델의 비트맵 생성 장치 및 방법
KR102370326B1 (ko) 2d 이미지를 활용하여 3d 컨텐츠를 생성하는 영상 처리 방법 및 영상 처리 장치
KR20220044777A (ko) 포인트 클라우드 데이터 처리 방법 및 장치
US6856325B2 (en) Information processing method and apparatus
KR20160058299A (ko) 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법
WO2022269951A1 (ja) 電子ビーム描画装置、電子ビーム描画方法、および記録媒体
US10319140B2 (en) Tri-cubic and hybrid interpolation in a 3D texture shader
KR20220029640A (ko) 2d 이미지를 활용하여 3d 컨텐츠를 생성하는 영상 처리 방법 및 영상 처리 장치
KR20230019555A (ko) 세그멘테이션을 이용하여 의료 영상을 처리하기 위한 전자 장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee