KR20170143346A - 3D printing method for a plurality of 3D objects and apparatus thereof - Google Patents

3D printing method for a plurality of 3D objects and apparatus thereof Download PDF

Info

Publication number
KR20170143346A
KR20170143346A KR1020160077473A KR20160077473A KR20170143346A KR 20170143346 A KR20170143346 A KR 20170143346A KR 1020160077473 A KR1020160077473 A KR 1020160077473A KR 20160077473 A KR20160077473 A KR 20160077473A KR 20170143346 A KR20170143346 A KR 20170143346A
Authority
KR
South Korea
Prior art keywords
bounding box
bounding
printing
area
mesh
Prior art date
Application number
KR1020160077473A
Other languages
Korean (ko)
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 KR1020160077473A priority Critical patent/KR20170143346A/en
Publication of KR20170143346A publication Critical patent/KR20170143346A/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
    • B29C64/00Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
    • B29C64/30Auxiliary operations or equipment
    • B29C64/386Data acquisition or data processing for additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
    • B29C64/00Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
    • B29C64/20Apparatus for additive manufacturing; Details thereof or accessories therefor
    • 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
    • B33Y30/00Apparatus for additive manufacturing; Details thereof or accessories therefor
    • 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
    • B33Y50/02Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes

Landscapes

  • Chemical & Material Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Materials Engineering (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)

Abstract

The present invention relates to a method and an apparatus for three-dimensional printing of a plurality of three-dimensional objects. The three-dimensional printing method according to an embodiment of the present invention comprises the steps of: determining respective bounding boxes for a plurality of three-dimensional meshes; rotating bounding boxes of which one side is inclined to a reference line among the respective bounding boxes such that one side becomes parallel to the reference line; disposing the bounding boxes of which one side is parallel to the reference line within a printing space such that the bounding boxes of which one side is parallel to the reference line do not overlap with each other; disposing three-dimensional meshes corresponding to the respective bounding boxes in a region where the bounding boxes corresponding to the concerned three-dimensional meshes are disposed; and printing the plurality of three-dimensional objects using the disposed three-dimensional meshes. The three-dimensional printing method according to embodiments of the present invention can improve three-dimensional printing efficiency by enabling the plurality of three-dimensional objects to be three-dimensionally printed at the same time.

Description

복수의 3D 오브젝트들을 3D 프린팅하는 방법 및 장치{3D printing method for a plurality of 3D objects and apparatus thereof}[0001] The present invention relates to a method and apparatus for 3D printing of a plurality of 3D objects,

본 발명의 실시 예들은, 복수의 3D 오브젝트들을 3D 프린팅하기 위한 방법 및 장치에 관한 것이다. Embodiments of the present invention are directed to a method and apparatus for 3D printing of a plurality of 3D objects.

일반적인 3D (three dimensional) 프린터는, 3D 오브젝트의 프린팅을 위한 준비 작업이 필요하다. 예를 들어, 3D 프린터를 적정한 온도로 예열하거나, 이전에 프린팅한 3D 오브젝트의 흔적을 깨끗하게 치우는 등의 작업이 필요하다. 만약, 복수의 3D 오브젝트를 프린팅하여야 하는 경우, 하나의 3D 오브젝트를 프린팅할 때마다 이러한 작업을 수행한다면, 프린팅 효율이 크게 저하될 수 있다. Typical three-dimensional printers require preparations for printing 3D objects. For example, it is necessary to preheat the 3D printer to an appropriate temperature, or clean the traces of previously printed 3D objects. If a plurality of 3D objects are to be printed, if the 3D object is printed each time one 3D object is printed, the printing efficiency may be greatly reduced.

미국 공개 특허 제 2014/0052415호 (Partitioning models into 3D-printable components)US Patent Publication No. 2014/0052415 (Partitioning models into 3D-printable components)

본 발명의 실시 예들은, 복수의 3D 오브젝트들을 동시에 3D 프린팅하는 방안을 제공한다. Embodiments of the present invention provide a method for 3D printing of a plurality of 3D objects at the same time.

본 발명의 실시 예들은, 복수의 3D 메쉬들을 프린팅 공간 내에 자동으로 배치하는 방안을 제공한다. Embodiments of the present invention provide a way to automatically place a plurality of 3D meshes within a printing space.

본 발명의 일 실시 예에 따른 3D 프린팅 방법은, 복수의 3D 메쉬들 각각의 바운딩 박스를 결정하는 단계; 상기 각각의 바운딩 박스 중 일 변이 기준선에 경사진 바운딩 박스를 회전시켜 상기 일 변이 상기 기준선에 평행해지도록 하는 단계; 상기 기준선에 일 변이 평행한 바운딩 박스들이 서로 겹치지 않도록 프린팅 공간 내에 배치하는 단계; 각각의 바운딩 박스에 대응하는 3D 메쉬를, 해당 3D 메쉬에 대응하는 바운딩 박스가 배치된 영역에 배치하는 단계; 및 배치된 3D 메쉬들을 이용하여 복수의 3D 오브젝트를 프린팅하는 단계를 포함한다. A 3D printing method according to an exemplary embodiment of the present invention includes: determining a bounding box of each of a plurality of 3D meshes; Rotating one of the bounding boxes inclined at one side of the bounding box so that one side of the bounding box is parallel to the reference line; Placing in a printing space such that bounding boxes parallel to one side of the baseline do not overlap each other; Placing a 3D mesh corresponding to each bounding box in an area in which a bounding box corresponding to the 3D mesh is disposed; And printing a plurality of 3D objects using the arranged 3D meshes.

일 실시 예에서, 상기 바운딩 박스를 결정하는 단계는, 3D 메쉬의 볼록 껍질(convex hull)을 계산하는 단계; 및 상기 볼록 껍질을 에워싸는 최소 면적의 바운딩 박스를 결정하는 단계를 포함할 수 있다. In one embodiment, the step of determining the bounding box comprises: calculating a convex hull of the 3D mesh; And determining a bounding box of the smallest area surrounding the convex shell.

일 실시 예에서, 상기 바운딩 박스들을 배치하는 단계는, 상기 바운딩 박스들의 변의 길이 및 면적 중 적어도 하나를 기준으로 상기 바운딩 박스들의 배치 순서를 결정하는 단계를 포함할 수 있다. In one embodiment, the step of arranging the bounding boxes may include determining a placement order of the bounding boxes based on at least one of a length and an area of sides of the bounding boxes.

일 실시 예에서, 상기 바운딩 박스들을 배치하는 단계는, 1 내지 N-1 번째 배치된 바운딩 박스들의 모서리들을 기준으로, N 번째 바운딩 박스의 배치 후보 영역들을 결정하는 단계; 상기 배치 후보 영역들 각각에 대하여, 해당 배치 후보 영역에 N 번째 바운딩 박스를 배치하는 경우 N개의 바운딩 박스들을 모두 에워싸는 직사각형의 면적을 계산하는 단계; 및 상기 직사각형의 면적이 최소로 계산되는 배치 후보 영역에 N 번째 바운딩 박스를 배치하는 단계를 포함할 수 있다. In one embodiment, the step of arranging the bounding boxes may include: determining placement candidate regions of the N-th bounding box, based on the edges of the bounding boxes arranged from 1 to N-1; Calculating an area of a rectangle surrounding all N bounding boxes when an N-th bounding box is arranged in the placement candidate region for each of the placement candidate regions; And placing an Nth bounding box in the placement candidate region where the area of the rectangle is calculated to be the smallest.

