KR20160058299A - 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법 - Google Patents

3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법 Download PDF

Info

Publication number
KR20160058299A
KR20160058299A KR1020140158756A KR20140158756A KR20160058299A KR 20160058299 A KR20160058299 A KR 20160058299A KR 1020140158756 A KR1020140158756 A KR 1020140158756A KR 20140158756 A KR20140158756 A KR 20140158756A KR 20160058299 A KR20160058299 A KR 20160058299A
Authority
KR
South Korea
Prior art keywords
line segment
coordinates
same
dimensional
triangle
Prior art date
Application number
KR1020140158756A
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 KR1020140158756A priority Critical patent/KR20160058299A/ko
Publication of KR20160058299A publication Critical patent/KR20160058299A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법이 개시된다. 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치는 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 선택부; 선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 계산부; 및 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 윤곽 그래프 생성부를 포함한다.

Description

3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법{APPARATUS AND METHOD FOR SLICING AND CONTOUR BUILDING}
본 발명의 실시예들은 3차원 인쇄(3D printing)를 위한 공정 설계 기술과 관련된다.
3차원 인쇄(3D printing)는 연속적인 계층의 물질을 뿌리면서 3차원 물체를 만들어내는 제조 기술을 의미한다. 3차원 인쇄를 위해서는 먼저 캐드(CAD) 등의 3차원 모델링 툴을 이용하여 생성하려는 물체의 3차원 데이터를 생성하며, 상기 3차원 데이터를 슬라이싱(slicing)하여 각 레이어 별 윤곽선을 계산하는 공정 설계(Process Planning) 과정이 필요하다.
그러나 종래의 공정 설계와 관련된 기술들은 각 레이어 별 윤곽을 생성하는 데 필요한 유효 교점(valid point) 및 윤곽 생성과는 관계 없는 무효 교점(invalid point)을 구분하지 않고 공정 설계를 수행하는 바, 처리 시간 및 메모리 공간을 지나치게 낭비하는 문제가 존재하였다.
대한민국 공개특허공보 제10-2014-0097378호 (2014.08.06)
본 발명의 실시예들은 본 발명은 적층 가공(additive manufacturing) 방식의 3차원 프린팅을 위한 공정 설계(Process Planning)중 가장 많은 시간을 차지하는 삼각형 메쉬 슬라이싱(triangle mash slicing) 및 층별 윤곽 생성(layer contour building) 과정의 처리 시간과 메모리 공간 소모를 줄이기 위한 수단을 제공하기 위한 것이다.
예시적인 실시예에 따르면 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 장치로서, 상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 선택부; 선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 계산부; 및 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 윤곽 그래프 생성부를 포함하는 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치가 제공된다.
상기 계산부는, 상기 선택된 삼각형의 각 선분 중 하나의 선분을 선택하고, 선택된 선분과 동일한 선분이 선분 저장소에 기 저장되어 있는지의 여부를 판단할 수 있다.
상기 계산부는, 상기 선택된 선분의 양 끝점의 좌표와 동일한 좌표를 가지는 선분이 상기 선분 저장소에 기 저장되어 있는 경우 상기 선택된 선분과 동일한 선분이 기 저장되어 있는 것으로 판단할 수 있다.
상기 계산부는, 상기 선택된 선분과 동일한 선분이 저장되어 있지 않은 경우, 상기 선택된 선분을 저장할 수 있다.
상기 계산부는, 상기 선택된 선분과 동일한 선분이 저장되어 있는 경우, 상기 선택된 선분이 유효 선분인지의 여부를 판단하고, 상기 선택된 선분이 유효 선분에 해당하는 경우, 상기 선택된 선분과 상기 2차원 레이어간의 교점의 좌표를 계산할 수 있다.
상기 계산부는, 상기 선택된 선분이 유효 선분에 해당하지 않는 경우, 상기 선택된 삼각형 및 상기 동일한 선분을 포함하는 다각형을 병합할 수 있다.
상기 계산부는, 상기 선택된 삼각형의 법선 벡터와 상기 동일한 선분을 포함하는 다각형의 법선 벡터가 동일하지 않은 경우, 상기 선택된 선분이 유효 선분에 해당하는 것으로 판단할 수 있다.
다른 예시적인 실시예에 따르면, 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 방법으로서, 상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 단계; 선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 단계; 및 계산된 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 단계를 포함하는 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법이 제공된다.
상기 교점의 좌표를 계산하는 단계는, 상기 선택된 삼각형의 각 선분 중 하나의 선분을 선택하는 단계; 및 선택된 선분과 동일한 선분이 선분 저장소에 기 저장되어 있는지의 여부를 판단하는 단계를 더 포함할 수 있다.
상기 판단하는 단계는, 상기 선택된 선분의 양 끝점의 좌표와 동일한 좌표를 가지는 선분이 저장되어 있는 경우 상기 선택된 선분과 동일한 선분이 기 저장되어 있는 것으로 판단할 수 있다.
상기 교점의 좌표를 계산하는 단계는, 상기 선택된 선분과 동일한 선분이 저장되어 있지 않은 경우, 상기 선택된 선분을 저장하는 단계를 더 포함할 수 있다.
상기 선택된 선분과 동일한 선분이 저장되어 있는 경우, 상기 교점의 좌표를 계산하는 단계는, 상기 선택된 선분이 유효 선분인지의 여부를 판단하는 단계; 및 상기 선택된 선분이 유효 선분에 해당하는 경우, 상기 선택된 선분과 상기 2차원 레이어간의 교점의 좌표를 계산하는 단계를 더 포함할 수 있다.
상기 방법은, 상기 선택된 선분이 유효 선분에 해당하지 않는 경우, 상기 선택된 삼각형 및 상기 동일한 선분을 포함하는 다각형을 병합하는 단계를 더 포함할 수 있다.
상기 유효 선분인지의 여부를 판단하는 단계는, 상기 선택된 삼각형의 법선 벡터와 상기 동일한 선분을 포함하는 다각형의 법선 벡터가 동일하지 않은 경우 상기 선택된 선분이 유효 선분에 해당하는 것으로 판단할 수 있다.
또 다른 예시적인 실시예에 따르면, 하드웨어와 결합되어 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 컴퓨터 프로그램으로서, 상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 단계; 선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 단계; 및 계산된 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 단계를 포함하는 단계들을 실행시키기 위하여 기록매체에 저장된 컴퓨터 프로그램이 제공된다.
본 발명의 실시예들에 따르면, 삼각형 메쉬 슬라이싱(triangle mash slicing) 및 층별 윤곽 생성(layer contour building) 과정에 있어 3차원 객체 데이터로부터 생성되는 삼각형을 순차적으로 처리함으로써, 모든 삼각형을 메모리에 한꺼번에 로딩하는데 필요한 메모리 공간 및 상기 삼각형 정보를 메모리상에서 관리하는 데 소요되는 처리 시간 소모를 줄일 수 있다.
또한, 본 발명의 실시예들에 따르면 층별 윤곽 생성에 필요하지 않은 무효 교점을 계산에서 제외함으로써 삼각형 메쉬 슬라이싱(triangle mash slicing) 및 층별 윤곽 생성(layer contour building) 과정에서의 연산량을 최소화할 수 있다.
도 1은 적층 가공 방식의 3차원 프린팅을 위한 공정 설계 과정을 설명하기 위한 예시도
도 2는 3차원 객체의 평표면을 설명하기 위한 예시도
도 3은 도 2에 도시된 3차원 객체를 복수 개의 삼각형으로 분할한 예를 설명하기 위한 예시도
도 4는 도 3에 도시된 3차원 객체 및 상기 3차원 객체와 교차하는 2차원 레이어 관계를 설명하기 위한 예시도
도 5는 본 발명의 일 실시예에 따른 윤곽 그래프를 설명하기 위한 예시도
도 6은 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치를 설명하기 위한 블록도
도 7 및 도 8은 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 과정을 설명하기 위한 흐름도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 적층 가공(additive manufacturing) 방식의 3차원 프린팅을 위한 공정 설계 과정(Process Planning)을 설명하기 위한 예시도이다.
공정 설계의 첫 번째 단계는 캐드(CAD) 등의 3차원 모델링 툴을 이용하여 생성된 3차원 객체의 표면을 서로 접하는 복수 개의 삼각형으로 분할하는 것이다. 상기 복수 개의 삼각형에 대한 정보는, 예를 들어 STL(STereoLithography) 포맷의 파일로 저장될 수 있다. STL 파일은 CAD 모델을 비롯한 3차원 객체의 표면을 서로 접하는 다수의 삼각형으로 분할하여 표현한 파일로, STL 파일 안에는 상기 다수의 삼각형 정보가 저장된다. 이때 삼각형의 저장 순서는 정해져 있지 않으며, 각 삼각형의 정보는 삼각형을 이루는 세 꼭지점의 좌표와 삼각형의 바깥 표면의 방향을 나타내는 법선 벡터를 포함한다. 법선 벡터란 삼각형의 바깥 표면이 바라보는 방향을 나타내는 벡터(삼각형이 이루는 평면에 수직인 벡터)로서, STL 파일의 모든 법선 벡터는 크기가 1인 단위 벡터(unit vector)이다.
상기 공정 설계의 두 번째 단계는 메쉬 슬라이싱(mesh slicing) 단계로서, STL 파일에 저장된 각 삼각형과 교차하는 2차원 레이어의 교점의 좌표를 구하는 과정이다.
세 번째 단계인 층별 윤곽 생성 단계는 메쉬 슬라이싱 과정에서 계산한 각 레이어별 교점을 한 개 이상의 폐도형으로 연결하여 입력 모델의 각 레이어별 2차원 윤곽(3차원 객체를 특정 레이어를 따라 절단했을 때 단면의 외곽선)을 계산하는 과정이다. 여기서 폐도형이란 선분이 서로 교차하지 않고 구멍이 없는 다각형을 의미한다.
네 번째 단계는 채우기(in-filling) 단계로서, 윤곽선 내부를 벌집, 또는 사각형 등의 특정 패턴으로 채우는 과정이다.
마지막으로 윤곽선 및 특정 패턴으로 채워진 내부 출력하기 위한 노즐의 이동 경로를 계산하고, 각 경로를 3차원 프린터가 이해할 수 있는 특정 코드(G-Code 등)로 변환함으로써 공정 설계가 완료된다.
3차원 프린터는 이렇게 생성된 최종 코드를 입력받아 코드에 명시된 대로 재료와 노즐 등을 제어하여 3차원 모델을 출력한다.
다음으로 본 발명의 실시예들에서 사용되는 용어를 설명한다.
먼저, 평표면(planar surface)은 3차원 객체의 표면 중, 연결된 한 평면으로 구성된 부분을 말한다. 3차원 객체의 모양과 복잡도에 따라 한 평표면에 삼각형이 하나만 포함될 수도 있고, 평표면 외곽의 모양이 복잡한 경우 여러 개의 삼각형을 포함할 수도 있다.
예를 들어, 도 2에 도시된 것과 같은 3차원 객체에서 1 내지 3의 숫자로 표시한 각 면이 평표면에 해당한다. 도 3에 도시된 것과 같이 3차원 객체의 각 평표면은 복수 개의 삼각형(폴리곤; polygon)으로 분할될 수 있다.
다음으로, 한 평표면에 속하는 삼각형의 각 선분 중, 평표면의 외곽을 나타내는 선분을 유효 선분(valid edge)이라고 하며, 이를 제외한 평표면의 내부에 위치하는 모든 선분을 무효 선분(invalid edge)이라 한다. 다른 말로 정의하면 유효 선분은 서로 다른 두 평표면에 접하는 선분이라고 할 수 있다. 예를 들어 도 3에서 실선으로 표기된 선분은 유효 선분이 되고, 점선으로 표기된 선분은 무효 선분이 된다.
다음으로, 유효 교점(valid point)은 유효 선분과 레이어 평면이 만나는 교점을, 무효 교점(invalid point)은 무효 선분과 레이어 평면이 만나는 교점을 각각 의미한다. 예를 들어, 도 4와 같이 레이어 L이 3차원 객체와 교차할 때, 교점 A는 유효 교점이 되고 교점 B는 무효 교점이 된다.
도 5는 본 발명의 일 실시예에 따른 윤곽 그래프를 설명하기 위한 예시도이다. 본 발명의 일 실시예에서 윤곽 그래프는 각 레이어 마다 하나씩 존재하며 해당 레이어의 윤곽선의 연결 관계를 나타낸다. 도 5의 왼쪽 그림은 3차원 객체와 교차하는 레이어상의 3차원 객체의 단면을 나타낸 것으로서, S1, S4, S7, S8은 레이어 평면에 교차하는 평표면을, P1, P2, P3, P4는 유효 교점이 된다. 오른쪽 그림은 왼쪽의 단면으로부터 생성된 윤곽 그래프로서, 레이어 평면에 교차하는 평표면은 그래프의 점(vertex)으로, 평표면 상의 유효 교점은 그래프의 연결선(edge)으로 각각 표현된다.
본 발명의 실시예들에 따르면, 유효 선분이 입력 될 때 마다 해당 선분 상에 존재하는 모든 유효 교점의 좌표를 윤곽 그래프에 추가하는 방식으로 모든 층에서의 윤곽을 포함하는 그래프를 완성한다. 이후 각 레이어의 윤곽 그래프의 한 점에서 시작하여 동일한 점으로 돌아올 때까지 윤곽 그래프를 탐색하면 각 층별 윤곽을 알 수 있게 된다.
도 6은 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치(600)를 설명하기 위한 블록도이다. 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치(600)는 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 장치로서, 도시된 바와 같이 선택부(602), 계산부(604) 및 윤곽 그래프 생성부(606)를 포함한다.
선택부(602)는 상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택한다. 전술한 바와 같이, 상기 복수 개의 삼각형 정보는 STL 포맷의 파일에 저장될 수 있으나, 본 발명의 실시예들은 특정 파일 포맷에 한정되는 것은 아니다.
계산부(604)는 선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산한다.
윤곽 그래프 생성부(606)는 계산부(604)에서 계산된 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트한다.
이하에서는 상기와 같이 구성되는 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 과정을 상세히 설명한다.
도 7 및 도 8은 본 발명의 일 실시예에 따른 3차원 객체의 슬라이싱 및 층별 윤곽 계산 과정(700)을 설명하기 위한 흐름도이다.
단계 702에서, 선택부(602)는 3차원 객체를 구성하는 복수 개의 삼각형 중 처리 대상 삼각형을 선택하고 선택된 삼각형에 대한 정보를 획득한다. 일 실시예에서, 선택부(602)는 전술한 STL 파일 등으로부터 상기 삼각형 정보를 획득할 수 있다. 상기 삼각형 정보는 처리 대상 삼각형의 각 꼭지점의 좌표 및 법선 벡터를 포함할 수 있다.
단계 704에서, 계산부(604)는 선택된 처리 대상 삼각형에 빈 다각형 객체를 할당한다. 이하에서는 설명의 편의를 위하여 본 단계에서 할당된 다각형 객체를 V로 칭하기로 한다.
단계 706에서, 계산부(604)는 상기 처리 대상 삼각형의 각 선분 중 하나의 선분을 선택한다. 이하에서는 본 단계에서 선택된 선분을 e로 칭하기로 한다.
단계 708에서, 계산부(604)는 선분 e와 동일한 선분이 선분 저장소에 존재하는지의 여부를 판단한다. 본 발명의 일 실시예에서 선분 저장소(edge store)는 아직 유효 선분인지 또는 무효 선분인지의 여부가 판별되지 않은 선분을 저장하기 위하여 메모리 등의 저장 영역 내에 생성된 자료 구조로서, 새로운 선분이 입력되었을 때 입력된 선분과 동일한 선분이 선분 저장소에 기 존재하는 지의 여부를 신속히 조회할 수 있는 구조를 가진다. 예를 들어, 선분 저장소는 해시 테이블을 이용하여 구현될 수 있다. 그러나 본 발명의 실시예들은 특정한 형태의 선분 저장소에 한정되는 것은 아니다.
일 실시예에서, 계산부(604)는 선분 e의 양 끝점의 좌표를 이용하여 상기 선분 저장소를 탐색할 수 있다. 구체적으로 계산부(604)는 상기 선택된 선분 e의 양 끝점의 좌표와 동일한 좌표를 가지는 선분이 상기 선분 저장소에 저장되어 있는 경우 선분 e와 동일한 선분이 기 저장되어 있는 것으로 판단할 수 있다.
만약 상기 708 단계의 판단 결과 선분 e와 동일한 선분이 선분 저장소에 기 저장되어 있지 않을 경우, 단계 710에서 계산부(604)는 선분 e를 다각형 객체 V에 추가한다.
단계 712에서, 계산부(604)는 선분 e를 선분 저장소에 저장한다.
단계 714에서, 계산부(604)는 처리 대상 삼각형에 남은 선분이 있는지의 여부를 판단하고, 만약 남은 선분이 존재하는 경우 상기 706 단계 이하를 반복 수행한다.
만약 714 단계의 판단 결과 처리 대상 삼각형에 남은 선분이 존재하지 않는 경우, 단계 716에서 선택부(602)는 상기 복수 개의 삼각형 중 아직 처리되지 않은 삼각형이 존재하는지의 여부를 판단하고, 만약 존재하는 경우 상기 단계 702로 돌아가 남은 삼각형에 대해 702 단계 이하를 반복 수행한다. 이와 달리 상기 복수 개의 삼각형 종 아직 처리되지 않은 삼각형이 존재하지 않는 경우 본 과정은 종료된다.
한편, 상기 708 단계의 판단 결과 선분 저장소에 선분 e와 동일한 선분(선분 f로 칭함)이 존재하는 경우, 단계 718에서 계산부(604)는 선분 f(선분 e와 동일)가 유효 선분에 해당하는지의 여부를 판단한다. 유효 선분 및 무효 선분의 정의에 대해서는 전술하였다.
일 실시예에서, 계산부(604)는 선분 e가 포함된 다각형 V의 법선 벡터 및 선분 f가 포함된 다각형(다각형 U로 칭함)의 법선 벡터를 서로 비교하고, 양자가 동일하지 않은 경우 상기 선분 f가 유효 선분에 해당하는 것으로 판단할 수 있다. 만약 이와 달리 두 다각형의 법선 벡터가 동일하다면 두 다각형은 동일한 평표면에 속하게 되는 바, 선분 f는 평표면 내부의 선분인 무효 선분이 된다. 수학적으로 인접한 두 다각형의 법선 벡터가 평행할 경우 두 다각형은 동일한 평표면에 속하게 되나, 본 발명의 실시예에서 법선 벡터의 크기는 모두 1로 동일하므로 계산부(604)는 두 다각형의 법선 벡터가 동일할 경우 두 다각형이 동일한 평표면에 속하는 것으로 판단할 수 있다.
만약 상기 718 단계의 판단 결과 선분 f가 유효 선분에 해당하는 경우, 단계 720에서 계산부(604)는 선분 f와 2차원 레이어간의 모든 유효 교점의 좌표를 계산한다.
단계 722에서, 계산부(604)는 단계 720에서 계산된 유효 교점을 윤곽 그래프에 추가한다.
단계 724에서, 계산부(604)는 처리가 완료된 선분 f를 다각형 U에서 삭제하고, 단계 714로 이동하여 남은 선분이 존재하는지 여부를 판단한다.
한편, 상기 718 단계의 판단 결과 선분 f가 무효 선분에 해당하는 경우, 단계 726에서 계산부(604)는 다각형 V와 U를 병합하고 병합된 다각형을 다각형 V에 재할당한다.
단계 726에서, 계산부(604)는 처리가 완료된 선분 f를 다각형 V에서 삭제하고, 단계 714로 이동한다.
상기와 같은 과정을 통해 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치(600)는 3차원 객체의 모든 레이어에 대한 윤곽선 그래프를 생성할 수 있게 된다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
600: 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치
602: 선택부
604: 계산부
606: 윤곽 그래프 생성부

