KR20230007909A - Method for adding text on three dimensional model and apparatus for processing three dimensional model - Google Patents
Method for adding text on three dimensional model and apparatus for processing three dimensional model Download PDFInfo
- Publication number
- KR20230007909A KR20230007909A KR1020210135928A KR20210135928A KR20230007909A KR 20230007909 A KR20230007909 A KR 20230007909A KR 1020210135928 A KR1020210135928 A KR 1020210135928A KR 20210135928 A KR20210135928 A KR 20210135928A KR 20230007909 A KR20230007909 A KR 20230007909A
- Authority
- KR
- South Korea
- Prior art keywords
- model
- text data
- processing apparatus
- data
- text
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012545 processing Methods 0.000 title claims description 246
- 210000000214 mouth Anatomy 0.000 description 18
- 230000008569 process Effects 0.000 description 11
- 238000010146 3D printing Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 210000004195 gingiva Anatomy 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 4
- 238000002591 computed tomography Methods 0.000 description 4
- 230000001678 irradiating effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000007943 implant Substances 0.000 description 2
- 238000002595 magnetic resonance imaging Methods 0.000 description 2
- 210000000056 organ Anatomy 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000003826 tablet Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000011505 plaster Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
본 개시는 3차원 모델 상에 텍스트를 추가하는 방법 및 3차원 모델 처리 장치에 관한 것이다.The present disclosure relates to a method for adding text on a 3D model and a 3D model processing apparatus.
치과 치료, 특히 보철 등의 치료를 하는 데 있어 치과용CAD/CAM(Dental Computer Aided Design/Computer Aided Manufacturing) 기술이 널리 사용되고 있다. CAD/CAM을 이용한 치과 치료에서 가장 중요한 것은 환자의 치아, 잇몸, 턱뼈 등의 대상체의 형상에 대하여 정교한 3차원 데이터를 획득하는 것이다. 치과 치료를 수행함에 있어서, 대상체로부터 획득된 3차원 데이터를 이용하면, 컴퓨터에 의하여 정확한 계산이 수행될 수 있다는 장점이 있다.Dental CAD/CAM (Dental Computer Aided Design/Computer Aided Manufacturing) technology is widely used in dental treatment, particularly prosthetic treatment. The most important thing in dental treatment using CAD/CAM is to acquire precise 3D data about the shape of an object such as a patient's teeth, gums, and jawbone. In performing dental treatment, there is an advantage in that accurate calculation can be performed by a computer by using 3D data obtained from an object.
예를 들어, 치과용 CAD/CAM 치료과정에서 대상체의 3차원 데이터를 획득하기 위해서는, CT(Computed Tomography), MRI(Magnetic Resonance Imaging), 및 광학 스캐닝 등의 방법이 이용될 수 있다.For example, methods such as computed tomography (CT), magnetic resonance imaging (MRI), and optical scanning may be used to obtain 3D data of an object during dental CAD/CAM treatment.
치과 CAD/CAM 분야에서는 3차원 스캔 장치가 많이 사용되고 있다. 3차원 스캔 장치는 대상체로부터 반사되는 빛을 이용하여 3차원 표면 형상 정보를 획득할 수 있으며, 예를 들어 치아의 인상체, 인상체에 대해서 획득된 석고 모형 또는 치아의 표면의 3차원 모델을 획득할 수 있다. 표면 데이터는, 폴리곤메쉬 형태로 기록되고, 대상체의 표면의 정점들의 위치 정보와 각 정점들의 연결 관계 정보를 포함할 수 있다. 또는, 표면 데이터는, 포인트 클라우드 형태로 기록되고, 대상체의 표면의 정점들의 위치 정보를 포함할 수 있다.In the dental CAD/CAM field, 3D scanning devices are widely used. The 3D scanning device may obtain 3D surface shape information by using light reflected from an object. For example, an impression of a tooth, a plaster model obtained for the impression, or a 3D model of the surface of a tooth may be acquired. can do. The surface data may be recorded in the form of a polygon mesh, and may include location information of vertices of the surface of the object and connection relationship information between the respective vertices. Alternatively, the surface data may be recorded in the form of a point cloud and include location information of vertices of the surface of the object.
최근에 3차원 프린팅을 통해, 디지털 3차원 모델로부터 3차원 물체(object)를 제작하는 기술이 널리 이용되고 있다. 3차원 프린팅을 통해 제작된 3차원 물체들을 대량으로 관리하기 위해서는, 3차원 물체들 각각에 대한 정보를 나타내는 텍스트가 3차원 물체 상에 추가되어야 한다.Recently, a technique for manufacturing a 3D object from a digital 3D model through 3D printing has been widely used. In order to manage 3D objects manufactured through 3D printing in large quantities, text indicating information on each of the 3D objects must be added to the 3D objects.
3차원 모델의 표면이 평탄하지 않고 굴곡이 심한 경우 3차원 모델 상에 추가된 3차원 텍스트가, 3차원 프린팅 과정에서 3차원 모델로부터 떨어져 나가는 문제가 발생할 수 있다.If the surface of the 3D model is not flat and has severe curvature, the 3D text added on the 3D model may be separated from the 3D model during the 3D printing process.
본 개시의 일 측면은 대상체를 나타내는 3차원 모델 상에 텍스트를 추가하는 방법에 있어서, 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는 단계; 상기 3차원 텍스트 데이터와 상기 3차원 모델을 화면 상에 표시하는 단계; 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계; 및 상기 판단 결과를 화면 상에 표시하는 단계를 포함하는, 방법을 제공할 수 있다.One aspect of the present disclosure is a method of adding text on a 3D model representing an object, comprising: acquiring 3D text data corresponding to at least one character; displaying the 3D text data and the 3D model on a screen; determining whether the 3D text data and the 3D model can be combined based on whether the 3D text data to which a predetermined offset is applied intersect with the 3D model; and displaying the determination result on a screen.
또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터를 획득하는 단계는, 상기 적어도 하나의 문자에 관한 사용자 입력을 수신하는 단계; 상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하는 단계; 상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하는 단계; 및 상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 방법을 제공할 수 있다. Also, according to an embodiment of the present disclosure, the acquiring of the 3D text data may include receiving a user input related to the at least one character; acquiring contour data corresponding to the at least one character; obtaining 2D mesh data by connecting a plurality of first vertices included in the contour data; and a method of obtaining, as the 3D text data, 3D mesh data including the 2D mesh data as a first surface and a second surface spaced apart from the first surface by a predetermined depth. .
또한 본 개시의 일 실시 예에서 사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, according to an embodiment of the present disclosure, a method may be provided, further comprising determining a location of the 3D text data based on a user input.
또한 본 개시의 일 실시 예에서 상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하는 단계; 상기 화면 상의 소정 위치에 기초하여 기준점을 결정하는 단계; 및 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, in an embodiment of the present disclosure, receiving a user input of dragging the 3D text data displayed on the screen to a predetermined position; determining a reference point based on a predetermined position on the screen; and determining the location of the 3D text data based on the distance from the reference point to the surface of the 3D model.
또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터의 위치를 결정하는 단계는, 상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 외부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법을 제공할 수 있다. In addition, in an embodiment of the present disclosure, the step of determining the location of the 3D text data may include: first and second sides of the 3D text data are located outside the 3D model, and the 3D text data is located outside the 3D model. A method may be provided, including determining a location of the 3D text data having a minimum distance to the surface of the model.
또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터의 위치를 결정하는 단계는, 상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법을 제공할 수 있다. In addition, in an embodiment of the present disclosure, the step of determining the location of the 3D text data may include: first and second sides of the 3D text data are located inside the 3D model, and the 3D text data is located from the reference point. A method may be provided, including determining a location of the 3D text data having a minimum distance to the surface of the model.
또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는, 상기 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 상기 소정 오프셋만큼 이동시키는 단계; 상기 3차원 텍스트 데이터의 제1 면의 제1 정점과 상기 이동된 제2 정점을 연결하는 라인을 결정하는 단계; 및 상기 라인과 상기 3차원 모델의 표면이 교차하는 지 여부를 판단하는 단계를 포함하는, 방법을 제공할 수 있다. Also, in an embodiment of the present disclosure, determining whether the 3D text data and the 3D model can be combined may include moving a second vertex included in a second side of the 3D text data by the predetermined offset. ; determining a line connecting a first vertex of the first side of the 3D text data and the moved second vertex; and determining whether the line and the surface of the 3D model intersect.
또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는, 상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, in an embodiment of the present disclosure, determining whether the 3D text data and the 3D model can be combined may include moving first vertices of the first side of the 3D text data by the predetermined offset. The method further comprising determining that the 3D text data and the 3D model can be combined when the number of lines crossing the surface of the 3D model, among the lines connecting the 2 vertices, is greater than or equal to a reference number. can provide.
또한 본 개시의 일 실시 예에서 상기 판단 결과를 화면 상에 표시하는 단계는, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지 여부에 기초하여, 상기 화면 상에 표시되는 상기 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정하는 단계를 포함하는, 방법을 제공할 수 있다. In addition, in an embodiment of the present disclosure, the step of displaying the determination result on the screen may include the 3D text data displayed on the screen based on whether the 3D text data and the 3D model can be combined. It is possible to provide a method comprising determining at least one of color, shape, or brightness of.
또한 본 개시의 일 실시 예에서 상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, in an embodiment of the present disclosure, by combining the 3D text data to which the predetermined offset is applied on the 3D model or deleting data corresponding to the 3D text data to which the predetermined offset is applied from the 3D model. , It is possible to provide a method that further includes obtaining a 3D model to which text is added.
본 개시의 다른 측면은 대상체를 나타내는 3차원 모델을 처리하는 장치에 있어서, 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는, 적어도 하나의 프로세서; 및 상기 3차원 텍스트 데이터와 상기 3차원 모델을 표시하는 디스플레이를 포함하고, 상기 적어도 하나의 프로세서는, 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하고, 상기 판단 결과를 화면 상에 표시하도록 상기 디스플레이를 제어하는, 3차원 모델 처리 장치를 제공할 수 있다. Another aspect of the present disclosure is an apparatus for processing a 3D model representing an object, comprising: at least one processor that obtains 3D text data corresponding to at least one character; and a display displaying the 3D text data and the 3D model, wherein the at least one processor determines whether the 3D text data to which a predetermined offset is applied intersects with the 3D model, and determines whether the 3D text data and the 3D model intersect. It is possible to provide a 3D model processing apparatus that determines whether text data and the 3D model can be combined and controls the display to display the determination result on a screen.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 문자에 관한 사용자 입력을 수신하고, 상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하고, 상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하고, 상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in one embodiment of the present disclosure, the at least one processor receives a user input related to the at least one character, obtains contour data corresponding to the at least one character, and obtains a plurality of data included in the contour data. 2D mesh data is obtained by connecting the first vertices, and 3D mesh data including the 2D mesh data as a first surface and a second surface spaced apart from the first surface by a predetermined depth is obtained from the third surface. It is possible to provide a 3D model processing device that obtains as dimensional text data.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, according to an embodiment of the present disclosure, the at least one processor may provide a 3D model processing device that determines the position of the 3D text data based on a user input.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하고, 상기 화면 상의 소정 위치에 기초하여 기준점을 결정하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in one embodiment of the present disclosure, the at least one processor receives a user input for dragging the 3D text data displayed on the screen to a predetermined location, determines a reference point based on the predetermined location on the screen, It is possible to provide a 3D model processing apparatus that determines the position of the 3D text data based on the distance from the reference point to the surface of the 3D model.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 외부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in one embodiment of the present disclosure, the at least one processor is configured such that the first side and the second side of the 3D text data are located outside the 3D model, and the distance from the reference point to the surface of the 3D model It is possible to provide a 3D model processing device that determines the position of the 3D text data, where is the minimum.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, according to an embodiment of the present disclosure, the at least one processor determines that the first side and the second side of the 3D text data are located inside the 3D model, and the distance from the reference point to the surface of the 3D model. It is possible to provide a 3D model processing device that determines the position of the 3D text data, where is the minimum.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 상기 소정 오프셋만큼 이동시키고, 상기 3차원 텍스트 데이터의 제1 면의 제1 정점과 상기 이동된 제2 정점을 연결하는 라인을 결정하고, 상기 라인과 상기 3차원 모델의 표면이 교차하는 지 여부를 판단하는, 3차원 모델 처리 장치를 제공할 수 있다. Also, according to an embodiment of the present disclosure, the at least one processor moves a second vertex included in the second side of the 3D text data by the predetermined offset, and moves the first vertex of the first side of the 3D text data. It is possible to provide a 3D model processing apparatus that determines a line connecting a vertex and the moved second vertex, and determines whether the line and the surface of the 3D model intersect.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, according to an embodiment of the present disclosure, the at least one processor may select the 3D text data among lines connecting first vertices of the first side of the 3D text data and second vertices moved by the predetermined offset. When the number of lines crossing the surface of the model is greater than or equal to a reference number, a 3D model processing apparatus that determines that the 3D text data and the 3D model can be combined can be provided.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지 여부에 기초하여, 상기 화면 상에 표시되는 상기 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in one embodiment of the present disclosure, the at least one processor determines the color, shape, and color of the 3D text data displayed on the screen, based on whether the 3D text data and the 3D model can be combined. Alternatively, a 3D model processing apparatus for determining at least one of brightness may be provided.
또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는, 3차원 모델 처리 장치를 제공할 수 있다. Also, in an embodiment of the present disclosure, the at least one processor may combine the 3D text data to which the predetermined offset is applied on the 3D model, or the 3D text data to which the predetermined offset is applied from the 3D model. By deleting data corresponding to , it is possible to provide a 3D model processing apparatus that obtains a 3D model to which text is added.
개시된 실시 예들에 따르면, 3차원 프린팅 과정에서 3차원 모델로부터 텍스트가 떨어져 나가는 위험을 낮출 수 있다.According to the disclosed embodiments, it is possible to reduce the risk of text being separated from the 3D model during the 3D printing process.
또한, 개시된 실시 예들에 따르면, 입력하고자 하는 텍스트에 포함되는 복수의 문자들이 3차원 모델과 잘 결합하는 지 여부를, 사용자가 각 문자 별로 명확하게 인지할 수 있다.In addition, according to the disclosed embodiments, a user can clearly recognize for each character whether a plurality of characters included in the text to be input are well combined with the 3D model.
본 개시는, 다음의 자세한 설명과 그에 수반되는 도면들의 결합으로 쉽게 이해될 수 있으며, 참조 번호(reference numerals)들은 구조적 구성요소(structural elements)를 의미할 수 있다.
도 1은 일 실시 예에 따른 3차원 모델 처리 시스템을 설명하기 위한 도면이다.
도 2는 일 실시 예에 따른 3차원 모델 처리 시스템의 블록도를 도시한다.
도 3a는 일반적인 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법을 설명한다.
도 3b는 일반적인 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법을 설명한다.
도 4는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법의 흐름도를 도시한다.
도 5a는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 텍스트 데이터를 획득하는 과정의 예를 도시한다.
도 5b는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 텍스트 데이터를 획득하는 과정의 예를 도시한다.
도 5c는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 텍스트 데이터를 획득하는 과정의 예를 도시한다.
도 6a는 일 실시 예에 따른 3차원 모델 처리 장치가 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부를 판단하는 방법을 설명한다.
도 6b는 일 실시 예에 따른 3차원 모델 처리 장치가 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부를 판단하는 방법을 설명한다.
도 7a는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 상에 양각 방식으로 텍스트를 추가한 예를 도시한다.
도 7b는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 내에 음각 방식으로 텍스트를 추가한 예를 도시한다.
도 8a는 일 실시 예에 따른 3차원 모델 처리 장치가 디스플레이 하는 화면의 예를 도시한다.
도 8b는 일 실시 예에 따른 3차원 모델 처리 장치가 디스플레이 하는 화면의 예를 도시한다.
도 9는 일 실시 예에 따른 3차원 모델 처리 장치가 출력하는 결과 데이터의 예를 도시한다.
도 10은 일 실시 예에 따른 3차원 모델 처리 장치의 블록도를 도시한다.The present disclosure may be readily understood from the combination of the following detailed description and accompanying drawings, where reference numerals may denote structural elements.
1 is a diagram for explaining a 3D model processing system according to an exemplary embodiment.
2 shows a block diagram of a 3D model processing system according to an embodiment.
3A describes a method in which a general 3D model processing apparatus adds text to a 3D model.
3B describes a method in which a general 3D model processing device adds text to a 3D model.
4 is a flowchart of a method of adding text to a 3D model by a 3D model processing apparatus according to an exemplary embodiment.
5A illustrates an example of a process in which a 3D model processing apparatus acquires 3D text data according to an embodiment.
5B illustrates an example of a process in which a 3D model processing apparatus acquires 3D text data according to an embodiment.
5C illustrates an example of a process of acquiring 3D text data by a 3D model processing apparatus according to an embodiment.
6A describes a method in which a 3D model processing apparatus determines whether offset-applied 3D text data and a 3D model intersect according to an exemplary embodiment.
6B describes a method in which a 3D model processing apparatus determines whether offset-applied 3D text data and a 3D model intersect according to an exemplary embodiment.
7A illustrates an example in which a 3D model processing apparatus adds text on a 3D model in an embossed manner according to an embodiment.
7B illustrates an example in which a 3D model processing apparatus adds text to a 3D model in an intaglio manner according to an embodiment.
8A illustrates an example of a screen displayed by a 3D model processing apparatus according to an embodiment.
8B illustrates an example of a screen displayed by a 3D model processing apparatus according to an embodiment.
9 illustrates an example of result data output by a 3D model processing apparatus according to an embodiment.
10 is a block diagram of a 3D model processing apparatus according to an exemplary embodiment.
본 명세서는 본 발명의 권리범위를 명확히 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 실시할 수 있도록, 본 발명의 원리를 설명하고, 실시 예들을 개시한다. 개시된 실시 예들은 다양한 형태로 구현될 수 있다.This specification clarifies the scope of the present invention, explains the principles of the present invention, and discloses embodiments so that those skilled in the art can practice the present invention. The disclosed embodiments may be implemented in various forms.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시 예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시 예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부'(part, portion)라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시 예들에 따라 복수의 '부'가 하나의 요소(unit, element)로 구현되거나, 하나의 '부'가 복수의 요소들을 포함하는 것도 가능하다. 이하 첨부된 도면들을 참고하여 본 발명의 작용 원리 및 실시 예들에 대해 설명한다.Like reference numbers designate like elements throughout the specification. This specification does not describe all elements of the embodiments, and general content or overlapping content between the embodiments in the technical field to which the present invention pertains will be omitted. The term 'part' (portion) used in the specification may be implemented in software or hardware, and according to embodiments, a plurality of 'units' may be implemented as one element (unit, element), or a single 'unit' It is also possible that ' contains a plurality of elements. Hereinafter, the working principle and embodiments of the present invention will be described with reference to the accompanying drawings.
본 개시에서 '대상체(object)'는 촬영의 대상이 되는 것으로서, 사람, 동물, 또는 그 일부를 포함할 수 있다. 예를 들어, 대상체는 신체의 일부(장기 또는 기관 등), 대상체 상에 부착 가능하거나 대상체 내에 삽입 가능한 인공 구조물, 또는 팬텀(phantom) 등을 포함할 수 있다. 예를 들어, 대상체는 치아, 치은, 구강의 적어도 일부 영역, 및/또는 구강 내에 삽입 가능한 인공 구조물(예를 들어, 브라켓 및 와이어를 포함하는 교정 장치, 임플란트, 인공 치아, 인레이 및 온레이 등을 포함하는 치아 수복물, 구강 내 삽입되는 교정 보조 도구 등), 인공 구조물이 부착된 치아 또는 치은 등을 포함할 수 있다.In the present disclosure, an 'object' is an object to be photographed, and may include a human, an animal, or a part thereof. For example, the object may include a body part (organ or organ, etc.), an artificial structure attachable on or insertable into the object, or a phantom. For example, the object may include teeth, gingiva, at least a portion of the oral cavity, and/or artificial structures (eg, orthodontic devices including brackets and wires, implants, artificial teeth, inlays, and onlays) that can be inserted into the oral cavity. dental restorations including, orthodontic aids inserted into the oral cavity, etc.), teeth or gingiva to which artificial structures are attached, and the like.
본 개시에서 '영상'은 대상체에 대한 2차원 영상 또는 대상체를 입체적으로 나타내는 3차원 모델 또는 3차원 영상이 될 수 있다. 본 개시에서 영상이란, 2차원 프레임 및 3차원 프레임을 모두 포함할 수 있다. 예를 들어, 영상은, 대상체에 대해서 서로 다른 시점에서 획득된 2차원 영상들을 포함하는 2차원 프레임, 또는 포인트 클라우드 형태 또는 폴리곤 메쉬 형태로 표현되는 3차원 프레임을 포함할 수 있다.In the present disclosure, an 'image' may be a 2D image of an object or a 3D model or 3D image representing the object in three dimensions. In the present disclosure, an image may include both a 2D frame and a 3D frame. For example, the image may include a 2D frame including 2D images acquired at different viewpoints of the object, or a 3D frame expressed in the form of a point cloud or polygon mesh.
또한, 본 개시에서 '데이터'는 대상체를 2차원 또는 3차원적으로 표현하기 위해서 필요한 정보, 예를 들어, 적어도 하나의 영상 센서로부터 획득된 로우 데이터(raw data)를 의미할 수 있다. 구체적으로, 로우 데이터는 대상체에 대한 3차원 모델을 생성하기 위해서 획득되는 2차원 영상들일 수 있다. 로우 데이터는, 3차원 스캐너(예를 들어, 구강 스캐너(intraoral scanner))를 이용하여 대상체를 스캔할 때 복수의 영상 센서들에 의해 획득되는 서로 다른 시점의 2차원 영상들이 될 수 있다. 또한, 본 개시에서 '3차원 데이터'는 치아, 치은, 및 치아 또는 치은에 부착되는 인공 구조물 중 적어도 하나를 포함하는 대상체의 입체적인 특성을 나타내는 3차원 모델을 의미할 수 있다.Also, in the present disclosure, 'data' may refer to information required to represent an object in 2D or 3D, eg, raw data obtained from at least one image sensor. Specifically, the raw data may be 2D images acquired to create a 3D model of the object. The raw data may be 2D images of different viewpoints acquired by a plurality of image sensors when an object is scanned using a 3D scanner (eg, an intraoral scanner). Also, in the present disclosure, '3D data' may refer to a 3D model representing three-dimensional characteristics of an object including at least one of teeth, gingiva, and an artificial structure attached to the teeth or gingiva.
이하에서는 도면을 참조하여 실시 예들을 상세히 설명한다.Hereinafter, embodiments will be described in detail with reference to the drawings.
도 1은 일 실시 예에 따른 3차원 모델 처리 시스템을 설명하기 위한 도면이다.1 is a diagram for explaining a 3D model processing system according to an exemplary embodiment.
도 1에 도시된 바와 같이, 본 개시의 일 실시 예에 따른 3차원 모델 처리 시스템(200)은, 3차원 스캔 장치(100) 및 3차원 모델 처리 장치(300)를 포함할 수 있다. As shown in FIG. 1 , a 3D
일 실시 예에 따른 3차원 모델 처리 시스템(200)은, 3차원 스캔 장치(100)를 이용하여 대상체에 패턴 광을 조사(project)하고 패턴 광이 조사된 대상체를 스캔함으로써, 패턴의 변형에 의한 삼각 계측의 원리를 이용하여 대상체의 형상을 나타내는 3차원 모델을 획득할 수 있다. 그러나, 3차원 스캔 장치(100)로 3차원 모델을 획득하는 방법은 이에 한정되지 않으며, 구현 방식에 따라 다양한 방법으로 3차원 모델을 획득할 수 있다.The 3D
일 실시 예에 따른 3차원 스캔 장치(100)는, 대상체로부터 획득된 로우 데이터를 3차원 모델 처리 장치(300)에게 전송할 수 있다. 3차원 모델 처리 장치(300)는, 전달받은 로우 데이터에 기초하여, 대상체의 표면의 형상을 3차원적으로 나타내는 3차원 모델을 생성할 수 있다. 3차원 모델은, 포인트 클라우드 데이터 또는 폴리곤 메쉬 데이터일 수 있다. 다른 일 실시 예에 따른 3차원 스캔 장치(100)는, 대상체로부터 획득된 로우 데이터를 재구성하여 3차원 프레임을 생성하고, 생성된 3차원 프레임을 3차원 모델 처리 장치(300)에 전송할 수 있다.The
일 실시 예에 따른 3차원 스캔 장치(100)는, 구강 내의 3차원 모델을 획득하기 위한 의료 장치를 포함할 수 있다. 구체적으로, 3차원 스캔 장치(100)는 구강 내에 삽입되어 비 접촉식으로 치아를 스캐닝함으로써, 적어도 하나의 치아를 포함하는 구강에 대한 3차원 모델을 생성하기 위한 장치가 될 수 있다. 또한, 3차원 스캔 장치(100)는 구강 내에 인입 및 인출이 가능한 형태를 가질 수 있으며, 적어도 하나의 영상 센서(예를 들어, 광학 카메라 등)를 이용하여 환자의 구강 내부를 스캔할 수 있다. 또한, 3차원 스캔 장치(100)는 테이블 스캐너일 수 있다.The
3차원 스캔 장치(100)는 대상체인 구강 내부의 치아, 치은 또는 구강 내에 삽입 가능한 인공 구조물(예를 들어, 브라켓 및 와이어를 포함하는 교정 장치, 임플란트, 인공 치아, 구강 내 삽입되는 교정 보조 도구 등) 중 적어도 하나의 표면을 이미징하기 위해서, 대상체에 대한 표면 정보를 로우 데이터로서 획득할 수 있다. 3차원 모델 처리 장치(300)는, 로우 데이터를 기초로 결합(merge) 등의 3차원 연산을 수행하여 3차원 모델을 획득하고, 3차원 모델을 렌더링한 영상을 화면 상에 디스플레이에 표시할 수 있다.The
일 실시 예에 따른 3차원 모델 처리 장치(300)는 3차원 스캔 장치(100)와 유선 또는 무선 통신 네트워크를 통하여 연결되며, 3차원 스캔 장치(100)가 대상체를 스캔하여 획득한 로우 데이터 또는 3차원 프레임을 3차원 스캔 장치(100)로부터 수신할 수 있다. The 3D
3차원 모델 처리 장치(300)는, 수신된 로우 데이터 또는 3차원 프레임에 기초하여, 대상체에 대한 3차원 모델 또는 영상을 생성, 처리, 디스플레이 및/또는 전송할 수 있는 모든 전자 장치가 될 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는 스마트 폰(smart phone), 랩탑 컴퓨터, 데스크탑 컴퓨터, PDA, 태블릿 PC 등의 컴퓨팅 장치가 될 수 있으며, 이에 한정되지 않는다. The 3D
3차원 모델 처리 장치(300)는 3차원 스캔 장치(100)에서 수신된 데이터에 기초하여, 대상체의 진단에 필요한 정보 및 대상체 영상 중 적어도 하나를 생성하고, 생성된 정보 및/또는 영상을 디스플레이(320)를 통하여 디스플레이 할 수 있다. The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는 대상체에 대한 3차원 모델 또는 영상을 분석하고, 분석 결과를 처리, 디스플레이 및/또는 전송할 수 있다. The 3D
또한, 일 실시 예에 따른 3차원 모델 처리 장치(300)는 3차원 스캔 장치(100)에 연동되는 전용 소프트웨어를 저장 및 실행할 수 있다. 전용 소프트웨어는 전용 프로그램 또는 전용 어플리케이션으로 호칭될 수 있다. 3차원 모델 처리 장치(300)가 3차원 스캔 장치(100)와 상호 연동되어 동작하는 경우, 3차원 모델 처리 장치(300)에 저장되는 전용 소프트웨어는 3차원 스캔 장치(100)와 연결되어 대상체 스캔을 통하여 획득되는 데이터들을 실시간으로 수신할 수 있다. 예를 들어, 자사의 구강 스캐너인 i500 제품에 대응되는 i500 에서 구강 스캔을 통하여 획득된 데이터를 처리하기 위한 전용 소프트웨어가 존재한다. 3차원 모델 처리 장치(300)는 i500 제품에 대응되는 전용 소프트웨어를 저장 및 실행할 수 있다. 전용 소프트웨어는 3차원 모델을 획득, 처리, 저장, 및/또는 전송하기 위한 적어도 하나의 동작들을 수행할 수 있다. Also, the 3D
전용 소프트웨어는 3차원 모델 처리 장치(300)의 프로세서 또는 메모리에 저장될 수 있다. 또한, 전용 소프트웨어는 3차원 스캔 장치(100)에서 획득된 데이터의 이용을 위한 사용자 인터페이스를 제공할 수 있다. 전용 소프트웨어에서 제공되는 사용자 인터페이스 화면은 개시된 실시 예에 따라서 생성되는 대상체에 대한 3차원 모델이 렌더링 된 영상을 포함할 수 있다. 예를 들어, 개시된 실시 예에서, 전용 소프트웨어에서 제공되는 사용자 인터페이스 화면은 이하의 도면들에서 도시 되는 사용자 인터페이스 화면들 중 어느 하나가 될 수 있다.Dedicated software may be stored in the processor or memory of the 3D
도 2는 일 실시 예에 따른 3차원 모델 처리 시스템의 블록도를 도시한다.2 shows a block diagram of a 3D model processing system according to an embodiment.
도 2에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 외부 디바이스, 또는 외부 서버와 유선 또는 무선 통신 네트워크를 통하여 연결될 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 스캔 장치(100), 데이터 획득 장치(101)(예를 들어, 컴퓨터 단층 촬영(Computed Tomography, CT) 장치, 또는 자기공명영상(Magnetic Resonance Imaging, MRI) 장치 등의 의료 진단 장치), 또는 서버(102) 중 적어도 하나로부터 대상체에 대한 데이터를 획득하고 처리할 수 있다. 또는, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 내부 메모리에 미리 저장되어 있던 데이터를 획득하고 처리할 수 있다.As shown in FIG. 2 , the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)에서 처리된 3차원 모델은, 3차원 프린팅을 통해 3차원 물체를 제작하기 위해 이용될 수 있다. 3차원 프린팅을 통해 제작된 3차원 물체를 용이하게 식별하기 위하여, 3차원 물체 상에 3차원 물체의 식별 정보를 나타내는 텍스트가 3차원 물체 상에 추가될 수 있다. The 3D model processed by the 3D
도 3a 및 도 3b는 일반적인 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법을 설명한다. 3A and 3B describe a method in which a general 3D model processing apparatus adds text to a 3D model.
도 3a에 도시된 바와 같이, 일반적인 3차원 모델 처리 장치는, 대상체를 나타내는 3차원 모델(301) 상에 문자열을 나타내는 3차원 텍스트 데이터(302)를 추가할 수 있다. 3차원 모델(301)의 표면이 평탄한 영역에 3차원 텍스트 데이터(302)가 추가되는 경우, 3차원 모델(301)에 대응되는 부분과 3차원 텍스트 데이터(302)에 대응되는 부분이 잘 결합(combine)된 3차원 물체가 3차원 프린팅을 통해 제작될 수 있다.As shown in FIG. 3A , a general 3D model processing apparatus may add
반면에, 도 3b에 도시된 바와 같이, 3차원 모델(303) 상에 굴곡이 심한 영역 또는 3차원 모델(303) 영역 외에 3차원 텍스트 데이터(304)가 추가되는 경우, 3차원 모델(303)에 대응되는 부분으로부터 3차원 텍스트 데이터(304)에 대응하는 부분의 적어도 일부가 분리되어 프린팅 될 수 있다.On the other hand, as shown in FIG. 3B, when the
따라서, 3차원 프린팅 과정에서 복수의 문자들을 포함하는 텍스트 전체가 3차원 물체 상에 잘 결합되어 있을 수 있도록 하기 위해서는, 3차원 물체 상에 텍스트 추가가 적합한 영역을 사용자가 용이하게 파악할 수 있도록 하는 것이 요구될 수 있다.Therefore, in order to ensure that the entire text including a plurality of characters can be well combined on the 3D object during the 3D printing process, it is necessary for the user to easily identify an area suitable for text addition on the 3D object. may be requested
본 개시의 다양한 실시 예들에 따르면, 3차원 모델 처리 장치(300)는 3차원 모델 상에 텍스트를 추가함에 있어서, 3차원 텍스트 데이터가 3차원 모델과 적절하게 결합될 수 있는 지 여부를 판단하고 판단 결과를 화면 상에 표시할 수 있다. According to various embodiments of the present disclosure, in adding text to the 3D model, the 3D
다양한 실시 예들에 따라 3차원 모델 처리 장치(300)가 3차원 모델 상에 텍스트를 추가하는 구체적인 방법과 관련하여서는, 이하에서 도 4 내지 도 10을 참조하여 보다 상세히 설명한다.A specific method of adding text to a 3D model by the 3D
도 4는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법의 흐름도를 도시한다.4 is a flowchart of a method of adding text to a 3D model by a 3D model processing apparatus according to an exemplary embodiment.
단계 S401에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. In step S401, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 내부 메모리 또는 외부 디바이스로부터 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 적어도 하나의 문자를 입력하는 사용자 입력을 수신하고, 사용자 입력에 기초하여 적어도 하나의 문자를 나타내는 3차원 텍스트 데이터를 획득할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 적어도 하나의 문자에 대응하는 사용자 입력을 수신하고, 적어도 하나의 문자에 대응하는 윤곽선(contour) 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 2차원 메쉬 데이터를 제1 면으로 포함하고, 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 3차원 텍스트 데이터로서 획득할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자로부터 복수의 문자들을 포함하는 제1 문자열에 대응하는 사용자 입력을 수신할 수 있다. 3차원 모델 처리 장치(300)는, 제1 문자열에 포함되는 각 문자에 대응하는 윤곽선 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 각 문자에 대응하는 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 제1 문자열에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터를 포함하는, 3차원 텍스트 데이터 세트를 획득할 수 있다.The 3D
단계 S402에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델을 화면 상에 표시할 수 있다.In step S402, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델을 렌더링 하여 화면 상에 표시할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델이 표시된 화면 상에, 사용자에 의해 입력된 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 추가로 표시할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 기준점 또는 기준면으로부터 3차원 모델의 표면까지의 거리 또는 사용자 입력 중 적어도 하나에 기초하여, 3차원 공간 내에서 3차원 텍스트 데이터가 배치될 위치를 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 결정된 X축 좌표값 및 Y축 좌표값에 기초하여, 3차원 모델에 근접하여 위치하도록 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The 3D
일 예로서, 3차원 모델 처리 장치(300)는, 화면 상의 소정 위치를 선택하는 사용자 입력을 수신하고, 화면 상의 소정 위치에 기초하여 기준점을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 기준점으로부터 3차원 모델의 표면까지의 거리에 기초하여, 3차원 텍스트 데이터의 위치를 결정할 수 있다. 3차원 모델 처리 장치(300)는, 화면 상의 소정 위치에 기초하여 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정하고, 3차원 모델을 고려하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다. As an example, the 3D
예를 들어, 3차원 텍스트 데이터의 X축 좌표값이란, 화면 상에 디스플레이되고 있는 3차원 공간 내에서, 화면의 가로축을 따라 결정되는 3차원 텍스트 데이터의 위치를 나타내는 값일 수 있다. 3차원 텍스트 데이터의 Y축 좌표값이란, 화면 상에 디스플레이되고 있는 3차원 공간 내에서, 화면의 세로축을 따라 결정되는 3차원 텍스트 데이터의 위치를 나타내는 값일 수 있다. 3차원 텍스트 데이터의 Z축 좌표값이란, 화면 상에 디스플레이되고 있는 3차원 공간 내에서, 화면을 기준으로 3차원 텍스트 데이터의 깊이를 나타내는 값일 수 있다.For example, the X-axis coordinate value of the 3D text data may be a value indicating a position of the 3D text data determined along the horizontal axis of the screen within the 3D space displayed on the screen. The Y-axis coordinate value of the 3D text data may be a value representing a position of the 3D text data determined along a vertical axis of the screen in a 3D space displayed on the screen. The Z-axis coordinate value of the 3D text data may be a value indicating the depth of the 3D text data with respect to the screen in the 3D space displayed on the screen.
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 기준점으로부터 3차원 모델로 가상의 선을 조사함으로써, 3차원 모델의 표면 상에서 기준점으로부터 가장 가까운 포인트를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 3차원 텍스트 데이터가 부착되도록, 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The 3D
다른 예로서, 3차원 모델 처리 장치(300)는, 화면 상의 제1 위치에 대응하는 위치에 3차원 텍스트 데이터를 배치하고, 화면 상의 제1 위치에 표시된 3차원 텍스트 데이터를 제2 위치로 드래그하는 사용자 입력을 수신할 수 있다. 3차원 모델 처리 장치(300)는, 사용자 입력에 기초하여 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정하고, 3차원 모델을 고려하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 화면 상의 제2 위치에 기초하여 기준점을 결정하고, 기준점으로부터 3차원 모델의 표면까지의 거리에 기초하여, 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.As another example, the 3D
다른 예로서, 3차원 모델 처리 장치(300)는, 화면 상에 디스플레이 되고 있는 3차원 공간 내의 3차원 모델에 복수의 가상의 선들을 조사할 수 있다. 3차원 모델 처리 장치(300)는, 복수의 가상의 선들을 3차원 모델에 조사함으로써, 3차원 모델의 표면 상에서 가장 가까운 포인트(즉, 3차원 모델의 표면 상에서 가장 돌출된 포인트)를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 기준 문자에 대응하는 3차원 텍스트 데이터의 포인트가 부착되도록, 3차원 텍스트 데이터 세트를 위치 정렬할 수 있다.As another example, the 3D
3차원 모델 처리 장치(300)는, 화면 상에 디스플레이 되고 있는 3차원 모델의 표면에서 가장 돌출된 영역을 검색하고, 검색된 영역에 대응하는 X축 좌표값 및 Y축 좌표값을 결정할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 검색된 영역까지의 연직 거리들에 기초하여, 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다. The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 양각(embossment)으로 입력되는 지 또는 음각(intaglio)으로 입력되는 지 여부에 기초하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The 3D
일 예로서, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 외부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As an example, when text is input in embossed form on a 3D model, the 3D
다른 예로서, 3차원 모델 내에 텍스트가 음각으로 입력되는 경우, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 내부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As another example, when text is input into the 3D model in negative, the 3D
또한, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 노멀 벡터와 3차원 모델의 노멀 벡터에 기초하여, 3차원 텍스트 데이터의 각도를 결정할 수 있다. Also, the 3D
단계 S403에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다.In step S403, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 소정 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차(intersection) 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다. 오프셋이 적용된 3차원 텍스트 데이터는, 오프셋만큼 깊이가 추가된 3차원 텍스트 데이터를 포함할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 오프셋이 적용된 3차원 텍스트 데이터를 획득하기 위하여, 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 소정 오프셋만큼 이동시킬 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점과 이동된 제2 정점을 연결하는 라인을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 라인과 3차원 모델의 표면이 교차하는 지 여부를 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단하고, 판단 결과에 기초하여 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 모든 라인들이 3차원 모델의 표면과 교차하는 경우, 3차원 텍스트 데이터와 3차원 모델이 결합 가능하다고 판단할 수 있다.The 3D
단계 S404에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 판단 결과를 화면 상에 표시할 수 있다.In step S404, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지 여부에 기초하여, 화면 상에 표시되는 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터가 3차원 모델에 결합 가능한 경우와 결합 가능하지 않은 경우를 상이하게 표시할 수 있다. 예를 들어, 일 실시 예 에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터가 3차원 모델에 결합 가능한 경우 제1 색(예를 들어, 파란색)으로 3차원 텍스트 데이터를 표시할 수 있다. 3차원 텍스트 데이터가 3차원 모델에 결합 가능하지 않은 경우 제2 색(예를 들어, 주황색)으로 3차원 텍스트 데이터를 표시할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 화면 상에 표시된 3차원 텍스트 데이터를 3차원 모델에 결합 불가능한 제1 위치로부터 3차원 모델에 결합 가능한 제2 위치로 드래그하는 사용자 입력에 따라, 3차원 텍스트 데이터의 색상을 제2 색으로부터 제1 색으로 변경할 수 있다.The 3D
또한, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트 중에서 일부 문자들에 대응하는 3차원 텍스트 데이터가, 3차원 모델과 결합 가능하지 않다고 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델과 결합 가능하지 않다고 판단되는 일부 3차원 텍스트 데이터를, 다른 3차원 텍스트 데이터와 상이하게 표시할 수 있다. 3차원 모델 처리 장치(300)는, 사용자가 입력하고자 하는 문자열에 대응하는 3차원 텍스트 데이터 세트 중에서 어떠한 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합되지 않는지를 표시할 수 있다. 따라서, 사용자는, 문자열에 포함된 문자들 중에서 문제가 되는 문자를 직관적으로 확인하고, 문자열을 수정하거나 3차원 텍스트 데이터의 위치를 변경할 수 있다. In addition, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 경우, 텍스트가 추가된 3차원 모델을 획득할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 3차원 모델로부터 소정 오프셋이 적용된 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득할 수 있다.The 3D
도 5a, 도 5b 및 도 5c는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 텍스트 데이터를 획득하는 과정의 예를 도시한다.5A, 5B, and 5C illustrate an example of a process of obtaining 3D text data by a 3D model processing apparatus according to an embodiment.
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 다양한 문자들 각각에 대응하는 윤곽선 데이터를 포함하는 윤곽선 데이터 세트를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 오픈 API(Application Programming Interface)로부터 윤곽선 데이터 세트를 획득할 수 있다. 소정 문자에 대응하는 윤곽선 데이터는 적어도 하나의 폐루프를 포함하고, 복수의 포인트들로 구성될 수 있다. The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 내부 메모리에 미리 저장되어 있던 윤곽선 데이터 세트로부터, 사용자 입력에 대응하는 적어도 하나의 문자를 나타내는 윤곽선 데이터를 획득할 수 있다.The 3D
도 5a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 문자 'a'를 입력하는 사용자 입력을 수신하면, 문자 'a'를 나타내는 윤곽선 데이터(510)를 획득할 수 있다. 윤곽선 데이터(510)는, 복수의 제1 정점들로 구성된 바깥쪽 폐루프와 안쪽 폐루프를 포함할 수 있다.As shown in FIG. 5A , the 3D
다음으로, 도 5b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 윤곽선 데이터 내에 포함되는 제1 정점들을 연결하여 2차원 메쉬 데이터(520)를 생성할 수 있다.Next, as shown in FIG. 5B , the 3D
다음으로, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 2차원 메쉬 데이터(520)에 기초하여 3차원 텍스트 데이터를 생성할 수 있다.Next, the 3D
도 5c에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, X축 좌표값 및 Y축 좌표값으로 구성된 2차원 메쉬 데이터에 소정 깊이 값을 적용하여, X축 좌표값, Y축 좌표값 및 Z축 좌표값으로 구성된 3차원 텍스트 데이터(530)를 생성할 수 있다. 3차원 모델 처리 장치(300)는, 윤곽선 데이터로부터 획득된 2차원 메쉬 데이터를 제1 면으로 포함하고, 제1 면으로부터 소정 깊이 값만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 3차원 텍스트 데이터(530)로서 생성할 수 있다. As shown in FIG. 5C, the 3D
본 개시의 실시예는 도 5b에 도시된 예에 제한되지 않는다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 윤곽선 데이터(510)의 바깥쪽 폐루프와 안쪽 폐루프 사이에 임의의 정점을 생성하고, 임의의 정점을 기준으로 2차원 메쉬 데이터(520)을 생성할 수 있다. 3차원 모델 처리 장치(300)는, 2차원 메쉬 데이터(520)에 소정 깊이 값을 적용하여 3차원 텍스트 데이터를 생성할 수 있다. 3차원 모델 처리 장치(300)는, 2차원 메쉬 데이터(520)의 노멀 벡터의 방향 또는 노멀 벡터의 반대 방향으로 임의의 정점으로부터 라인을 생성하고, 생성된 라인과 3차원 모델이 교차하는 지 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다.Embodiments of the present disclosure are not limited to the example shown in FIG. 5B. The 3D
윤곽선 데이터로부터 생성된 2차원 메쉬 데이터를 포함하는 제1 면(531)의 정점들을 제1 정점들(또는, 전면(front) 정점들)이라고 지칭하고, 제1 정점들로부터 소정 깊이 값이 적용된 제2 면(532)에 포함되는 정점들을 제2 정점들(또는, 후면(back) 정점들)이라고 지칭할 수 있다. The vertices of the
도 5a 내지 5c에는 문자 'a'에 대한 3차원 텍스트 데이터를 생성하는 경우를 예로 들어 설명하였으나, 본 개시는 도시된 예에 제한되지 않는다. 3차원 모델 처리 장치(300)는, 다양한 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. 또한, 3차원 모델 처리 장치(300)는, 사용자에 의해 복수의 문자들을 포함하는 문자열이 입력되는 경우, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트를 획득할 수 있다.In FIGS. 5A to 5C , the case of generating 3D text data for the character 'a' has been described as an example, but the present disclosure is not limited to the illustrated example. The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터가 획득되면, 3차원 모델을 포함하는 3차원 공간 내에서 3차원 텍스트 데이터가 배치될 위치를 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자 입력에 기초하여, 또는, 3차원 모델의 일부 영역 중에서 가장 돌출된 것으로 검색된 영역에 기초하여, 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 그리고, 3차원 모델 처리 장치(300)는, 3차원 모델의 위치를 기준으로 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.When the 3D text data is obtained, the 3D
이하, 3차원 텍스트 데이터의 Z축 좌표값을 결정하는 구체적인 방법을 설명한다.Hereinafter, a specific method for determining the Z-axis coordinate value of 3D text data will be described.
일 실시 예에 따른 3차원 모델 처리 장치(300)는 다음의 과정을 따라 3차원 모델 상에 3차원 텍스트 데이터를 위치 정렬할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 복수의 문자들을 포함하는 문자열을 입력하는 사용자 입력을 수신하고, 문자열에 대응하는 3차원 텍스트 데이터 세트를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 복수의 문자들 중에서 기준 문자, 또는 복수의 문자들의 중앙에 위치하는 것으로 판단되는 기준 점을 선택할 수 있다.The 3D
예를 들어, 3차원 모델 처리 장치(300)는, 문자열 “ABCDE”에 대응하는 3차원 텍스트 데이터 세트를 획득하고, 문자열 “ABCDE” 중에서 중앙에 위치한 문자 “C”를 기준 문자로서 선택할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 문자열 “ABCD”에 대응하는 3차원 텍스트 데이터 세트를 획득하고, 문자열 “ABCD” 중에서 중앙에 위치한 문자 “B” 또는 문자 “C”를 기준 문자로서 선택할 수 있다.For example, the 3D
또는, 3차원 모델 처리 장치(300)는, 문자열에 대응하는 3차원 텍스트 데이터 세트를 하나의 메쉬 데이터로서 결정하고, 결정된 메쉬 데이터의 중앙에 위치하는 것으로 판단되는 점을 기준점으로서 설정할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 문자열 “ABCD”에 대응하는 3차원 텍스트 데이터 세트를 획득하고, 문자열 “ABCD” 중에서 문자 “B” 및 문자 “C” 사이의 중앙에 위치한 점을 기준점으로 설정할 수 있다.Alternatively, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 화면 상의 소정 위치를 선택하는 사용자 입력(예를 들어, 화면 상의 소정 위치를 클릭하는 사용자의 입력 등)을 수신하고, 화면 상의 소정 위치에 대응하는 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 3차원 모델 처리 장치(300)는, X축 좌표값 및 Y축 좌표값에 의해 결정된 기준점을 기준으로 가상의 선을 3차원 모델에 조사함으로써, 3차원 모델의 표면 상에서 기준점으로부터 가장 가까운 포인트를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 기준 문자에 대응하는 3차원 텍스트 데이터의 포인트가 부착되도록, 또는, 3차원 모델 상에서 식별된 포인트에 3차원 텍스트 데이터 세트의 기준점이 부착되도록, 3차원 텍스트 데이터 세트를 3차원 모델에 인접하여 위치 정렬할 수 있다.The 3D
다른 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 화면 상에 디스플레이 되고 있는 3차원 공간 내의 3차원 모델에 Z축 방향으로 복수의 가상의 선들을 조사할 수 있다. 3차원 모델 처리 장치(300)는, 복수의 가상의 선들을 3차원 모델에 조사함으로써, 3차원 모델의 표면 상에서 화면으로부터 가장 가까운 포인트(즉, 3차원 모델의 표면 상에서 가장 돌출된 포인트)를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 기준 문자에 대응하는 3차원 텍스트 데이터의 포인트가 부착되도록, 또는, 3차원 모델 상에서 식별된 포인트에 3차원 텍스트 데이터 세트의 기준점이 부착되도록, 3차원 텍스트 데이터 세트를 3차원 모델에 인접하여 위치 정렬할 수 있다.The 3D
예를 들어, 사용자의 구강 내부를 나타내는 치아 모델은, 치아 및 치은을 나타내는 구강 영역과 구강 영역을 받치는 베이스 영역을 포함할 수 있다. 일반적으로 치아 모델의 경우, 구강 영역에 비해 베이스 영역이 돌출되게 되므로, 3차원 모델 처리 장치(300)는, 사용자가 텍스트를 입력하면, 상대적으로 돌출된 베이스 영역을 검색하고, 입력된 텍스트에 대응하는 3차원 텍스트 데이터 세트를 검색된 베이스 영역 상에 자동으로 위치 정렬 할 수 있다.For example, a tooth model representing the inside of the user's oral cavity may include an oral region representing teeth and gingiva and a base region supporting the oral cavity region. Generally, in the case of a tooth model, since the base area protrudes compared to the oral area, the 3D
한편, 일 실시예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델을 세그멘테이션 할 수 있다. 3차원 모델 처리 장치(300)는 템플릿을 사용하거나 인공지능 등을 사용하여, 적어도 하나의 치아에 대응하는 영역, 치은에 대응하는 영역, 및/또는 베이스 영역으로 3차원 모델을 분리할 수 있다. 3차원 모델에 있어서, 구강을 나타내는 영역(예를 들어, 치아 영역 및/또는 치은 영역)은 입력된 텍스트로 인해서 변형되면 안되는 중요한 영역이다. 따라서, 사용자에 의해 입력된 텍스트는, 구강을 나타내는 영역이 아닌 베이스 영역에 추가되는 것이 바람직할 수 있다. Meanwhile, the 3D
따라서, 일 실시예에 따른 3차원 모델 처리 장치(300)는, 세그멘테이션에 의해 식별된 각 치아를 기준으로 일정 거리 내에는 텍스트가 추가되지 않도록 하는 락킹(Locking) 기능을 설정할 수 있다. 락킹 기능이 활성화되면, 3차원 모델 처리 장치(300)는, 사용자에 의해 입력된 텍스트가 3차원 모델 상에서 설정된 영역 이외의 영역에 위치할 수 있도록 텍스트를 자동 위치 정렬할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 사용자에 의해 입력된 텍스트가 구강 영역 이외의 영역, 즉, 베이스 영역에 위치할 수 있도록 텍스트를 자동 위치 정렬할 수 있다.Accordingly, the 3D
한편, 3차원 텍스트 데이터와 3차원 모델이 잘 결합되기 위해서는, 3차원 텍스트 데이터의 제2 면의 정점들이 3차원 모델의 표면(즉, 3차원 모델의 표면에 위치한 메쉬 또는 정점)과 맞닿아야 한다. 그러나, 3차원 모델의 표면이 평평하지 않은 경우, 3차원 텍스트 데이터의 제2 면의 정점들의 일부가 3차원 모델과 접촉하더라도, 제2 정점들의 나머지 일부는 3차원 모델과 접촉하지 않을 수 있다. Meanwhile, in order for the 3D text data and the 3D model to be well combined, the vertices of the second side of the 3D text data must come into contact with the surface of the 3D model (ie, the mesh or vertex located on the surface of the 3D model). do. However, if the surface of the 3D model is not flat, even if some of the vertices of the second side of the 3D text data contact the 3D model, the remaining part of the second vertices may not contact the 3D model.
따라서, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델과의 결합을 위한 오프셋을 3차원 텍스트 데이터에 적용할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면의 정점들로부터 오프셋만큼 이동된 가상의 정점들을 설정함으로써, 3차원 텍스트 데이터에 오프셋을 적용할 수 있다. Accordingly, the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면의 노멀 벡터의 방향으로, 또는 제2 면의 노멀 벡터의 반대 방향으로 제2 면 정점들을 이동시킴으로써 가상의 제3 정점들을 설정할 수 있다. 3차원 모델 처리 장치(300)는, 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단하고 판단 결과를 화면 상에 표시할 수 있다. The 3D
도 6a는 일 실시 예에 따른 3차원 모델 처리 장치가 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부를 판단하는 방법을 설명한다.6A describes a method in which a 3D model processing apparatus determines whether offset-applied 3D text data and a 3D model intersect according to an exemplary embodiment.
도 6a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 3차원 텍스트 데이터(611, 631)가 3차원 모델(605)의 외부에 위치하도록 3차원 텍스트 데이터(611, 631)의 위치를 결정할 수 있다.As shown in FIG. 6A, in the 3D
도 6a에서, 3차원 텍스트 데이터(611)는, 적어도 하나의 문자에 대응하는 윤곽선 데이터로부터 생성된 2차원 메쉬 데이터를 제1 면(611a)으로서 포함하고, 제1 면으로부터 소정 깊이 값(601)만큼 이격된 제2 면(611b)을 포함할 수 있다.6A,
3차원 모델 처리 장치(300)는, 오프셋(602)이 적용된 3차원 텍스트 데이터를 획득하기 위하여, 3차원 텍스트 데이터(611)의 제2 면(611b)에 포함되는 제2 정점들을 소정 오프셋만큼 이동시킬 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(611a)의 제1 정점들과 이동된 제2 정점들을 연결하는 라인들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 라인들과 3차원 모델의 표면이 교차하는 지 여부를 판단할 수 있다. 3차원 모델 처리 장치(300)는, 제1 정점을 시작점으로 하고, 오프셋만큼 이동된 제2 정점을 끝점으로 하는 라인 상에 3차원 모델의 표면의 메쉬 또는 정점이 위치하면, 라인과 3차원 모델의 표면이 교차한다고 판단할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(611a)의 제1 정점들과 오프셋(602)만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단 할 수 있다. 3차원 모델 처리 장치(300)는, 판단 결과에 기초하여 3차원 텍스트 데이터(611)와 3차원 모델(605)이 결합 가능한 지를 판단할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 1개 이상의 라인들이 3차원 모델(605)의 표면과 교차하지 않으므로, 3차원 텍스트 데이터(611)가 3차원 모델(605)과 결합 가능하지 않다고 판단할 수 있다. In the 3D
반면에, 도 6a에서, 3차원 텍스트 데이터(631)는, 제1 면(631a) 및 제2 면(631b)을 포함할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(631a)의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(631a)의 제1 정점들과 오프셋(602)만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단 할 수 있다. On the other hand, in FIG. 6A , the
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 모든 라인들이 3차원 모델(605)의 표면과 교차하므로, 3차원 텍스트 데이터(631)가 3차원 모델(605)과 결합 가능하다고 판단할 수 있다.The 3D
도 6b는 일 실시 예에 따른 3차원 모델 처리 장치가 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부를 판단하는 방법을 설명한다.6B describes a method in which a 3D model processing apparatus determines whether offset-applied 3D text data and a 3D model intersect according to an exemplary embodiment.
도 6b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 음각으로 입력되는 경우, 3차원 텍스트 데이터(661, 681)가 3차원 모델(605)의 내부에 위치하도록 3차원 텍스트 데이터(661, 681)의 위치를 결정할 수 있다.As shown in FIG. 6B , in the 3D
도 6b에서, 3차원 텍스트 데이터(661)는, 적어도 하나의 문자에 대응하는 윤곽선 데이터로부터 생성된 2차원 메쉬 데이터를 제1 면(661a)으로서 포함하고, 제1 면으로부터 소정 깊이 값(601)만큼 이격된 제2 면(661b)을 포함할 수 있다.6B,
3차원 모델 처리 장치(300)는, 오프셋(602)이 적용된 3차원 텍스트 데이터를 획득하기 위하여, 3차원 텍스트 데이터(661)의 제2 면(661b)에 포함되는 제2 정점들을 소정 오프셋만큼 이동시킬 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(661a)의 제1 정점들과 이동된 제2 정점들을 연결하는 라인들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 라인들과 3차원 모델의 표면이 교차하는 지 여부를 판단할 수 있다. 3차원 모델 처리 장치(300)는, 제1 정점을 시작점으로 하고, 오프셋만큼 이동된 제2 정점을 끝점으로 하는 라인 상에 3차원 모델의 표면의 메쉬 또는 정점이 위치하면, 라인과 3차원 모델의 표면이 교차한다고 판단할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(661a)의 제1 정점들과 오프셋(602)만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단 할 수 있다. 3차원 모델 처리 장치(300)는, 판단 결과에 기초하여 3차원 텍스트 데이터(661)와 3차원 모델(605)이 결합 가능한 지를 판단할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 1개 이상의 라인들이 3차원 모델(605)의 표면과 교차하지 않으므로, 3차원 텍스트 데이터(661)가 3차원 모델(605)과 결합 가능하지 않다고 판단할 수 있다. In the 3D
반면에, 도 6b에서, 3차원 텍스트 데이터(681)는, 제1 면(681a) 및 제2 면(681b)을 포함할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(681a)의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(681a)의 제1 정점들과 오프셋(602)만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단 할 수 있다. On the other hand, in FIG. 6B , the 3D text data 681 may include a
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 모든 라인들이 3차원 모델(605)의 표면과 교차하므로, 3차원 텍스트 데이터(681)가 3차원 모델(605)과 결합 가능하다고 판단할 수 있다.The 3D
도 6a 및 도 6b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 각 문자에 대응하는 3차원 텍스트 데이터 별로 3차원 모델과의 결합 가능 여부를 판단할 수 있다. 따라서, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자가 입력하고자 하는 문자열에 대응하는 3차원 텍스트 데이터 세트 중에서 어떠한 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합되지 않는지를 표시할 수 있다. 따라서, 사용자는, 문자열에 포함된 문자들 중에서 문제가 되는 문자를 직관적으로 확인하고, 문자열을 수정할 수 있다. 또는 사용자는, 3차원 모델 상에서 문자열 입력이 적합한 영역을 빠르고 정확하게 찾을 수 있다.As shown in FIGS. 6A and 6B , the 3D
도 7a는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 상에 양각 방식으로 텍스트를 추가한 예를 도시한다. 7A illustrates an example in which a 3D model processing apparatus adds text on a 3D model in an embossed manner according to an embodiment.
도 7a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 3차원 텍스트 데이터 세트(711)가 3차원 모델(710)의 외부에 위치하도록 문자열에 대응하는 3차원 텍스트 데이터 세트(711)의 위치를 결정할 수 있다. As shown in FIG. 7A , in the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델(710) 상에 3차원 텍스트 데이터 세트(711)를 위치 정렬할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(711)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들(또는, 전면(front) 정점들)을 시작점들로서 포함하고, 소정 깊이 값 및 오프셋만큼 이동된 제2 정점들(또는, 후면(back) 정점들)을 끝점들로서 포함하는 3차원 메쉬 데이터를 3차원 모델 상에 결합할 수 있다. The 3D
3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델(710)의 표면과 교차하는 위치들을 기초로 3차원 텍스트 데이터의 후면(back) 정점들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(711)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들을 시작점들로서 포함하고, 3차원 모델(710)과의 교차 위치들을 기초로 새롭게 결정된 후면 정점들을 끝점들로서 포함하는 3차원 메쉬 데이터를 획득할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 획득된 3차원 메쉬 데이터를 3차원 모델에 결합함으로써, 3차원 모델 상에 텍스트를 추가할 수 있다.The 3D
도 7b는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 내에 음각 방식으로 텍스트를 추가한 예를 도시한다.7B illustrates an example in which a 3D model processing apparatus adds text to a 3D model in an intaglio manner according to an embodiment.
도 7b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 음각으로 입력되는 경우, 3차원 텍스트 데이터 세트(721)가 3차원 모델(720)의 내부에 위치하도록 문자열에 대응하는 3차원 텍스트 데이터 세트(721)의 위치를 결정할 수 있다. As shown in FIG. 7B , in the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델(720) 내에 3차원 텍스트 데이터 세트(721)를 위치 정렬할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(721)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들을 시작점들로서 포함하고, 소정 깊이 값 및 오프셋만큼 이동된 제2 정점들을 끝점들로서 포함하는 3차원 메쉬 데이터를 획득할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델(720)의 표면과 교차하는 위치들을 기초로 3차원 텍스트 데이터의 후면(back) 정점들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(721)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들을 시작점들로서 포함하고, 3차원 모델(720)과의 교차 위치들을 기초로 새롭게 결정된 후면 정점들을 끝점들로서 포함하는 3차원 메쉬 데이터를 획득할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 획득된 3차원 메쉬 데이터를 3차원 모델(720)로부터 삭제함으로써, 3차원 모델 상에 텍스트를 추가할 수 있다.The 3D
도 8a 및 도 8b는 일 실시 예에 따른 3차원 모델 처리 장치가 디스플레이 하는 화면의 예를 도시한다.8A and 8B illustrate examples of screens displayed by the 3D model processing apparatus according to an exemplary embodiment.
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델(810) 상에 3차원 텍스트 데이터 세트(811)를 위치 정렬할 수 있다. The 3D
도 8a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트(811)가 3차원 모델(810) 상에 잘 결합되어 있는 지 여부를 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 복수의 문자들 각각에 대응하는 3차원 텍스트 데이터가 3차원 모델(810) 상에 잘 결합되어 있는 지 여부를 판단할 수 있다. As shown in FIG. 8A, in the 3D
3차원 모델 처리 장치(300)는, 각 문자를 나타내는 3차원 텍스트 데이터에 오프셋을 적용하고, 오프셋이 적용된 3차원 텍스트 데이터가 3차원 모델(810)과 교차하는 지 여부에 기초하여, 3차원 텍스트 데이터가 3차원 모델(810) 상에 잘 결합되어 있는 지 여부를 판단할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지 여부에 기초하여, 화면 상에 표시되는 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.The 3D
예를 들어, 도 8a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 모든 3차원 텍스트 데이터가 3차원 모델(810)과 결합 가능하다고 판단하고 모든 3차원 텍스트 데이터의 색을 제1 색(예를 들어, 파란색)으로 결정할 수 있다.For example, as shown in FIG. 8A , in the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자 입력에 기초하여, 3차원 텍스트 데이터 세트(811)를 다른 위치로 이동할 수 있다.The 3D
도 8b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)를 위쪽 방향으로 이동할 수 있다.As shown in FIG. 8B , the 3D
3차원 텍스트 데이터 세트(811)의 위치가 이동함에 따라, 문자 “l”과 문자 “d”에 대응하는 3차원 텍스트 데이터(813, 815)의 상단 끝 부분이 3차원 모델(810)과 접촉하지 않게 될 수 있다. As the position of the 3D
따라서, 3차원 텍스트 데이터 세트(811)의 위치가 이동함에 따라, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 일부 3차원 텍스트 데이터(813, 815)가 3차원 모델(820)과 결합 가능하지 않다고 판단할 수 있다. Accordingly, as the location of the 3D
3차원 모델 처리 장치(300)는, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트(811) 중에서 일부 문자들에 대응하는 3차원 텍스트 데이터(813, 815)가, 오프셋을 적용하더라도 3차원 모델(820)과 교차하지 않는다고 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터(813, 815)가 3차원 모델(810)과 결합 가능하지 않는 다는 판단에 기초하여, 3차원 텍스트 데이터(813, 815)의 색상을 상이하게 표시할 수 있다. The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 일부 3차원 텍스트 데이터(813, 815)의 색을 제2 색(예를 들어, 주황색)으로 결정할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 3차원 모델 상에 잘 결합되는 것으로 판단되는 3차원 텍스트 데이터는 파란색으로 표시하고, 3차원 모델 상에 잘 결합되지 않는다고 판단되는 3차원 텍스트 데이터는 주황색으로 표시할 수 있다.The 3D
도 8b에는 결합 가능하지 않다고 판단되는 3차원 텍스트 데이터의 색만을 변경하는 경우를 예로 들어 도시하였으나, 본 개시의 다양한 실시 예들은 도 8a 및 도 8b에 도시된 예에 제한되지 않는다. 구현에 따라서 다양한 방식을 통해, 3차원 텍스트 데이터가 3차원 모델에 결합 가능한 지 여부에 대한 정보가 제공될 수 있다. In FIG. 8B, a case of changing only the color of 3D text data determined to be uncombinable is shown as an example, but various embodiments of the present disclosure are not limited to the examples shown in FIGS. 8A and 8B. Information on whether 3D text data can be combined with a 3D model may be provided through various methods depending on implementation.
예를 들어, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트에 포함되는 적어도 일부 3차원 텍스트 데이터가 3차원 모델과 결합이 가능하지 않다고 판단되는 경우, 3차원 텍스트 데이터 세트에 포함되는 모든 3차원 텍스트 데이터의 색을 변경할 수 있다. 그리고, 3차원 모델 처리 장치(300)는, 결합이 가능하지 않다고 판단되는 적어도 일부 3차원 텍스트 데이터를 나머지 3차원 텍스트 데이터와 상이하게 표시할 수 있다. 예를 들어, 3 차원 모델 처리 장치(300)는, 결합이 가능하지 않다고 판단되는 적어도 일부 3차원 텍스트 데이터를 굵게(bold) 표시할 수 있다.For example, when the 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 상술한 과정을 통해, 텍스트가 추가된 3차원 모델을 획득할 수 있다. The 3D
도 9는 일 실시 예에 따른 3차원 모델 처리 장치가 출력하는 텍스트가 추가된 3차원 모델의 예를 도시한다.9 illustrates an example of a 3D model to which text output by a 3D model processing apparatus according to an embodiment is added.
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 경우, 텍스트가 추가된 3차원 모델을 획득할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합함으로써, 도 9에 도시된 바와 같이 텍스트가 추가된 3차원 모델을 획득할 수 있다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트를 추가함에 있어서, 추가되는 문자 별로 해당 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합 가능한 지 여부를 판단하여 표시할 수 있다. When text is added to the 3D model, the 3D
더 나아가, 일 실시 예에 따른 3차원 모델 처리 장치(300)는 사용자가 입력한 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합 가능하지 않은 경우, 결합 가능하지 않다는 정보를 표시할 뿐만 아니라, 사용자가 입력한 문자가 3차원 모델에 추가되지 않도록 할 수 있다. 따라서, 사용자는, 3차원 모델과 결합 가능한 위치에 3차원 텍스트 데이터를 추가하기 위해서, 문자를 다시 입력하거나 3차원 텍스트 데이터의 위치를 변경할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델과 결합이 불가능한 텍스트의 경우 추가되지 않도록 하여, 3차원 모델(320)에 대응되는 부분으로부터 3차원 텍스트 데이터(321)에 대응하는 부분의 적어도 일부가 분리되어 3차원 프린팅 되는 문제를 방지할 수 있다.Furthermore, the 3D
도 10은 일 실시 예에 따른 3차원 모델 처리 장치의 블록도를 도시한다.10 is a block diagram of a 3D model processing apparatus according to an exemplary embodiment.
도 10에 도시된 3차원 모델 처리 장치(300)는, 본 개시의 다양한 실시 예들에 따른 3차원 모델 처리 방법을 수행할 수 있으며, 도 1 내지 도 9에 대한 설명이 적용될 수 있다. 따라서, 상술한 바와 중복되는 내용은 생략한다.The 3D
일 실시 예에 따른 3차원 모델 처리 장치(300)는 3차원 스캔 장치 등의 외부 장치 또는 외부 서버와 유선 또는 무선 통신 네트워크를 통하여 연결되며, 대상체에 대한 3차원 모델을 획득할 수 있다.The 3D
3차원 모델 처리 장치(300)는, 획득된 3차원 모델에 기초하여, 대상체에 대한 3차원 영상을 생성, 처리, 디스플레이 및/또는 전송할 수 있는 모든 전자 장치가 될 수 있다. 본 개시의 다양한 실시 예들에 따른 3차원 모델 처리 장치(300)는 고정형 단말이거나 이동형 단말일 수 있다. 3차원 모델 처리 장치(300)는, 예를 들어, 스마트 폰(smart phone), 랩탑 컴퓨터, 데스크탑 컴퓨터, PDA, 태블릿 PC 등의 컴퓨팅 장치가 될 수 있으며, 이에 한정되지 않는다.The 3D
도 10을 참조하면, 3차원 모델 처리 장치(300)는 프로세서(310), 디스플레이(320), 통신 인터페이스(330), 사용자 입력부(340), 및 메모리(350)를 포함할 수 있다.Referring to FIG. 10 , a 3D
일 실시 예에 따른 프로세서(310)는 적어도 하나의 인스트럭션을 수행하여, 의도하는 동작을 수행하도록 3차원 모델 처리 장치(300)를 제어한다. 적어도 하나의 인스트럭션은 프로세서(310) 내에 포함되는 내부 메모리(미도시) 또는 별도의 메모리(350) 내에 저장되어 있을 수 있다.The
일 실시 예에 따른 프로세서(310)는 적어도 하나의 인스트럭션을 수행하여, 의도하는 동작을 수행하도록 3차원 모델 처리 장치(300) 내부에 포함되는 적어도 하나의 구성들을 제어할 수 있다. 따라서, 프로세서(310)가 소정 동작을 수행하는 경우를 예로 들어 설명하더라도, 3차원 모델 처리 장치(300)에 포함하는 적어도 하나의 구성들이 소정 동작을 수행하도록 프로세서(310)가 적어도 하나의 구성들을 제어하는 것을 의미할 수 있다. The
일 실시 예에 따른 프로세서(310)는 3차원 모델 처리 장치(300)의 외부에서부터 입력되는 신호 또는 데이터를 저장하거나, 3차원 모델 처리 장치(300)에서 수행되는 다양한 작업에 대응되는 저장 영역으로 사용되는 RAM(미도시), 3차원 모델 처리 장치(300)의 제어를 위한 제어 프로그램 및/또는 복수개의 인스트럭션이 저장된 ROM(미도시) 및 적어도 하나의 인스트럭션을 실행하는 적어도 하나의 내부의 프로세서(미도시)를 포함할 수 있다. The
또한, 프로세서(310)는 비디오에 대응되는 그래픽 처리를 위한 그래픽 프로세서(Graphic Processing Unit, 미도시)를 포함할 수 있다. 또한, 프로세서(310)는 코어(core, 미도시)와 GPU(미도시)를 통합한 SoC(System On Chip)로 구현될 수 있다.In addition, the
개시된 실시 예에서, 프로세서(310)는 구강에 대한 3차원 모델을 렌더링함으로써 영상을 생성할 수 있다. 예를 들어, 3차원 모델은, 복수의 치아들, 치은, 및 인공 구조물 중 적어도 하나를 포함하는 구강의 표면 형상 정보를 포함할 수 있다.In the disclosed embodiment, the
디스플레이(320)는 프로세서(310)에 제어에 따라서 소정 화면을 디스플레이 할 수 있다. 구체적으로, 디스플레이(320)는 3차원 모델을 포함하는 사용자 인터페이스 화면을 디스플레이 할 수 있다. 또는, 디스플레이(320)는 대상체에 대한 진단 및 치료와 관련되는 정보를 포함하는 사용자 인터페이스 화면을 디스플레이 할 수 있다. The
통신 인터페이스(330)는 적어도 하나의 외부 전자 장치(미도시)또는 서버(미도시)와 유선 또는 무선 통신 네트워크를 통하여 통신을 수행할 수 있다. The
사용자 입력부(340)는 3차원 모델 처리 장치(300)를 제어하기 위한 사용자 입력을 수신할 수 있다. 사용자 입력부(340)는 사용자의 터치를 감지하는 터치 패널, 사용자의 푸시 조작을 수신하는 버튼, 사용자 인터페이스 화면 상의 일 지점을 지칭 또는 선택하기 위한 마우스(mouse) 또는 키보드(key board) 등을 포함하는 사용자 입력 디바이스를 포함할 수 있으나 이에 제한되지 않는다.The
또한, 사용자 입력부(340)는 음성 인식을 위한 음성 인식 장치(미도시)를 포함할 수 있다. 예를 들어, 음성 인식 장치(미도시)는 마이크가 될 수 있으며, 음성 인식 장치는 사용자의 음성 명령 또는 음성 요청을 수신할 수 있다. 그에 따라서, 프로세서(310)는 음성 명령 또는 음성 요청에 대응되는 동작이 수행되도록 제어할 수 있다.Also, the
메모리(350)는 프로세서(310)가 실행하는 적어도 하나의 인스트럭션을 저장할 수 있다. 또한, 메모리(350)는 프로세서(310)가 실행하는 적어도 하나의 프로그램을 저장하고 있을 수 있다. 메모리(350)는 외부 장치 또는 외부 서버로부터 수신되는 데이터(예를 들어, 대상체 스캔을 통하여 획득된 로우 데이터, 2차원 영상 데이터, 3차원 모델 등)를 저장할 수 있다. 메모리(350)는 대상체를 3차원적으로 나타내는 대상체 영상을 저장할 수 있다. The
본 개시의 일 실시 예에 따른 프로세서(310)는, 메모리(350)에 저장된 프로그램을 실행함으로써 3차원 모델 처리 장치(300)의 전체적인 동작을 제어할 수 있다.The
프로세서(310)가 3차원 모델 상에 텍스트를 추가하는 구체적인 방법에 대해서는 도 4에 대한 설명이 적용될 수 있고 중복되는 설명은 생략한다.The description of FIG. 4 may be applied to a specific method of adding text on the 3D model by the
일 실시 예에 따른 프로세서(310)는, 내부 메모리 또는 외부 디바이스로부터 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. 프로세서(310)는, 적어도 하나의 문자를 입력하는 사용자 입력을 수신하고, 사용자 입력에 기초하여 적어도 하나의 문자를 나타내는 3차원 텍스트 데이터를 획득할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 적어도 하나의 문자에 대응하는 사용자 입력을 수신하고, 적어도 하나의 문자에 대응하는 윤곽선(contour) 데이터를 획득할 수 있다. 프로세서(310)는, 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 프로세서(310)는, 2차원 메쉬 데이터를 제1 면으로 포함하고, 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 3차원 텍스트 데이터로서 획득할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 사용자 입력부(340)을 통해, 복수의 문자들을 포함하는 제1 문자열에 대응하는 사용자 입력을 수신할 수 있다. 프로세서(310)는, 제1 문자열에 포함되는 각 문자에 대응하는 윤곽선 데이터를 획득할 수 있다. 프로세서(310)는, 각 문자에 대응하는 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 프로세서(310)는, 제1 문자열에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터를 포함하는, 3차원 텍스트 데이터 세트를 획득할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델을 화면 상에 표시하도록 디스플레이(320)를 제어할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 3차원 모델을 렌더링 하여 디스플레이(320)의 화면 상에 표시할 수 있다. 프로세서(310)는, 3차원 모델이 표시된 화면 상에, 사용자에 의해 입력된 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 추가로 표시하도록 디스플레이(320)를 제어할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 사용자 입력 또는 3차원 텍스트 데이터로부터 3차원 모델의 표면까지의 거리 중 적어도 하나에 기초하여, 3차원 공간 내에서 3차원 텍스트 데이터가 배치될 위치를 결정할 수 있다. 일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 결정된 X축 좌표값 및 Y축 좌표값에 기초하여, 3차원 모델에 근접하여 위치하도록 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 3차원 모델 상에 텍스트가 양각으로 입력되는 지 또는 음각으로 입력되는 지 여부에 기초하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The
일 예로서, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 외부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 프로세서(310)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As an example, when text is embossed on the 3D model, the
다른 예로서, 3차원 모델 내에 텍스트가 음각으로 입력되는 경우, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 내부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 프로세서(310)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As another example, when text is input in the 3D model in negative, the
또한, 프로세서(310)는, 3차원 텍스트 데이터의 노멀(normal) 벡터와 3차원 모델의 노멀 벡터에 기초하여, 3차원 텍스트 데이터의 각도를 결정할 수 있다. Also, the
일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 소정 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다. 오프셋이 적용된 3차원 텍스트 데이터는, 오프셋만큼 깊이가 추가된 3차원 텍스트 데이터를 포함할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 오프셋이 적용된 3차원 텍스트 데이터를 획득하기 위하여, 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 소정 오프셋만큼 이동시킬 수 있다. 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점과 이동된 제2 정점을 연결하는 라인을 결정할 수 있다. 프로세서(310)는, 라인과 3차원 모델의 표면이 교차하는 지 여부를 판단할 수 있다. 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단하고, 판단 결과에 기초하여 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다. 예를 들어, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 모든 라인들이 3차원 모델의 표면과 교차하는 경우, 3차원 텍스트 데이터와 3차원 모델이 결합 가능하다고 판단할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 판단 결과를 화면 상에 표시하도록 디스플레이(320)를 제어할 수 있다.The
일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지 여부에 기초하여, 화면 상에 표시되는 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.The
일 실시예에 따른 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수에 기초하여, 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.
예를 들어, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 모두 교차하는 경우, 3차원 텍스트 데이터의 색상을 녹색으로 결정할 수 있다. 프로세서(310)는, 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 모두 교차하지는 않지만 기준 값 이상 교차하는 경우, 3차원 텍스트 데이터의 색상을 연한 녹색으로 결정할 수 있다. 프로세서(310)는, 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 적어도 하나는 교차하지만 기준 값 미만으로 교차하는 경우, 3차원 텍스트 데이터의 색상을 주황색으로 결정할 수 있다. 프로세서(310)는, 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 하나도 교차하지 않는 경우, 3차원 텍스트 데이터의 색상을 빨간색으로 결정할 수 있다.For example, the
일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 경우, 텍스트가 추가된 3차원 모델을 획득할 수 있다. 3 프로세서(310)는, 3차원 모델 상에 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 3차원 모델로부터 소정 오프셋이 적용된 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득할 수 있다.The
상술한 본 개시의 다양한 실시 예들에 따른 3차원 모델 처리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 또한, 본 개시의 실시 예에 따르면, 3차원 모델 획득 방법을 실행하는 적어도 하나의 인스트럭션을 포함하는 하나 이상의 프로그램이 기록된 컴퓨터로 읽을 수 있는 저장 매체가 제공될 수 있다. The above-described 3D model processing method according to various embodiments of the present disclosure may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer readable medium. Also, according to an embodiment of the present disclosure, a computer-readable storage medium having one or more programs including at least one instruction for executing a 3D model obtaining method may be provided.
상기 컴퓨터 판독 가능 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 여기서, 컴퓨터 판독 가능 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치가 포함될 수 있다. The computer readable storage medium may include program instructions, data files, data structures, etc. alone or in combination. Here, examples of computer-readable storage media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, floptical disks and Hardware devices configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like, may be included.
여기서, 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는저장 매체가 실재(tangible)하는 장치임을 의미할 수 있다. 또한, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.Here, the device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory storage medium' may mean that the storage medium is a tangible device. Also, the 'non-temporary storage medium' may include a buffer in which data is temporarily stored.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 구강 영상의 디스플레이 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포될 수 있다. 또는, 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. According to an embodiment, a method for displaying an oral cavity image according to various embodiments disclosed in this document may be included in a computer program product and provided. A computer program product may be distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)). Alternatively, it may be distributed (eg, downloaded or uploaded) online, through an application store or directly between two user devices (eg, smartphones).
이상에서 실시 예들에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.Although the embodiments have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concept of the present invention defined in the following claims are also within the scope of the present invention. belong
300: 데이터 처리 장치
310: 프로세서
320: 디스플레이
330: 통신 인터페이스
340: 사용자 입력부
350: 메모리300: data processing unit
310: processor
320: display
330: communication interface
340: user input unit
350: memory
Claims (20)
적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는 단계;
상기 3차원 텍스트 데이터와 상기 3차원 모델을 화면 상에 표시하는 단계;
소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계; 및
상기 판단 결과를 화면 상에 표시하는 단계를 포함하는, 방법.A method of adding text on a 3D model representing an object,
obtaining 3D text data corresponding to at least one character;
displaying the 3D text data and the 3D model on a screen;
determining whether the 3D text data and the 3D model can be combined based on whether the 3D text data to which a predetermined offset is applied intersect with the 3D model; and
And displaying the determination result on a screen.
상기 3차원 텍스트 데이터를 획득하는 단계는,
상기 적어도 하나의 문자에 관한 사용자 입력을 수신하는 단계;
상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하는 단계;
상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하는 단계; 및
상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 방법.According to claim 1,
Obtaining the 3D text data,
receiving a user input related to the at least one character;
acquiring contour data corresponding to the at least one character;
obtaining 2D mesh data by connecting a plurality of first vertices included in the contour data; and
Acquiring, as the 3D text data, 3D mesh data including the 2D mesh data as a first surface and a second surface spaced apart from the first surface by a predetermined depth.
사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계
를 더 포함하는, 방법.According to claim 1,
determining a position of the 3D text data based on a user input;
Further comprising a method.
상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하는 단계;
상기 화면 상의 소정 위치에 기초하여 기준점을 결정하는 단계; 및
상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 더 포함하는, 방법.According to claim 1,
receiving a user input dragging the 3D text data displayed on the screen to a predetermined location;
determining a reference point based on a predetermined position on the screen; and
determining a position of the 3-dimensional text data based on a distance from the reference point to a surface of the 3-dimensional model.
상기 3차원 텍스트 데이터의 위치를 결정하는 단계는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 외부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법.According to claim 4,
Determining the position of the 3D text data,
Determining the location of the 3D text data, wherein the first side and the second side of the 3D text data are located outside the 3D model and the distance from the reference point to the surface of the 3D model is the minimum. Including, method.
상기 3차원 텍스트 데이터의 위치를 결정하는 단계는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법.According to claim 4,
Determining the position of the 3D text data,
Determining the location of the 3D text data, wherein the first and second sides of the 3D text data are located inside the 3D model, and the distance from the reference point to the surface of the 3D model is the minimum. Including, method.
상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는,
상기 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 상기 소정 오프셋만큼 이동시키는 단계;
상기 3차원 텍스트 데이터의 제1 면의 제1 정점과 상기 이동된 제2 정점을 연결하는 라인을 결정하는 단계; 및
상기 라인과 상기 3차원 모델의 표면이 교차하는 지 여부를 판단하는 단계를 포함하는, 방법.According to claim 1,
The step of determining whether the 3D text data and the 3D model can be combined,
moving a second vertex included in a second side of the 3D text data by the predetermined offset;
determining a line connecting a first vertex of the first side of the 3D text data and the moved second vertex; and
And determining whether the line and the surface of the three-dimensional model intersect.
상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는,
상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는 단계를 더 포함하는, 방법.According to claim 7,
The step of determining whether the 3D text data and the 3D model can be combined,
Among the lines connecting the first vertices of the first side of the 3D text data and the second vertices moved by the predetermined offset, when the number of lines crossing the surface of the 3D model is greater than or equal to the reference number, Further comprising determining that the 3D text data and the 3D model can be combined.
상기 판단 결과를 화면 상에 표시하는 단계는,
상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지 여부에 기초하여, 상기 화면 상에 표시되는 상기 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정하는 단계를 포함하는, 방법.According to claim 1,
The step of displaying the determination result on the screen,
and determining at least one of a color, shape, or brightness of the 3D text data displayed on the screen based on whether the 3D text data and the 3D model can be combined.
상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는 단계를 더 포함하는, 방법.According to claim 1,
The 3D model to which text is added by combining the 3D text data to which the predetermined offset is applied on the 3D model or by deleting data corresponding to the 3D text data to which the predetermined offset is applied from the 3D model. Further comprising the step of obtaining a, method.
적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는, 적어도 하나의 프로세서; 및
상기 3차원 텍스트 데이터와 상기 3차원 모델을 표시하는 디스플레이를 포함하고,
상기 적어도 하나의 프로세서는,
소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하고,
상기 판단 결과를 화면 상에 표시하도록 상기 디스플레이를 제어하는, 3차원 모델 처리 장치.An apparatus for processing a 3D model representing an object,
at least one processor for obtaining 3D text data corresponding to at least one character; and
A display for displaying the 3D text data and the 3D model;
The at least one processor,
determining whether the 3D text data and the 3D model can be combined based on whether the 3D text data to which a predetermined offset is applied intersect with the 3D model;
3D model processing apparatus for controlling the display to display the determination result on the screen.
상기 적어도 하나의 프로세서는,
상기 적어도 하나의 문자에 관한 사용자 입력을 수신하고,
상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하고,
상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하고,
상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 3차원 모델 처리 장치.According to claim 11,
The at least one processor,
Receiving a user input related to the at least one character;
Obtaining contour data corresponding to the at least one character;
Obtaining two-dimensional mesh data by connecting a plurality of first vertices included in the contour data,
Acquiring, as the 3D text data, 3D mesh data including the 2D mesh data as a first surface and a second surface spaced apart from the first surface by a predetermined depth, as the 3D text data.
상기 적어도 하나의 프로세서는,
사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.According to claim 11,
The at least one processor,
A 3D model processing apparatus for determining a position of the 3D text data based on a user input.
상기 적어도 하나의 프로세서는,
상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하고,
상기 화면 상의 소정 위치에 기초하여 기준점을 결정하고,
상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.According to claim 11,
The at least one processor,
Receiving a user input dragging the three-dimensional text data displayed on the screen to a predetermined position;
determining a reference point based on a predetermined position on the screen;
The 3D model processing apparatus for determining the position of the 3D text data based on the distance from the reference point to the surface of the 3D model.
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 외부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.According to claim 14,
The at least one processor,
Determining the location of the 3D text data, wherein the first and second sides of the 3D text data are located outside the 3D model, and the distance from the reference point to the surface of the 3D model is minimum, 3D model processing device.
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.According to claim 14,
The at least one processor,
Determining the location of the 3D text data, wherein the first and second sides of the 3D text data are located inside the 3D model, and the distance from the reference point to the surface of the 3D model is the minimum. 3D model processing device.
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 상기 소정 오프셋만큼 이동시키고,
상기 3차원 텍스트 데이터의 제1 면의 제1 정점과 상기 이동된 제2 정점을 연결하는 라인을 결정하고,
상기 라인과 상기 3차원 모델의 표면이 교차하는 지 여부를 판단하는, 3차원 모델 처리 장치.According to claim 11,
The at least one processor,
moving a second vertex included in a second side of the 3D text data by the predetermined offset;
determining a line connecting a first vertex of the first side of the 3D text data and the moved second vertex;
3D model processing apparatus for determining whether the line and the surface of the 3D model intersect.
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는, 3차원 모델 처리 장치.According to claim 17,
The at least one processor,
Among the lines connecting the first vertices of the first side of the 3D text data and the second vertices moved by the predetermined offset, when the number of lines crossing the surface of the 3D model is greater than or equal to the reference number, A 3D model processing device that determines that the 3D text data and the 3D model can be combined.
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지 여부에 기초하여, 상기 화면 상에 표시되는 상기 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정하는, 3차원 모델 처리 장치.According to claim 11,
The at least one processor,
The 3D model processing apparatus for determining at least one of a color, shape, or brightness of the 3D text data displayed on the screen based on whether the 3D text data and the 3D model can be combined.
상기 적어도 하나의 프로세서는,
상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
The 3D model to which text is added by combining the 3D text data to which the predetermined offset is applied on the 3D model or by deleting data corresponding to the 3D text data to which the predetermined offset is applied from the 3D model. Obtaining, a three-dimensional model processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2022/009753 WO2023282619A1 (en) | 2021-07-06 | 2022-07-06 | Method for adding text on 3-dimensional model and 3-dimensional model processing apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210088573 | 2021-07-06 | ||
KR20210088573 | 2021-07-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230007909A true KR20230007909A (en) | 2023-01-13 |
Family
ID=84900071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210135928A KR20230007909A (en) | 2021-07-06 | 2021-10-13 | Method for adding text on three dimensional model and apparatus for processing three dimensional model |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230007909A (en) |
-
2021
- 2021-10-13 KR KR1020210135928A patent/KR20230007909A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102351684B1 (en) | Method for processing a intraoral image, intraoral diagnosis apparatus performing the same method, and computer readable medium storing a program for performing the same method | |
US20230390032A1 (en) | Method for determining object area from three-dimensional model, and three-dimensional model processing device | |
KR102534778B1 (en) | Method and apparatus for obtaining three dimensional data and computer readable medium storing a program for performing the same method | |
KR102460621B1 (en) | An intraoral image processing apparatus, and an intraoral image processing method | |
KR102582709B1 (en) | A method for processing a three-dimensional intraoral model, and an apparatus for performing the same method | |
KR20230007909A (en) | Method for adding text on three dimensional model and apparatus for processing three dimensional model | |
KR20220059908A (en) | A data processing apparatus, a data processing method | |
KR102493440B1 (en) | Method for determining region of object from three dimensional model and apparatus for processing three dimensional model | |
KR20220056770A (en) | An three-dimensional intraoral model processing apparatus and three-dimensional intraoral model processing method | |
KR102441485B1 (en) | METHOD AND APPARATUS FOR OBTAINING THREE Dimensional Data AND COMPUTER READABLE MEDIUM STORING A PROGRAM FOR PERFORMING THE SAME METHOD | |
KR102544203B1 (en) | An intraoral image processing apparatus, an intraoral image processing method | |
KR102631922B1 (en) | A method for processing a 3D intraoral model, and an apparatus for performing the same method | |
KR102509772B1 (en) | Electronic device and method for processing scanned image of three dimensional scanner | |
KR102605094B1 (en) | A data processing apparatus, a data processing method | |
KR102591976B1 (en) | Method for providing margin line information for oral cavity and electronic apparatus performing the same method | |
KR102645173B1 (en) | An intraoral image processing apparatus, and an intraoral image processing method | |
KR102552669B1 (en) | An intraoral image processing apparatus, and an intraoral image processing method | |
KR20230055381A (en) | A data processing apparatus, a data processing method | |
EP4321128A1 (en) | Data processing device, scanner, and method for operating same | |
US20230111425A1 (en) | Method for processing intraoral image, and data processing apparatus | |
EP4194804A1 (en) | Method and device for acquiring three-dimensional data, and computer-readable storage medium storing program for performing method | |
KR20230014628A (en) | An image processing apparatus, and an image processing method | |
KR20230029554A (en) | An image processing apparatus, and an image processing method | |
KR20230038117A (en) | A method for processing a intraoral image, and a data processing apparatus | |
KR20230051057A (en) | A method for processing a intraoral image, and a data processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] |