일 실시 예에서, 상기 직사각형의 면적을 계산하는 단계는, 상기 N 번째 바운딩 박스를 90도 회전시킨 상태에서 상기 직사각형의 면적을 계산하는 단계를 포함할 수 있다. In one embodiment, calculating the area of the rectangle may include calculating the area of the rectangle while rotating the N-th bounding box by 90 degrees.

일 실시 예에서, 상기 프린팅 공간은 직사각형이고, 상기 기준선은 상기 프린팅 공간의 일 변에 평행할 수 있다. In one embodiment, the printing space is rectangular and the baseline may be parallel to one side of the printing space.

일 실시 예에서, 상기 방법은, 3D 메쉬들 간의 간격을 고려하여 상기 바운딩 박스의 크기를 조절하는 단계를 더 포함할 수 있다. In one embodiment, the method may further comprise adjusting the size of the bounding box taking into account the spacing between the 3D meshes.

일 실시 예에서, 상기 3D 메쉬를 배치하는 단계는, 해당 3D 메쉬에 대응하는 바운딩 박스가 회전된 각도를 고려하여 해당 3D 메쉬를 배치하는 단계를 포함할 수 있다. In one embodiment, the step of disposing the 3D mesh may include disposing the 3D mesh in consideration of the angle at which the bounding box corresponding to the 3D mesh is rotated.

본 발명의 일 실시 예에 따른 프린팅 장치는 프로세서 및 메모리를 포함한다. 상기 메모리에는 복수의 3D 메쉬들과 상기 복수의 3D 메쉬들을 이용하여 3D 프린팅을 수행하기 위한 명령어들이 저장될 수 있다. 상기 명령어들은, 상기 프로세서에 의하여 실행될 때, 상기 프로세서로 하여금, 상기 복수의 3D 메쉬들 각각의 바운딩 박스를 결정하고, 상기 각각의 바운딩 박스 중 일 변이 기준선에 경사진 바운딩 박스를 회전시켜 상기 일 변이 상기 기준선에 평행해지도록 하며, 상기 기준선에 일 변이 평행한 바운딩 박스들이 서로 겹치지 않도록 프린팅 공간 내에 배치하고, 각각의 바운딩 박스에 대응하는 3D 메쉬를 해당 3D 메쉬에 대응하는 바운딩 박스가 배치된 영역에 배치하며, 배치된 3D 메쉬들을 이용하여 복수의 3D 오브젝트를 프린팅하도록 하는 명령어들을 포함할 수 있다. A printing apparatus according to an embodiment of the present invention includes a processor and a memory. The memory may store a plurality of 3D meshes and instructions for performing 3D printing using the plurality of 3D meshes. Wherein the instructions, when executed by the processor, cause the processor to determine a bounding box of each of the plurality of 3D meshes, rotate a bounding box that is sloped to one of the bounding boxes of the respective bounding box, The 3D mesh corresponding to each of the bounding boxes is disposed in an area in which the bounding box corresponding to the corresponding 3D mesh is disposed. The bounding boxes corresponding to the bounding boxes are arranged in the printing space so that the bounding boxes, And may include instructions for printing a plurality of 3D objects using the arranged 3D meshes.

일 실시 예에서, 상기 명령어들은, 3D 메쉬의 볼록 껍질(convex hull)을 계산하고, 상기 볼록 껍질을 에워싸는 최소 면적의 바운딩 박스를 결정하도록 하는 명령어들을 포함할 수 있다. In one embodiment, the instructions may include instructions to calculate a convex hull of a 3D mesh and to determine a bounding box of a minimum area surrounding the convex hull.

일 실시 예에서, 상기 명령어들은, 3D 메쉬의 볼록 껍질(convex hull)을 계산하고, 상기 볼록 껍질을 에워싸는 최소 면적의 바운딩 박스를 결정하도록 하는 명령어들을 포함할 수 있다. In one embodiment, the instructions may include instructions to calculate a convex hull of a 3D mesh and to determine a bounding box of a minimum area surrounding the convex hull.

일 실시 예에서, 상기 명령어들은, 1 내지 N-1 번째 배치된 바운딩 박스들의 모서리들을 기준으로 N 번째 바운딩 박스의 배치 후보 영역들을 결정하고, 상기 배치 후보 영역들 각각에 대하여 해당 배치 후보 영역에 N 번째 바운딩 박스를 배치하는 경우 N개의 바운딩 박스들을 모두 에워싸는 직사각형의 면적을 계산하며, 상기 직사각형의 면적이 최소로 계산되는 배치 후보 영역에 N 번째 바운딩 박스를 배치하도록 하는 명령어들을 포함할 수 있다. In one embodiment, the instructions determine placement candidate regions of the N-th bounding box based on the corners of the first to the (N-1) th bounding boxes, and assign N An area of a rectangle surrounding all of the N bounding boxes is calculated, and an Nth bounding box is placed in a placement candidate area where the area of the rectangle is calculated to be the smallest.

일 실시 예에서, 상기 명령어들은, 상기 N 번째 바운딩 박스를 90도 회전시킨 상태에서 상기 직사각형의 면적을 계산하도록 하는 명령어들을 포함할 수 있다. In one embodiment, the instructions may include instructions to calculate an area of the rectangle with the Nth bounding box rotated 90 degrees.

일 실시 예에서, 상기 명령어들은, 3D 메쉬들 간의 간격을 고려하여 상기 바운딩 박스의 크기를 조절하도록 하는 명령어들을 포함할 수 있다. In one embodiment, the instructions may include instructions to adjust the size of the bounding box in consideration of the spacing between the 3D meshes.

일 실시 예에서, 상기 명령어들은, 상기 3D 메쉬를 배치할 때, 해당 3D 메쉬에 대응하는 바운딩 박스가 회전된 각도를 고려하여 해당 3D 메쉬를 배치하도록 하는 명령어들을 포함할 수 있다. In one embodiment, the instructions may include instructions for placing the 3D mesh in consideration of the rotated angle of the bounding box corresponding to the 3D mesh when the 3D mesh is disposed.

본 발명의 실시 예들에 따르면, 복수의 3D 오브젝트들을 동시에 3D 프린팅할 수 있기 때문에, 3D 프린팅 효율을 향상시킬 수 있다. According to embodiments of the present invention, since a plurality of 3D objects can be 3D-printed at the same time, 3D printing efficiency can be improved.