Claims (15)

  1. 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 장치로서,
    상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 선택부;
    선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 계산부; 및
    상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 윤곽 그래프 생성부를 포함하는 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  2. 청구항 1에 있어서,
    상기 계산부는, 상기 선택된 삼각형의 각 선분 중 하나의 선분을 선택하고, 선택된 선분과 동일한 선분이 선분 저장소에 기 저장되어 있는지의 여부를 판단하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  3. 청구항 2에 있어서,
    상기 계산부는, 상기 선택된 선분의 양 끝점의 좌표와 동일한 좌표를 가지는 선분이 상기 선분 저장소에 기 저장되어 있는 경우 상기 선택된 선분과 동일한 선분이 기 저장되어 있는 것으로 판단하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  4. 청구항 2에 있어서,
    상기 계산부는, 상기 선택된 선분과 동일한 선분이 저장되어 있지 않은 경우, 상기 선택된 선분을 저장하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  5. 청구항 2에 있어서,
    상기 계산부는, 상기 선택된 선분과 동일한 선분이 저장되어 있는 경우, 상기 선택된 선분이 유효 선분인지의 여부를 판단하고,
    상기 선택된 선분이 유효 선분에 해당하는 경우, 상기 선택된 선분과 상기 2차원 레이어간의 교점의 좌표를 계산하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  6. 청구항 5에 있어서,
    상기 계산부는, 상기 선택된 선분이 유효 선분에 해당하지 않는 경우, 상기 선택된 삼각형 및 상기 동일한 선분을 포함하는 다각형을 병합하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  7. 청구항 5에 있어서,
    상기 계산부는, 상기 선택된 삼각형의 법선 벡터와 상기 동일한 선분을 포함하는 다각형의 법선 벡터가 동일하지 않은 경우, 상기 선택된 선분이 유효 선분에 해당하는 것으로 판단하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치.
  8. 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 방법으로서,
    상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 단계;
    선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 단계; 및
    계산된 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 단계를 포함하는 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  9. 청구항 8에 있어서,
    상기 교점의 좌표를 계산하는 단계는,
    상기 선택된 삼각형의 각 선분 중 하나의 선분을 선택하는 단계; 및
    선택된 선분과 동일한 선분이 선분 저장소에 기 저장되어 있는지의 여부를 판단하는 단계를 더 포함하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  10. 청구항 9에 있어서,
    상기 판단하는 단계는, 상기 선택된 선분의 양 끝점의 좌표와 동일한 좌표를 가지는 선분이 저장되어 있는 경우 상기 선택된 선분과 동일한 선분이 기 저장되어 있는 것으로 판단하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  11. 청구항 9에 있어서,
    상기 교점의 좌표를 계산하는 단계는,
    상기 선택된 선분과 동일한 선분이 저장되어 있지 않은 경우, 상기 선택된 선분을 저장하는 단계를 더 포함하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  12. 청구항 9에 있어서,
    상기 선택된 선분과 동일한 선분이 저장되어 있는 경우, 상기 교점의 좌표를 계산하는 단계는,
    상기 선택된 선분이 유효 선분인지의 여부를 판단하는 단계; 및
    상기 선택된 선분이 유효 선분에 해당하는 경우, 상기 선택된 선분과 상기 2차원 레이어간의 교점의 좌표를 계산하는 단계를 더 포함하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  13. 청구항 12에 있어서,
    상기 선택된 선분이 유효 선분에 해당하지 않는 경우, 상기 선택된 삼각형 및 상기 동일한 선분을 포함하는 다각형을 병합하는 단계를 더 포함하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  14. 청구항 12에 있어서,
    상기 유효 선분인지의 여부를 판단하는 단계는, 상기 선택된 삼각형의 법선 벡터와 상기 동일한 선분을 포함하는 다각형의 법선 벡터가 동일하지 않은 경우 상기 선택된 선분이 유효 선분에 해당하는 것으로 판단하는, 3차원 객체의 슬라이싱 및 층별 윤곽 계산 방법.
  15. 하드웨어와 결합되어 3차원 객체와 교차하는 2차원 레이어 상에서의 상기 3차원 객체의 윤곽을 계산하기 위한 컴퓨터 프로그램으로서,
    상기 3차원 객체를 구성하는 복수 개의 삼각형들 중 하나의 삼각형을 선택하는 단계;
    선택된 삼각형의 각 선분들 중 유효 선분에 해당하는 하나 이상의 선분 및 상기 2차원 레이어간의 교점의 좌표를 계산하는 단계; 및
    계산된 상기 교점의 좌표를 이용하여 상기 2차원 레이어에 대응되는 윤곽 그래프를 업데이트하는 단계를 포함하는 단계들을 실행시키기 위하여 기록매체에 저장된 컴퓨터 프로그램.