도 1은 본 발명의 일 실시 예에 따른 3D 프린팅 방법을 설명하기 위한 흐름도,
도 2의 (a) 내지 도 2의 (c)는 바운딩 박스를 결정하는 예를 설명하기 위한 예시도,
도 3은 본 발명의 일 실시 예에 따라 바운딩 박스를 회전시키는 예를 설명하기 위한 예시도,
도 4는 본 발명의 일 실시 예에 따른 바운딩 박스 배치 방법을 설명하기 위한 흐름도,
도 5는 본 발명의 일 실시 예에 따른 바운딩 박스의 배치 순서 결정을 설명하기 위한 예시도,
도 6의 (a) 내지 도 6의 (e)는 본 발명의 일 실시 예에 따른 바운딩 박스 배치 예를 설명하기 위한 예시도,
도 7은 본 발명의 일 실시 예에 따른 3D 프린팅 장치를 설명하기 위한 블록도.
FIG. 1 is a flowchart illustrating a 3D printing method according to an exemplary embodiment of the present invention. FIG.
2 (a) to 2 (c) are diagrams for explaining an example of determining a bounding box,
3 is an exemplary view for explaining an example of rotating a bounding box according to an embodiment of the present invention,
FIG. 4 is a flowchart illustrating a method of arranging a bounding box according to an embodiment of the present invention. FIG.
FIG. 5 is an exemplary view for explaining a placement order determination of a bounding box according to an embodiment of the present invention;
6 (a) to 6 (e) are views for explaining an example of a bounding box arrangement according to an embodiment of the present invention,
FIG. 7 is a block diagram for explaining a 3D printing apparatus according to an embodiment of the present invention; FIG.

이하에서, 본 발명의 실시 예들을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. In the following description of the embodiments of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

이하, 첨부되는 도면을 참조하여 본 발명의 실시 예들을 설명한다. Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 일 실시 예에 따른 3D 프린팅 방법을 설명하기 위한 흐름도이다. 실시 예에 따라, 도 1에 도시된 단계들 중 적어도 하나는 생략될 수 있다. 1 is a flowchart illustrating a 3D printing method according to an embodiment of the present invention. Depending on the embodiment, at least one of the steps shown in Fig. 1 may be omitted.

단계(101)에서, 3D 프린팅 장치는, 3D 프린팅에 이용되는 복수의 3D 메쉬(mesh)를 로드할 수 있다. 3D 메쉬는, 3D 프린팅의 결과물인 3D 오브젝트의 프린팅에 이용되는 데이터 파일일 수 있다. In step 101, the 3D printing device may load a plurality of 3D meshes used for 3D printing. The 3D mesh may be a data file used for printing 3D objects that are the result of 3D printing.

단계(103)에서, 3D 프린팅 장치는, 각각의 3D 메쉬의 바운딩 박스(bounding box)를 결정할 수 있다. 하나의 3D 메쉬의 바운딩 박스를 결정하기 위하여, 3D 프린팅 장치는, 해당 3D 메쉬의 모든 정점(vertex)을 기준면으로 투영하여 해당 3D 메쉬의 볼록 껍질(convex hull)을 계산할 수 있다. 여기서, 기준면은, 프린팅 공간의 바닥면이거나, 프린팅 공간의 바닥면에 수평한 면일 수 있다. 3D 프린팅 장치는, 볼록 껍질을 에워싸는 바운딩 박스를 복수 개 계산할 수 있다. 3D 프린팅 장치는, 계산된 복수의 바운딩 박스들 중 최소 면적을 갖는 바운딩 박스를 해당 3D 메쉬의 바운딩 박스로 결정할 수 있다. 바운딩 박스는, 2차원의 직사각형 형태일 수 있다. 바운딩 박스를 결정하는 예를 도 2의 (a) 내지 도 2의 (c)를 참조하여 살펴본다. In step 103, the 3D printing device may determine the bounding box of each 3D mesh. In order to determine the bounding box of one 3D mesh, the 3D printing apparatus can calculate the convex hull of the corresponding 3D mesh by projecting all the vertices of the 3D mesh to the reference plane. Here, the reference surface may be a bottom surface of the printing space, or a horizontal surface of the bottom surface of the printing space. The 3D printing apparatus can calculate a plurality of bounding boxes surrounding convex shells. The 3D printing apparatus can determine the bounding box having the smallest area among the calculated plurality of bounding boxes as the bounding box of the corresponding 3D mesh. The bounding box may be in the form of a two-dimensional rectangle. An example of determining a bounding box will be described with reference to FIGS. 2 (a) to 2 (c).

도 2의 (a) 내지 도 2의 (c)는 바운딩 박스를 결정하는 예를 설명하기 위한 예시도이다. 2 (a) to 2 (c) are diagrams for explaining an example of determining a bounding box.

임의의 3D 메쉬에 대하여 도 2의 (a)에 도시된 바와 같은 볼록 껍질(202)이 계산된 상황을 가정하자. 전술한 바와 같이, 3D 프린팅 장치는, 볼록 껍질(202)을 에워싸는 바운딩 박스를 복수 개 계산할 수 있다. 계산 결과, 도 2의 (b) 및 도 2의 (c)에 도시된 바와 같은 바운딩 박스들(204, 206)이 계산된 경우를 가정하자. 설명의 편의를 위하여 두 개의 바운딩 박스들(204, 206)이 계산된 경우를 가정하여 설명하나, 세 개 이상의 바운딩 박스들이 계산될 수 있다. Assume that the convex shell 202 is calculated as shown in Fig. 2 (a) for any 3D mesh. As described above, the 3D printing apparatus can calculate a plurality of bounding boxes surrounding the convex shell 202. As a result of the calculation, it is assumed that the bounding boxes 204 and 206 as shown in FIGS. 2B and 2C are calculated. For convenience of explanation, it is assumed that two bounding boxes 204 and 206 are calculated, but three or more bounding boxes may be calculated.

바운딩 박스들(204, 206)이 계산되면, 3D 프린팅 장치는, 각각의 바운딩 박스들(204, 206)의 면적을 계산할 수 있다. 계산 결과, 바운딩 박스(206)의 면적이 바운딩 박스(204)의 면적보다 작다면, 3D 프린팅 장치는, 바운딩 박스(206)를 해당 3D 메쉬의 바운딩 박스로 결정할 수 있다. Once the bounding boxes 204, 206 are calculated, the 3D printing device can calculate the area of each of the bounding boxes 204, 206. As a result of the calculation, if the area of the bounding box 206 is smaller than the area of the bounding box 204, the 3D printing apparatus can determine the bounding box 206 as a bounding box of the corresponding 3D mesh.

실시 예에 따라, 3D 메쉬들 간에 유지하여야 할 간격을 고려하여 바운딩 박스의 크기를 조절할 수 있다. 예를 들어, 3D 메쉬들 간에 유지하여야 할 간격이 d인 경우, 바운딩 박스의 각 변의 길이를 d/2만큼 늘일 수 있다. According to the embodiment, the size of the bounding box can be adjusted in consideration of the interval to be maintained between the 3D meshes. For example, if the interval to be maintained between 3D meshes is d, the length of each side of the bounding box can be increased by d / 2.

다시 도 1을 참조하면, 단계(105)에서, 3D 프린팅 장치는, 바운딩 박스들 중 일 변이 기준선에 경사진 바운딩 박스를 회전시켜, 해당 바운딩 박스의 일 변이 기준선에 평행해지도록 할 수 있다. Referring again to FIG. 1, in step 105, the 3D printing device may rotate a bounding box that is sloped to one side of the bounding box so that one side of the bounding box is parallel to the baseline.

예를 들어, 도 2의 (c)에 도시된 바와 같이, 바운딩 박스(206)의 일 변이 기준선(208)과 60도의 각도를 이룬다고 가정하자. 이러한 경우, 3D 프린팅 장치는, 도 3에 도시된 바와 같이, 바운딩 박스(206)를 60도 회전시킬 수 있다. For example, assume that one side of the bounding box 206 forms an angle of 60 degrees with the baseline 208, as shown in FIG. 2 (c). In this case, the 3D printing apparatus can rotate the bounding box 206 by 60 degrees, as shown in FIG.

여기서, 기준선은, 3D 프린터의 프린팅 공간이 직사각형이라 가정할 때, 프린팅 공간의 일 변에 평행한 선일 수 있다. 바운딩 박스를 회전시킨 경우, 3D 프린팅 장치는, 바운딩 박스가 회전된 각도(이하, 제 1 회전 각도)를 해당 바운딩 박스에 대응하여 저장하여 둘 수 있다. 제 1 회전 각도는, 추후 3D 메쉬를 프린팅 공간 내에 배치할 때 이용될 수 있다. Here, the reference line may be a line parallel to one side of the printing space, assuming that the printing space of the 3D printer is rectangular. When the bounding box is rotated, the 3D printing apparatus can store the angle at which the bounding box is rotated (hereinafter referred to as a first rotation angle) corresponding to the bounding box. The first rotation angle can be used when the 3D mesh is placed in the printing space later.

단계(107)에서, 3D 프린팅 장치는, 바운딩 박스들이 서로 겹치지 않도록 바운딩 박스들을 프린팅 공간 내에 배치할 수 있다. 바운딩 박스들을 배치함에 있어, 다양한 알고리즘(예를 들어, 그리디(greedy) 알고리즘 또는 분기한정(branch and bound) 알고리즘 등)이 이용될 수 있다. 일 예로서, 그리디 알고리즘을 이용하여 바운딩 박스들을 배치하는 예를, 도 4를 참조하여 좀 더 상세히 살펴본다. In step 107, the 3D printing device may place the bounding boxes in the printing space so that the bounding boxes do not overlap each other. In placing the bounding boxes, various algorithms (e.g., greedy or branch and bound algorithms, etc.) may be used. As an example, an example of placing bounding boxes using a greedy algorithm will be described in more detail with reference to FIG.

도 4는 본 발명의 일 실시 예에 따른 바운딩 박스 배치 방법을 설명하기 위한 흐름도이다. 실시 예에 따라, 도 4에 도시된 단계들 중 적어도 하나는 생략될 수 있다. 4 is a flowchart illustrating a method of arranging a bounding box according to an embodiment of the present invention. Depending on the embodiment, at least one of the steps shown in Fig. 4 may be omitted.

단계(401)에서, 3D 프린팅 장치는, 바운딩 박스들의 배치 순서를 결정할 수 있다. 배치 순서를 결정함에 있어, 3D 프린팅 장치는, 바운딩 박스들의 변의 길이 및 면적 중 적어도 하나를 고려하여 바운딩 박스들의 배치 순서를 결정할 수 있다. In step 401, the 3D printing device may determine the placement order of the bounding boxes. In determining the placement order, the 3D printing device may determine the placement order of the bounding boxes in consideration of at least one of the length and the area of sides of the bounding boxes.

예를 들어, 도 5 에 도시된 바와 같이, 세 개의 바운딩 박스들(A, B, C)이 결정된 상황을 가정하자. 여기서, 바운딩 박스들(A, B, C)은, 서로 다른 3D 메쉬에 대하여 결정된 바운딩 박스들(A, B, C)이다. 또한, 바운딩 박스(A)의 변 중 긴 변의 길이는 L1, 바운딩 박스(B)의 변 중 긴 변의 길이는 L2, 바운딩 박스(C)의 변 중 긴 변의 길이는 L3이고, 각 변 간의 관계는 L1 > L2 > L3 라 가정하자. For example, assume that three bounding boxes A, B, C are determined, as shown in FIG. Here, the bounding boxes A, B, C are the bounding boxes A, B, C determined for different 3D meshes. The length of the long side of the bounding box A is L1, the length of the long side of the bounding box B is L2, and the length of the long side of the bounding box C is L3. Let L1> L2> L3.

이러한 경우, 3D 프린팅 장치는, 긴 변의 길이(L1)가 가장 긴 바운딩 박스(A)를 첫 번째로 배치하기로 결정하고, 긴 변의 길이(L3)가 가장 짧은 바운딩 박스(B)를 마지막에 배치하기로 결정할 수 있다. In this case, the 3D printing apparatus determines that the bounding box A having the longest length L1 is to be disposed first, and the bounding box B having the longest length L3 is disposed last Can be determined as follows.

이와 달리, 만약, 각 변 간의 관계가 L1=L2>L3이고, 바운딩 박스(B)의 면적이 바운딩 박스(A)의 면적보다 크다고 가정할 때, 3D 프린팅 장치는, 면적이 더 큰 바운딩 박스(B)를 첫 번째로 배치하기로 결정할 수 있다. 즉, 3D 프린팅 장치는, 면적보다 긴 변의 길이에 더 우선 순위를 두어 바운딩 박스들(A, B, C)의 배치 순서를 결정할 수 있다. 이와 반대로, 3D 프린팅 장치는, 긴 변의 길이보다 면적에 더 우선 순위를 두어 바운딩 박스들(A, B, C)의 배치 순서를 결정할 수도 있다. Alternatively, if the relationship between the sides is L1 = L2 > L3 and the area of the bounding box B is greater than the area of the bounding box A, then the 3D printing device may be a bounding box B) to be placed first. That is, the 3D printing apparatus can determine the arrangement order of the bounding boxes A, B, and C by prioritizing the lengths longer than the area. Conversely, the 3D printing device may determine the placement order of the bounding boxes (A, B, C) by prioritizing the area over the length of the long sides.

단계(403)에서, 3D 프린팅 장치는, 프린팅 공간 내에 바운딩 박스들을 배치하기 위하여, 각각의 바운딩 박스를 배치할 배치 후보 영역을 결정할 수 있다. In step 403, the 3D printing device may determine a placement candidate area in which to place each bounding box to place the bounding boxes within the printing space.

N 번째 바운딩 박스를 배치할 배치 후보 영역은, 1 내지 N-1 번째 배치된 바운딩 박스들의 모서리를 기준으로 결정될 수 있다. 예를 들어, 도 6의 (a)에 도시된 바와 같이, 프린팅 공간(602) 내에 바운딩 박스(A)가 배치된 상황을 가정하자. 이러한 경우, 두 번째 바운딩 박스의 배치 후보 영역은, 바운딩 박스(A)의 우측 상단에 위치하는 모서리(Ap1)와 바운딩 박스(A)의 좌측 하단에 위치하는 모서리(Ap2)를 기준으로 결정될 수 있다. 즉, 두 번째 바운딩 박스에 대하여, 모서리(Ap1)의 우측 하단 영역(Ac1)과 모서리(Ap2)의 우측 하단 영역(Ac2)이 배치 후보 영역으로 결정될 수 있다. 이후에 배치될 바운딩 박스들에 대하여도 동일한 방식으로 배치 후보 영역이 결정될 수 있다. The placement candidate region in which the N-th bounding box is to be placed may be determined based on the corners of the bounding boxes arranged from 1 to N-1th. For example, assume that the bounding box A is disposed in the printing space 602, as shown in Fig. 6 (a). In this case, the placement candidate region of the second bounding box can be determined based on the edge Ap1 located at the right upper end of the bounding box A and the edge Ap2 located at the lower left end of the bounding box A . That is, with respect to the second bounding box, the right lower area Ac1 of the edge Ap1 and the lower right area Ac2 of the edge Ap2 can be determined as the placement candidate areas. The placement candidate regions may be determined in the same manner for the bounding boxes to be placed thereafter.

한편, N이 1인 경우, 즉 첫 번째 바운딩 박스(A)의 경우에는, 디폴트로 설정된 위치, 예를 들어, 도 6의 (a)에 도시된 바와 같이, 프린팅 공간(602)의 좌측 상단에 바운딩 박스(A)가 배치될 수 있다.On the other hand, when N is 1, that is, in the case of the first bounding box A, as shown in Fig. 6 (a) A bounding box A may be disposed.

단계(405)에서, 3D 프린팅 장치는, 각각의 배치 후보 영역에 바운딩 박스를 배치하는 경우를 가정하면서, 각각의 경우에서의 목적 함수(f)를 계산할 수 있다. 목적 함수(f)는, <수학식 1>과 같이 정의될 수 있다. In step 405, the 3D printing apparatus can calculate the objective function f in each case, assuming that a bounding box is placed in each batch candidate area. The objective function (f) can be defined as Equation (1).

Figure pat00001
Figure pat00001

여기서, SN 은 N 번째 바운딩 박스의 면적, W는 N 번째 바운딩 박스를 배치하는 경우 전체 바운딩 박스를 에워싸는 최소 면적의 직사각형의 가로 길이, H는 N 번째 바운딩 박스를 배치하는 경우 전체 바운딩 박스를 에워싸는 최소 면적의 직사각형의 세로 길이를 의미한다. Where S N is the area of the Nth bounding box, W is the width of the rectangle of the smallest area surrounding the entire bounding box when the Nth bounding box is placed, H is the width of the rectangle enclosing the entire bounding box when placing the Nth bounding box Means the vertical length of the rectangle of minimum area.

즉, <수학식 1>은 N 번째 바운딩 박스를 임의의 배치 후보 영역에 배치하는 경우를 가정할 때, 전체 바운딩 박스(즉, 1 내지 N 번째 바운딩 박스)를 에워싸는 직사각형의 면적이 최소가 되는 목적 함수(f)를 계산하는 것을 나타낸다. That is, when Equation (1) assumes that the Nth bounding box is placed in an arbitrary placement candidate area, Equation (1) can be expressed as Equation (1) where the area of the rectangle surrounding the entire bounding box Denotes calculation of the function f.

예를 들어, 도 6의 (a)에 도시된 바와 같이 첫 번째 바운딩 박스(A)가 배치된 상태에서, 두 번째 바운딩 박스의 배치 후보 영역이 모서리(Ap1)를 기준으로 하는 영역(Ac1)과 모서리(Ap2)를 기준으로 하는 영역(Ac2)으로 결정된 상황을 가정하자. 그리고, 두 번째 바운딩 박스는, 도 5에 도시된 바운딩 박스(B)라 가정하자. For example, in a state where the first bounding box A is disposed as shown in FIG. 6A, the placement candidate region of the second bounding box is divided into an area Ac1 based on the edge Ap1, And the area Ac2 based on the edge Ap2. Suppose that the second bounding box is the bounding box B shown in Fig.

이러한 경우, 3D 프린팅 장치는, 영역(Ac1)과 영역(Ac2)에 바운딩 박스(B)를 배치하는 경우를 가정하면서, 각각의 경우에서의 목적 함수를 계산할 수 있다. 이 때, 3D 프린팅 장치는, 바운딩 박스(B)를 90도 회전하여 배치하면서 목적 함수를 계산할 수 있다. In this case, the 3D printing apparatus can calculate the objective function in each case, assuming that the bounding box B is arranged in the area Ac1 and the area Ac2. At this time, the 3D printing apparatus can calculate the objective function while rotating the bounding box B by 90 degrees.

예를 들어, 3D 프린팅 장치는, 도 6의 (b)에 도시된 바와 같이, 모서리(Ap1)를 기준으로 하는 영역에 바운딩 박스(B)를 회전시키지 않고 배치하는 경우를 가정하여, 직사각형(606b)의 가로 길이 및 세로 길이를 파라미터로 하는 목적 함수를 계산할 수 있다. For example, as shown in FIG. 6 (b), assuming that the bounding box B is arranged without rotating the area based on the edge Ap1, the 3D printing apparatus is arranged so that the rectangle 606b ) Can be calculated by using the horizontal length and the vertical length as parameters.

또한, 예를 들어, 3D 프린팅 장치는, 도 6의 (c)에 도시된 바와 같이, 모서리(Ap1)를 기준으로 하는 영역에 바운딩 박스(B)를 90도 회전시켜 배치하는 경우를 가정하여, 직사각형(606c)의 가로 길이 및 세로 길이를 파라미터로 하는 목적 함수를 계산할 수 있다. For example, as shown in FIG. 6C, it is assumed that the 3D printing apparatus rotates the bounding box B by 90 degrees in an area based on the edge Ap1, It is possible to calculate an objective function using the horizontal length and the vertical length of the rectangle 606c as parameters.

마찬가지로, 3D 프린팅 장치는, 도 6의 (d) 및 도 6의 (e)에 도시된 바와 같이, 모서리(Ap2)를 기준으로 하는 영역에 바운딩 박스(B)를 배치하는 경우를 가정하여, 직사각형들(606d, 606e)의 가로 길이 및 세로 길이를 파라미터로 하는 목적 함수들을 계산할 수 있다. Similarly, assuming that the bounding box B is disposed in an area based on the edge Ap2, as shown in Figs. 6 (d) and 6 (e) 606d and 606e may be calculated by using the lateral length and the longitudinal length as parameters.

다시 도 4를 참조하여 설명하면, 단계(407)에서, 3D 프린팅 장치는, 목적 함수가 최대가 최는 경우의 배치 상태에 따라, N 번째 바운딩 박스를 배치할 수 있다. Referring again to FIG. 4, in step 407, the 3D printing apparatus can arrange the N-th bounding box according to the arrangement state when the objective function is maximized.

예를 들어, 도 6의 (b) 내지 도 6의 (e)에 도시된 직사각형들(606b, 606c, 606d, 606e) 중 도 6의 (e)에 도시된 직사각형(606e)의 면적이 가장 작다고 가정할 때, 도 6의 (e)에 도시된 바와 같은 배치 상태에서 목적 함수가 최대가 된다. 따라서, 3D 프린팅 장치는, 바운딩 박스(B)를 도 6의 (e)에 도시된 바와 같이 배치할 수 있다. For example, among the rectangles 606b, 606c, 606d, and 606e shown in Figs. 6B to 6E, the area of the rectangle 606e shown in Fig. 6E is the smallest Assume that the objective function is maximized in the arrangement state as shown in FIG. 6 (e). Therefore, the 3D printing apparatus can arrange the bounding box B as shown in FIG. 6 (e).

한편, 3D 프린팅 장치는, N 번째 바운딩 박스를 90도 회전시켜 배치하는 경우, 바운딩 박스가 회전된 각도인 90도(이하, 제 2 회전 각도)를 해당 바운딩 박스에 대응하여 저장할 수 있다. 제 2 회전 각도는, 추후 3D 메쉬를 프린팅 공간 내에 배치할 때 이용될 수 있다. Meanwhile, when the N-th boundary box is rotated by 90 degrees, the 3D printing apparatus can store 90 degrees (hereinafter referred to as a second rotation angle) corresponding to the bounding box, corresponding to the rotation angle of the bounding box. The second rotation angle can be used when the 3D mesh is placed in the printing space later.

한편, 3D 프린팅 장치는, 바운딩 박스를 배치함에 있어, 바운딩 박스가 이전에 배치된 바운딩 박스와 겹치는지 또는 프린팅 공간을 벗어나는지 여부를 확인하고, 이러한 경우에 해당한다면 바운딩 박스의 배치 위치를 다시 결정할 수 있다. 예를 들어, 도 6의 (c)에 도시된 바와 같이, 바운딩 박스(B)가 프린팅 공간(602)을 벗어나는 경우 바운딩 박스(B)의 배치 위치를 다시 결정할 수 있다. Meanwhile, the 3D printing apparatus checks whether the bounding box overlaps with the previously disposed bounding box or out of the printing space when arranging the bounding box, and determines the placement position of the bounding box again if this is the case . For example, as shown in FIG. 6 (c), when the bounding box B is out of the printing space 602, the placement position of the bounding box B can be determined again.

한편, N 번째 배치된 바운딩 박스의 모서리는, N+1 번째 바운딩 박스의 배치 후보 영역을 결정하기 위한 기준점으로 이용될 수 있다. 예를 들어, 도 6의 (e)에 도시된 바와 같이, N 번째 배치된 바운딩 박스(B)의 우측 상단 모서리(Bp1) 및 좌측 하단 모서리(Bp2)는, N+1 번째 배치될 바운딩 박스의 배치 후보 영역을 결정하기 위한 기준점으로 이용될 수 있다. On the other hand, the corner of the N-th bounding box can be used as a reference point for determining the placement candidate region of the (N + 1) -th bounding box. For example, as shown in FIG. 6E, the upper right corner Bp1 and the lower left corner Bp2 of the N-th placed bounding box B are located in the (N + 1) th bounding box And can be used as a reference point for determining the placement candidate region.

다시 도 1을 참조하면, 단계(109)에서, 3D 프린팅 장치는, 바운딩 박스들이 배치된 영역에 해당 바운딩 박스에 대응하는 3D 메쉬를 배치할 수 있다. Referring again to FIG. 1, in step 109, the 3D printing device may place a 3D mesh corresponding to the bounding box in the area in which the bounding boxes are disposed.

이 때, 3D 프린팅 장치는, 이전 단계들에서 바운딩 박스가 회전된 각도를 고려하여 3D 메쉬를 배치할 수 있다. 예를 들어, 3D 프린팅 장치는, 바운딩 박스가 제 1 회전 각도만큼 회전된 경우, 해당 바운딩 박스에 대응하는 3D 메쉬를 제 1 회전 각도만큼 회전시켜 배치할 수 있다. 또한, 예를 들어, 3D 프린팅 장치는, 바운딩 박스가 제 2 회전 각도만큼 회전된 경우, 해당 바운딩 박스에 대응하는 3D 메쉬를 제 2 회전 각도만큼 회전시켜 배치할 수 있다. At this time, the 3D printing apparatus can arrange the 3D mesh in consideration of the angle at which the bounding box is rotated in the previous steps. For example, when the bounding box is rotated by the first rotation angle, the 3D printing apparatus may rotate the 3D mesh corresponding to the bounding box by rotating the first direction by a first rotation angle. In addition, for example, when the bounding box is rotated by the second rotation angle, the 3D printing apparatus can rotate the 3D mesh corresponding to the bounding box by the second rotation angle.

단계(111)에서, 3D 프린팅 장치는, 프린팅 공간 내에 배치된 복수의 3D 메쉬들을 이용하여 3D 프린팅을 수행할 수 있다. 이에 따라, 복수의 3D 오브젝트들이 동시에 프린팅될 수 있다. In step 111, the 3D printing device may perform 3D printing using a plurality of 3D meshes placed in the printing space. Thereby, a plurality of 3D objects can be printed at the same time.

본 발명의 실시 예들은, 컴퓨터 시스템 내에, 예를 들어, 컴퓨터 판독가능 기록 매체로 구현될 수 있다. 도 7에 도시된 바와 같이, 컴퓨터 시스템(700)은 하나 이상의 프로세서(710), 메모리(720), 저장부(730), 사용자 인터페이스 입력부(740) 및 사용자 인터페이스 출력부(750) 중 적어도 하나 이상의 요소를 포함할 수 있으며, 이들은 버스(760)를 통해 서로 통신할 수 있다. 또한, 컴퓨터 시스템(700)은 네트워크에 접속하기 위한 네트워크 인터페이스(770)를 또한 포함할 수 있다. 프로세서(710)는 메모리(720) 및/또는 저장소(730)에 저장된 처리 명령어를 실행시키는 CPU 또는 반도체 소자일 수 있다. 메모리(720) 및 저장부(730)는 다양한 유형의 휘발성/비휘발성 기억 매체를 포함할 수 있다. 예를 들어, 메모리는 ROM(724) 및 RAM(725)을 포함할 수 있다. Embodiments of the invention may be embodied in a computer system, for example, a computer-readable recording medium. 7, the computer system 700 may include one or more processors 710, a memory 720, a storage 730, a user interface input 740, and a user interface output 750, Elements, which may communicate with each other via bus 760. [ In addition, the computer system 700 may also include a network interface 770 for connecting to a network. The processor 710 may be a CPU or a semiconductor device that executes processing instructions stored in the memory 720 and / or the storage 730. Memory 720 and storage 730 may include various types of volatile / non-volatile storage media. For example, the memory may include a ROM 724 and a RAM 725.

이에 따라, 본 발명의 실시 예들은 컴퓨터로 구현되는 방법 또는 컴퓨터 실행 가능 명령어들이 저장된 비휘발성 컴퓨터 기록 매체로 구현될 수 있다. 상기 명령어들은 프로세서에 의해 실행될 때 본 발명의 적어도 일 실시 예에 따른 방법을 수행할 수 있다. Accordingly, embodiments of the invention may be embodied in a computer-implemented method or in a non-volatile computer storage medium having stored thereon computer-executable instructions. The instructions, when executed by a processor, may perform the method according to at least one embodiment of the present invention.

Claims (16)

복수의 3D 메쉬들 각각의 바운딩 박스를 결정하는 단계;
상기 각각의 바운딩 박스 중 일 변이 기준선에 경사진 바운딩 박스를 회전시켜 상기 일 변이 상기 기준선에 평행해지도록 하는 단계;
상기 기준선에 일 변이 평행한 바운딩 박스들이 서로 겹치지 않도록 프린팅 공간 내에 배치하는 단계;
각각의 바운딩 박스에 대응하는 3D 메쉬를, 해당 3D 메쉬에 대응하는 바운딩 박스가 배치된 영역에 배치하는 단계; 및
배치된 3D 메쉬들을 이용하여 복수의 3D 오브젝트를 프린팅하는 단계
를 포함하는 3D 프린팅 방법.
Determining a bounding box of each of the plurality of 3D meshes;
Rotating one of the bounding boxes inclined at one side of the bounding box so that one side of the bounding box is parallel to the reference line;
Placing in a printing space such that bounding boxes parallel to one side of the baseline do not overlap each other;
Placing a 3D mesh corresponding to each bounding box in an area in which a bounding box corresponding to the 3D mesh is disposed; And
Printing a plurality of 3D objects using the arranged 3D meshes
&Lt; / RTI &gt;
제 1 항에 있어서, 상기 바운딩 박스를 결정하는 단계는,
3D 메쉬의 볼록 껍질(convex hull)을 계산하는 단계; 및
상기 볼록 껍질을 에워싸는 최소 면적의 바운딩 박스를 결정하는 단계
를 포함하는 3D 프린팅 방법.
2. The method of claim 1, wherein determining the bounding box comprises:
Calculating a convex hull of the 3D mesh; And
Determining a minimum bounding box surrounding the convex shell
&Lt; / RTI &gt;
제 1 항에 있어서, 상기 바운딩 박스들을 배치하는 단계는,
상기 바운딩 박스들의 변의 길이 및 면적 중 적어도 하나를 기준으로 상기 바운딩 박스들의 배치 순서를 결정하는 단계를 포함하는
3D 프린팅 방법.
The method of claim 1, wherein arranging the bounding boxes comprises:
Determining a placement order of the bounding boxes based on at least one of a length and an area of sides of the bounding boxes;
3D printing method.
제 1 항에 있어서, 상기 바운딩 박스들을 배치하는 단계는,
1 내지 N-1 번째 배치된 바운딩 박스들의 모서리들을 기준으로, N 번째 바운딩 박스의 배치 후보 영역들을 결정하는 단계;
상기 배치 후보 영역들 각각에 대하여, 해당 배치 후보 영역에 N 번째 바운딩 박스를 배치하는 경우 N개의 바운딩 박스들을 모두 에워싸는 직사각형의 면적을 계산하는 단계; 및
상기 직사각형의 면적이 최소로 계산되는 배치 후보 영역에 N 번째 바운딩 박스를 배치하는 단계
를 포함하는 3D 프린팅 방법.
The method of claim 1, wherein arranging the bounding boxes comprises:
Determining placement candidate regions of the N-th bounding box based on the edges of the first to (N-1) -th bounding boxes;
Calculating an area of a rectangle surrounding all N bounding boxes when an N-th bounding box is arranged in the placement candidate region for each of the placement candidate regions; And
Placing an Nth bounding box in a placement candidate region where the area of the rectangle is calculated to be a minimum,
&Lt; / RTI &gt;
제 4 항에 있어서, 상기 직사각형의 면적을 계산하는 단계는,
상기 N 번째 바운딩 박스를 90도 회전시킨 상태에서 상기 직사각형의 면적을 계산하는 단계
를 포함하는 3D 프린팅 방법.
5. The method of claim 4, wherein calculating the area of the rectangle comprises:
Calculating an area of the rectangle while rotating the N-th bounding box by 90 degrees
&Lt; / RTI &gt;
제 1 항에 있어서,
상기 프린팅 공간은 직사각형이고, 상기 기준선은 상기 프린팅 공간의 일 변에 평행한
3D 프린팅 방법.
The method according to claim 1,
Wherein the printing space is rectangular and the baseline is parallel to one side of the printing space
3D printing method.
제 1 항에 있어서,
3D 메쉬들 간의 간격을 고려하여 상기 바운딩 박스의 크기를 조절하는 단계
를 더 포함하는 3D 프린팅 방법.
The method according to claim 1,
Adjusting the size of the bounding box considering the interval between the 3D meshes
Further comprising the steps of:
제 1 항에 있어서, 상기 3D 메쉬를 배치하는 단계는,
해당 3D 메쉬에 대응하는 바운딩 박스가 회전된 각도를 고려하여 해당 3D 메쉬를 배치하는 단계
를 포함하는 3D 프린팅 방법.
The method of claim 1, wherein the step of disposing the 3D mesh comprises:
Placing the corresponding 3D mesh in consideration of the rotated angle of the bounding box corresponding to the 3D mesh;
&Lt; / RTI &gt;
프로세서 및 메모리를 포함하는 3D 프린팅 장치로서,
상기 메모리에 복수의 3D 메쉬들과 상기 복수의 3D 메쉬들을 이용하여 3D 프린팅을 수행하기 위한 명령어들이 저장되며,
상기 명령어들은, 상기 프로세서에 의하여 실행될 때, 상기 프로세서로 하여금,
상기 복수의 3D 메쉬들 각각의 바운딩 박스를 결정하고, 상기 각각의 바운딩 박스 중 일 변이 기준선에 경사진 바운딩 박스를 회전시켜 상기 일 변이 상기 기준선에 평행해지도록 하며, 상기 기준선에 일 변이 평행한 바운딩 박스들이 서로 겹치지 않도록 프린팅 공간 내에 배치하고, 각각의 바운딩 박스에 대응하는 3D 메쉬를 해당 3D 메쉬에 대응하는 바운딩 박스가 배치된 영역에 배치하며, 배치된 3D 메쉬들을 이용하여 복수의 3D 오브젝트를 프린팅하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
A 3D printing apparatus comprising a processor and a memory,
Wherein instructions for performing 3D printing using a plurality of 3D meshes and the plurality of 3D meshes are stored in the memory,
Wherein the instructions, when executed by the processor, cause the processor to:
Determining a bounding box of each of the plurality of 3D meshes, rotating one of the bounding boxes inclined at one side of the bounding box so that one side of the bounding box is parallel to the reference line, Placing the 3D mesh corresponding to each bounding box in an area where a bounding box corresponding to the corresponding 3D mesh is disposed and arranging a plurality of 3D objects on the 3D mesh using the arranged 3D meshes, That contain instructions to
3D printing device.
제 9 항에 있어서, 상기 명령어들은,
3D 메쉬의 볼록 껍질(convex hull)을 계산하고, 상기 볼록 껍질을 에워싸는 최소 면적의 바운딩 박스를 결정하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
10. The method of claim 9,
Calculating a convex hull of the 3D mesh, and determining the bounding box of the minimum area surrounding the convex hull
3D printing device.
제 9 항에 있어서, 상기 명령어들은,
상기 바운딩 박스들의 변의 길이 및 면적 중 적어도 하나를 기준으로 상기 바운딩 박스들의 배치 순서를 결정하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
10. The method of claim 9,
Determining a placement order of the bounding boxes based on at least one of a length and an area of sides of the bounding boxes;
3D printing device.
제 9 항에 있어서, 상기 명령어들은,
1 내지 N-1 번째 배치된 바운딩 박스들의 모서리들을 기준으로 N 번째 바운딩 박스의 배치 후보 영역들을 결정하고, 상기 배치 후보 영역들 각각에 대하여 해당 배치 후보 영역에 N 번째 바운딩 박스를 배치하는 경우 N개의 바운딩 박스들을 모두 에워싸는 직사각형의 면적을 계산하며, 상기 직사각형의 면적이 최소로 계산되는 배치 후보 영역에 N 번째 바운딩 박스를 배치하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
10. The method of claim 9,
If the arrangement candidate regions of the N-th bounding box are determined based on the edges of the first to (N-1) -th bounding boxes and the N-th bounding box is arranged in the placement candidate region for each of the placement candidate regions, N Calculating an area of a rectangle all surrounding the bounding boxes, and placing an N-th bounding box in the placement candidate area where the area of the rectangle is calculated to be the smallest
3D printing device.
제 12 항에 있어서, 상기 명령어들은,
상기 N 번째 바운딩 박스를 90도 회전시킨 상태에서 상기 직사각형의 면적을 계산하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
13. The computer-readable medium of claim 12,
And calculating the area of the rectangle while rotating the N-th bounding box by 90 degrees
3D printing device.
제 9 항에 있어서,
상기 프린팅 공간은 직사각형이고, 상기 기준선은 상기 프린팅 공간의 일변에 평행한
3D 프린팅 장치.
10. The method of claim 9,
Wherein the printing space is rectangular and the baseline is parallel to one side of the printing space
3D printing device.
제 9 항에 있어서, 상기 명령어들은,
3D 메쉬들 간의 간격을 고려하여 상기 바운딩 박스의 크기를 조절하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
10. The method of claim 9,
And adjusting the size of the bounding box in consideration of the interval between the 3D meshes
3D printing device.
제 9 항에 있어서, 상기 명령어들은,
상기 3D 메쉬를 배치할 때, 해당 3D 메쉬에 대응하는 바운딩 박스가 회전된 각도를 고려하여 해당 3D 메쉬를 배치하도록 하는 명령어들을 포함하는
3D 프린팅 장치.
10. The method of claim 9,
And arranging the 3D mesh in consideration of the angle of rotation of the bounding box corresponding to the 3D mesh when the 3D mesh is arranged
3D printing device.
KR1020160077473A 2016-06-21 2016-06-21 3D printing method for a plurality of 3D objects and apparatus thereof KR20170143346A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160077473A KR20170143346A (en) 2016-06-21 2016-06-21 3D printing method for a plurality of 3D objects and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160077473A KR20170143346A (en) 2016-06-21 2016-06-21 3D printing method for a plurality of 3D objects and apparatus thereof

Publications (1)

Publication Number Publication Date
KR20170143346A true KR20170143346A (en) 2017-12-29

Family

ID=60939176

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160077473A KR20170143346A (en) 2016-06-21 2016-06-21 3D printing method for a plurality of 3D objects and apparatus thereof

Country Status (1)

Country Link
KR (1) KR20170143346A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112150350A (en) * 2020-09-23 2020-12-29 深圳市创想三维科技有限公司 Model plane layout method, system and computer equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112150350A (en) * 2020-09-23 2020-12-29 深圳市创想三维科技有限公司 Model plane layout method, system and computer equipment

Similar Documents

Publication Publication Date Title
EP3026627B1 (en) Image processing method and apparatus
JP2020042818A (en) Method and apparatus for generating three-dimensional data, computer device, and computer-readable storage medium
EP3444775A1 (en) Single pass rendering for head mounted displays
US20190210288A1 (en) Systems and methods for printing of 3d models
US8878944B2 (en) Image processing apparatus and method, image processing system and program
US20140313206A1 (en) Fast high-fidelity flood-filling on vector artwork
WO2021243924A1 (en) Tray space planning method, palletizing method and apparatuses thereof, and electronic device
US10109029B2 (en) Processing of primitive blocks in parallel tiling engine pipes
US8659620B2 (en) Methods and apparatus for rendering images
CN105590335A (en) Point cloud mesh refinement system and point cloud mesh refinement method
US11610415B2 (en) Apparatus and method for identifying an articulatable part of a physical object using multiple 3D point clouds
CN108492243B (en) Image rotation device, system and method based on block processing
US20110273528A1 (en) Simulation program, simulation device, and simulation method
US9299127B2 (en) Splitting of elliptical images
CN109410213A (en) Polygon pel method of cutting out, computer readable storage medium, electronic equipment based on bounding box
JPH117541A (en) Volume data composing method
KR20170143346A (en) 3D printing method for a plurality of 3D objects and apparatus thereof
CN113506305B (en) Image enhancement method, semantic segmentation method and device for three-dimensional point cloud data
US8798370B2 (en) Pattern identifying apparatus, pattern identifying method and program
KR101682296B1 (en) 3 dimensional printer device and method for positioning 3 dimensional object
JP6598546B2 (en) Image processing apparatus, image processing method, and program
JP6590606B2 (en) Image processing apparatus, image processing method, and program
US10035297B2 (en) Apparatus and method for generating bitmap of 3-dimensional model
JP2008225187A (en) Data generating method and data generating device
JP2006220591A (en) Photogrammetry system, photogrammetry method, and photogrammetry program