KR1020140158756A 2014-11-14 2014-11-14 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법 KR20160058299A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140158756A KR20160058299A (ko) 2014-11-14 2014-11-14 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140158756A KR20160058299A (ko) 2014-11-14 2014-11-14 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20160058299A true KR20160058299A (ko) 2016-05-25

Family

ID=56114261

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140158756A KR20160058299A (ko) 2014-11-14 2014-11-14 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20160058299A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180080959A (ko) * 2017-01-05 2018-07-13 엑스와이지프린팅, 인크. 이미지 파일 변환 방법 및 3차원 인쇄 시스템
CN110889902A (zh) * 2018-09-11 2020-03-17 北京京东尚科信息技术有限公司 一种三维建模的方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180080959A (ko) * 2017-01-05 2018-07-13 엑스와이지프린팅, 인크. 이미지 파일 변환 방법 및 3차원 인쇄 시스템
CN110889902A (zh) * 2018-09-11 2020-03-17 北京京东尚科信息技术有限公司 一种三维建模的方法和装置
CN110889902B (zh) * 2018-09-11 2024-01-12 北京京东尚科信息技术有限公司 一种三维建模的方法和装置

Similar Documents

Publication Publication Date Title
JP7164295B2 (ja) 3dプリンティングのための現実の物体の向き付け
US11541601B2 (en) Systems and methods for printing of 3D models
Ding et al. Automatic multi-direction slicing algorithms for wire based additive manufacturing
CN108228987B (zh) 副本选择
Yang et al. Equidistant path generation for improving scanning efficiency in layered manufacturing
KR102028203B1 (ko) 워크피스의 기계가공의 시뮬레이션
CN108237693B (zh) 双轴3d打印过程的结果的b-rep
JP2005038219A (ja) 境界表現データからボリュームデータを生成する方法及びそのプログラム
CN105844711A (zh) 在细分曲面上雕刻2d图像
US10217291B2 (en) Designing a modeled volume represented by dexels
CN105479747A (zh) 3d打印方法
KR102300473B1 (ko) 3d 프린팅 시간 단축을 위한 상하 레이어 폴리라인 병합 기반 가변 슬라이싱 방법
JP2006185444A (ja) 進化的最適化方法および自由形状変形方法
US11953879B2 (en) Agent-based slicing for 3D object models
US20160332385A1 (en) Apparatus and method for generating bitmap of 3-dimensional model
KR20220143612A (ko) 3d 모델링 객체의 3d 프린터 출력을 위한 3d cad 데이터 변환 방법, 프로그램 및 이를 위한 장치
KR20160058299A (ko) 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법
KR101682296B1 (ko) 3차원 프린터 장치 및 상기 장치에서의 3차원 오브젝트 배치 방법
JP7477279B2 (ja) B-Repスキンの3D設計
EP4195086A1 (en) Computer aided generative design with feature thickness control to facilitate manufacturing and structural performance
CN110770797A (zh) 确定虚拟对象空间中的对象体积
JP5404815B2 (ja) 2つの干渉するオブジェクトを離すための並進ベクトルを求めるシステム、方法およびコンピュータプログラム
US9639992B2 (en) Methods and systems for multilevel editing of subdivided polygonal data
US20210081583A1 (en) A method of operating a cad system model for modelling an article to be manufactured
KR101682298B1 (ko) 3차원 모델의 비트맵 생성 장치 및 방법

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination