KR102680644B1 - 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 PDF

Info

Publication number
KR102680644B1
KR102680644B1 KR1020210135928A KR20210135928A KR102680644B1 KR 102680644 B1 KR102680644 B1 KR 102680644B1 KR 1020210135928 A KR1020210135928 A KR 1020210135928A KR 20210135928 A KR20210135928 A KR 20210135928A KR 102680644 B1 KR102680644 B1 KR 102680644B1
Authority
KR
South Korea
Prior art keywords
model
text data
dimensional
processing device
data
Prior art date
Application number
KR1020210135928A
Other languages
Korean (ko)
Other versions
KR20230007909A (en
Inventor
이호택
고승희
Original Assignee
주식회사 메디트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 메디트 filed Critical 주식회사 메디트
Priority to PCT/KR2022/009753 priority Critical patent/WO2023282619A1/en
Publication of KR20230007909A publication Critical patent/KR20230007909A/en
Application granted granted Critical
Publication of KR102680644B1 publication Critical patent/KR102680644B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing 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

본 개시의 일 측면은 대상체를 나타내는 3차원 모델 상에 텍스트를 추가하는 방법에 있어서, 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는 단계; 상기 3차원 텍스트 데이터와 상기 3차원 모델을 화면 상에 표시하는 단계; 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계; 및 상기 판단 결과를 화면 상에 표시하는 단계를 포함하는, 방법을 제공할 수 있다.One aspect of the present disclosure provides a method for adding text to a three-dimensional model representing an object, comprising: acquiring three-dimensional 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 and the 3D model intersect; and displaying the determination result on a screen.

Description

3차원 모델 상에 텍스트를 추가하는 방법 및 3차원 모델 처리 장치{METHOD FOR ADDING TEXT ON THREE DIMENSIONAL MODEL AND APPARATUS FOR PROCESSING THREE DIMENSIONAL MODEL}Method for adding text on a three-dimensional model and three-dimensional model processing device {METHOD FOR ADDING TEXT ON THREE DIMENSIONAL MODEL AND APPARATUS FOR PROCESSING THREE DIMENSIONAL MODEL}

본 개시는 3차원 모델 상에 텍스트를 추가하는 방법 및 3차원 모델 처리 장치에 관한 것이다.The present disclosure relates to a method for adding text on a three-dimensional model and a three-dimensional model processing device.

치과 치료, 특히 보철 등의 치료를 하는 데 있어 치과용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, especially prosthetics. The most important thing in dental treatment using CAD/CAM is to obtain precise three-dimensional data about the shape of objects such as the patient's teeth, gums, and jawbone. When performing dental treatment, using 3D data acquired from an object has the advantage that accurate calculations can be performed by a computer.

예를 들어, 치과용 CAD/CAM 치료과정에서 대상체의 3차원 데이터를 획득하기 위해서는, CT(Computed Tomography), MRI(Magnetic Resonance Imaging), 및 광학 스캐닝 등의 방법이 이용될 수 있다.For example, to obtain 3D data of an object during dental CAD/CAM treatment, methods such as CT (Computed Tomography), MRI (Magnetic Resonance Imaging), and optical scanning may be used.

치과 CAD/CAM 분야에서는 3차원 스캔 장치가 많이 사용되고 있다. 3차원 스캔 장치는 대상체로부터 반사되는 빛을 이용하여 3차원 표면 형상 정보를 획득할 수 있으며, 예를 들어 치아의 인상체, 인상체에 대해서 획득된 석고 모형 또는 치아의 표면의 3차원 모델을 획득할 수 있다. 표면 데이터는, 폴리곤메쉬 형태로 기록되고, 대상체의 표면의 정점들의 위치 정보와 각 정점들의 연결 관계 정보를 포함할 수 있다. 또는, 표면 데이터는, 포인트 클라우드 형태로 기록되고, 대상체의 표면의 정점들의 위치 정보를 포함할 수 있다.3D scanning devices are widely used in the dental CAD/CAM field. A 3D scanning device can acquire 3D surface shape information using light reflected from an object, for example, an impression of a tooth, a plaster cast obtained from the impression, or a 3D model of the surface of a tooth. can do. The surface data is 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 of each vertex. Alternatively, the surface data may be recorded in the form of a point cloud and may include location information of vertices of the surface of the object.

최근에 3차원 프린팅을 통해, 디지털 3차원 모델로부터 3차원 물체(object)를 제작하는 기술이 널리 이용되고 있다. 3차원 프린팅을 통해 제작된 3차원 물체들을 대량으로 관리하기 위해서는, 3차원 물체들 각각에 대한 정보를 나타내는 텍스트가 3차원 물체 상에 추가되어야 한다.Recently, technology for producing 3D objects from digital 3D models through 3D printing has been widely used. In order to manage large quantities of 3D objects produced through 3D printing, text indicating information about each 3D object must be added to the 3D object.

3차원 모델의 표면이 평탄하지 않고 굴곡이 심한 경우 3차원 모델 상에 추가된 3차원 텍스트가, 3차원 프린팅 과정에서 3차원 모델로부터 떨어져 나가는 문제가 발생할 수 있다.If the surface of the 3D model is not flat and is highly curved, a problem may occur where 3D text added to the 3D model falls off from the 3D model during the 3D printing process.

본 개시의 일 측면은 대상체를 나타내는 3차원 모델 상에 텍스트를 추가하는 방법에 있어서, 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는 단계; 상기 3차원 텍스트 데이터와 상기 3차원 모델을 화면 상에 표시하는 단계; 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계; 및 상기 판단 결과를 화면 상에 표시하는 단계를 포함하는, 방법을 제공할 수 있다.One aspect of the present disclosure provides a method for adding text to a three-dimensional model representing an object, comprising: acquiring three-dimensional 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 and the 3D model intersect; and displaying the determination result on a screen.

또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터를 획득하는 단계는, 상기 적어도 하나의 문자에 관한 사용자 입력을 수신하는 단계; 상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하는 단계; 상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하는 단계; 및 상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 방법을 제공할 수 있다. Additionally, in one embodiment of the present disclosure, acquiring the 3D text data includes receiving a user input regarding the at least one character; Obtaining outline data corresponding to the at least one character; Obtaining two-dimensional mesh data by connecting a plurality of first vertices included in the outline data; and a method of obtaining 3D mesh data including the 2D mesh data as a first face and a second face spaced apart from the first face by a predetermined depth as the 3D text data. .

또한 본 개시의 일 실시 예에서 사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, in one embodiment of the present disclosure, a method may be provided, further comprising determining the location of the 3D text data based on user input.

또한 본 개시의 일 실시 예에서 상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하는 단계; 상기 화면 상의 소정 위치에 기초하여 기준점을 결정하는 단계; 및 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 더 포함하는, 방법을 제공할 수 있다. Additionally, in one 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 position 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 one embodiment of the present disclosure, the step of determining the location of the 3D text data includes determining that the first and second sides of the 3D text data are located outside the 3D model and are positioned outside the 3D model from the reference point. A method may be provided, comprising determining a position of the three-dimensional text data where the distance to the surface of the model is minimal.

또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터의 위치를 결정하는 단계는, 상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법을 제공할 수 있다. In addition, in one embodiment of the present disclosure, the step of determining the location of the 3D text data includes determining that the first and second sides of the 3D text data are located inside the 3D model and are located in the 3D model from the reference point. A method may be provided, comprising determining a position of the three-dimensional text data where the distance to the surface of the model is minimal.

또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는, 상기 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 상기 소정 오프셋만큼 이동시키는 단계; 상기 3차원 텍스트 데이터의 제1 면의 제1 정점과 상기 이동된 제2 정점을 연결하는 라인을 결정하는 단계; 및 상기 라인과 상기 3차원 모델의 표면이 교차하는 지 여부를 판단하는 단계를 포함하는, 방법을 제공할 수 있다. In addition, in one embodiment of the present disclosure, the step of determining whether the 3D text data and the 3D model can be combined includes moving a second vertex included in the second side of the 3D text data by the predetermined offset. ; determining a line connecting a first vertex of the first side of the three-dimensional text data and the moved second vertex; and determining whether the line intersects the surface of the three-dimensional model.

또한 본 개시의 일 실시 예에서 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는, 상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, in one embodiment of the present disclosure, the step of determining whether the 3D text data and the 3D model can be combined includes first vertices of the first face of the 3D text data and the first vertices moved by the predetermined offset. Among the lines connecting two vertices, if the number of lines intersecting the surface of the three-dimensional model is greater than a standard number, the method further includes determining that the three-dimensional text data and the three-dimensional model can be combined. can be provided.

또한 본 개시의 일 실시 예에서 상기 판단 결과를 화면 상에 표시하는 단계는, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지 여부에 기초하여, 상기 화면 상에 표시되는 상기 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정하는 단계를 포함하는, 방법을 제공할 수 있다. In addition, in one embodiment of the present disclosure, the step of displaying the determination result on the screen is based on whether the 3D text data and the 3D model can be combined, and the 3D text data displayed on the screen A method may be provided, including determining at least one of color, shape, or brightness.

또한 본 개시의 일 실시 예에서 상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는 단계를 더 포함하는, 방법을 제공할 수 있다. In addition, in one embodiment of the present disclosure, 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. , A method may be provided that further includes the step of 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 three-dimensional model representing an object, comprising: at least one processor that acquires three-dimensional text data corresponding to at least one character; and a display that displays the 3D text data and the 3D model, wherein the at least one processor displays the 3D display based on whether the 3D text data to which a predetermined offset is applied intersects the 3D model. A 3D model processing device can be provided 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 an embodiment of the present disclosure, the at least one processor receives a user input related to the at least one character, obtains outline data corresponding to the at least one character, and generates a plurality of lines included in the outline data. Obtain two-dimensional mesh data by connecting first vertices, and generate three-dimensional mesh data including the two-dimensional mesh data as a first face and a second face spaced a predetermined depth from the first face. A 3D model processing device that acquires dimensional text data can be provided.

또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. Additionally, in one embodiment of the present disclosure, the at least one processor may provide a 3D model processing device that determines the location 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 position, and determines a reference point based on the predetermined position on the screen, A 3D model processing device may be provided 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 configures the first and second surfaces of the 3D text data to be 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, in one embodiment of the present disclosure, the at least one processor configures the first and second sides of the three-dimensional text data to be located inside the three-dimensional model, and the distance from the reference point to the surface of the three-dimensional 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차원 모델 처리 장치를 제공할 수 있다. Additionally, in an embodiment of the present disclosure, the at least one processor moves the second vertex included in the second side of the three-dimensional text data by the predetermined offset, and moves the first vertex of the first side of the three-dimensional text data by the predetermined offset. A 3D model processing device may be provided that determines a line connecting a vertex and the moved second vertex, and determines whether the line intersects the surface of the 3D model.

또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in an embodiment of the present disclosure, the at least one processor may select, among lines connecting first vertices of the first side of the three-dimensional text data and second vertices moved by the predetermined offset, the three-dimensional A 3D model processing device may be provided that determines that the 3D text data and the 3D model can be combined when the number of lines intersecting the surface of the model is greater than a standard number.

또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지 여부에 기초하여, 상기 화면 상에 표시되는 상기 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in one embodiment of the present disclosure, the at least one processor determines the color, shape, and Alternatively, a 3D model processing device may be provided that determines at least one of brightness.

또한 본 개시의 일 실시 예에서 상기 적어도 하나의 프로세서는, 상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는, 3차원 모델 처리 장치를 제공할 수 있다. In addition, in one embodiment of the present disclosure, the at least one processor combines the 3D text data to which the predetermined offset is applied on the 3D model, or combines the 3D text data to which the predetermined offset is applied from the 3D model. It is possible to provide a 3D model processing device that obtains a 3D model with text added by deleting data corresponding to .

개시된 실시 예들에 따르면, 3차원 프린팅 과정에서 3차원 모델로부터 텍스트가 떨어져 나가는 위험을 낮출 수 있다.According to the disclosed embodiments, the risk of text falling off from the 3D model during the 3D printing process can be reduced.

또한, 개시된 실시 예들에 따르면, 입력하고자 하는 텍스트에 포함되는 복수의 문자들이 3차원 모델과 잘 결합하는 지 여부를, 사용자가 각 문자 별로 명확하게 인지할 수 있다.Additionally, according to the disclosed embodiments, the 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 through combination of the following detailed description and accompanying drawings, where reference numerals may refer to structural elements.
1 is a diagram for explaining a 3D model processing system according to an embodiment.
Figure 2 shows a block diagram of a 3D model processing system according to an embodiment.
FIG. 3A explains how a general 3D model processing device adds text to a 3D model.
Figure 3b explains how a general 3D model processing device adds text to a 3D model.
Figure 4 shows a flowchart of a method in which a 3D model processing device adds text to a 3D model, according to an embodiment.
FIG. 5A shows an example of a process in which a 3D model processing device acquires 3D text data according to an embodiment.
Figure 5b shows an example of a process in which a 3D model processing device acquires 3D text data according to an embodiment.
FIG. 5C shows an example of a process in which a 3D model processing device acquires 3D text data according to an embodiment.
FIG. 6A explains how a 3D model processing device determines whether offset-applied 3D text data and a 3D model intersect, according to an embodiment.
FIG. 6B explains how a 3D model processing device determines whether offset-applied 3D text data and a 3D model intersect, according to an embodiment.
FIG. 7A shows an example in which a 3D model processing device adds text in an embossed manner on a 3D model, according to an embodiment.
FIG. 7B shows an example in which a 3D model processing device according to an embodiment adds text in an engraving manner to a 3D model.
FIG. 8A shows an example of a screen displayed by a 3D model processing device according to an embodiment.
FIG. 8B shows an example of a screen displayed by a 3D model processing device according to an embodiment.
Figure 9 shows an example of result data output by a 3D model processing device according to an embodiment.
Figure 10 shows a block diagram of a 3D model processing device according to an embodiment.

본 명세서는 본 발명의 권리범위를 명확히 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 실시할 수 있도록, 본 발명의 원리를 설명하고, 실시 예들을 개시한다. 개시된 실시 예들은 다양한 형태로 구현될 수 있다.This specification clarifies the scope of rights 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 numerals refer to 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 is omitted. The term 'part' (portion) used in the specification may be implemented as software or hardware, and depending on the embodiment, a plurality of 'portions' may be implemented as a single element (unit, element), or a single 'portion' may be implemented as a single 'portion'. It is also possible for ' to contain multiple elements. Hereinafter, the operating principle and embodiments of the present invention will be described with reference to the attached drawings.

본 개시에서 '대상체(object)'는 촬영의 대상이 되는 것으로서, 사람, 동물, 또는 그 일부를 포함할 수 있다. 예를 들어, 대상체는 신체의 일부(장기 또는 기관 등), 대상체 상에 부착 가능하거나 대상체 내에 삽입 가능한 인공 구조물, 또는 팬텀(phantom) 등을 포함할 수 있다. 예를 들어, 대상체는 치아, 치은, 구강의 적어도 일부 영역, 및/또는 구강 내에 삽입 가능한 인공 구조물(예를 들어, 브라켓 및 와이어를 포함하는 교정 장치, 임플란트, 인공 치아, 인레이 및 온레이 등을 포함하는 치아 수복물, 구강 내 삽입되는 교정 보조 도구 등), 인공 구조물이 부착된 치아 또는 치은 등을 포함할 수 있다.In the present disclosure, an 'object' is a subject of photography and may include a person, an animal, or a part thereof. For example, the object may include a part of the body (organ or organ, etc.), an artificial structure that can be attached to or inserted into the object, or a phantom. For example, the subject may have teeth, gingiva, at least some areas of the oral cavity, and/or artificial structures implantable within the oral cavity (e.g., orthodontic devices including brackets and wires, implants, artificial teeth, inlays and onlays, etc.) It may include dental restorations, orthodontic aids inserted into the oral cavity, etc.), teeth or gingiva to which artificial structures are attached.

본 개시에서 '영상'은 대상체에 대한 2차원 영상 또는 대상체를 입체적으로 나타내는 3차원 모델 또는 3차원 영상이 될 수 있다. 본 개시에서 영상이란, 2차원 프레임 및 3차원 프레임을 모두 포함할 수 있다. 예를 들어, 영상은, 대상체에 대해서 서로 다른 시점에서 획득된 2차원 영상들을 포함하는 2차원 프레임, 또는 포인트 클라우드 형태 또는 폴리곤 메쉬 형태로 표현되는 3차원 프레임을 포함할 수 있다.In the present disclosure, 'image' may be a two-dimensional image of an object, a three-dimensional model or a three-dimensional image representing the object in three dimensions. In the present disclosure, an image may include both two-dimensional frames and three-dimensional frames. For example, the image may include a two-dimensional frame including two-dimensional images acquired at different viewpoints of the object, or a three-dimensional frame expressed in the form of a point cloud or polygon mesh.

또한, 본 개시에서 '데이터'는 대상체를 2차원 또는 3차원적으로 표현하기 위해서 필요한 정보, 예를 들어, 적어도 하나의 영상 센서로부터 획득된 로우 데이터(raw data)를 의미할 수 있다. 구체적으로, 로우 데이터는 대상체에 대한 3차원 모델을 생성하기 위해서 획득되는 2차원 영상들일 수 있다. 로우 데이터는, 3차원 스캐너(예를 들어, 구강 스캐너(intraoral scanner))를 이용하여 대상체를 스캔할 때 복수의 영상 센서들에 의해 획득되는 서로 다른 시점의 2차원 영상들이 될 수 있다. 또한, 본 개시에서 '3차원 데이터'는 치아, 치은, 및 치아 또는 치은에 부착되는 인공 구조물 중 적어도 하나를 포함하는 대상체의 입체적인 특성을 나타내는 3차원 모델을 의미할 수 있다.Additionally, in the present disclosure, 'data' may refer to information necessary to express an object in two or three dimensions, for example, raw data obtained from at least one image sensor. Specifically, raw data may be two-dimensional images acquired to create a three-dimensional model of an object. Raw data may be two-dimensional images from different viewpoints acquired by a plurality of image sensors when scanning an object using a three-dimensional scanner (for example, an intraoral scanner). Additionally, in the present disclosure, '3D data' may mean a 3D model representing the three-dimensional characteristics of an object including at least one of teeth, gingiva, and artificial structures 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 embodiment.

도 1에 도시된 바와 같이, 본 개시의 일 실시 예에 따른 3차원 모델 처리 시스템(200)은, 3차원 스캔 장치(100) 및 3차원 모델 처리 장치(300)를 포함할 수 있다. As shown in FIG. 1, the 3D model processing system 200 according to an embodiment of the present disclosure may include a 3D scanning device 100 and a 3D model processing device 300.

일 실시 예에 따른 3차원 모델 처리 시스템(200)은, 3차원 스캔 장치(100)를 이용하여 대상체에 패턴 광을 조사(project)하고 패턴 광이 조사된 대상체를 스캔함으로써, 패턴의 변형에 의한 삼각 계측의 원리를 이용하여 대상체의 형상을 나타내는 3차원 모델을 획득할 수 있다. 그러나, 3차원 스캔 장치(100)로 3차원 모델을 획득하는 방법은 이에 한정되지 않으며, 구현 방식에 따라 다양한 방법으로 3차원 모델을 획득할 수 있다.The 3D model processing system 200 according to an embodiment projects pattern light on an object using the 3D scanning device 100 and scans the object illuminated with the pattern light, thereby preventing damage due to deformation of the pattern. A three-dimensional model representing the shape of an object can be obtained using the principle of triangulation measurement. However, the method of acquiring a 3D model using the 3D scanning device 100 is not limited to this, and the 3D model can be obtained in various ways depending on the implementation method.

일 실시 예에 따른 3차원 스캔 장치(100)는, 대상체로부터 획득된 로우 데이터를 3차원 모델 처리 장치(300)에게 전송할 수 있다. 3차원 모델 처리 장치(300)는, 전달받은 로우 데이터에 기초하여, 대상체의 표면의 형상을 3차원적으로 나타내는 3차원 모델을 생성할 수 있다. 3차원 모델은, 포인트 클라우드 데이터 또는 폴리곤 메쉬 데이터일 수 있다. 다른 일 실시 예에 따른 3차원 스캔 장치(100)는, 대상체로부터 획득된 로우 데이터를 재구성하여 3차원 프레임을 생성하고, 생성된 3차원 프레임을 3차원 모델 처리 장치(300)에 전송할 수 있다.The 3D scanning device 100 according to an embodiment may transmit raw data obtained from the object to the 3D model processing device 300. The 3D model processing device 300 may generate a 3D model that represents the shape of the surface of the object in 3D, based on the received raw data. The 3D model may be point cloud data or polygon mesh data. The 3D scanning device 100 according to another embodiment may generate a 3D frame by reconstructing raw data obtained from an object, and transmit the generated 3D frame to the 3D model processing device 300.

일 실시 예에 따른 3차원 스캔 장치(100)는, 구강 내의 3차원 모델을 획득하기 위한 의료 장치를 포함할 수 있다. 구체적으로, 3차원 스캔 장치(100)는 구강 내에 삽입되어 비 접촉식으로 치아를 스캐닝함으로써, 적어도 하나의 치아를 포함하는 구강에 대한 3차원 모델을 생성하기 위한 장치가 될 수 있다. 또한, 3차원 스캔 장치(100)는 구강 내에 인입 및 인출이 가능한 형태를 가질 수 있으며, 적어도 하나의 영상 센서(예를 들어, 광학 카메라 등)를 이용하여 환자의 구강 내부를 스캔할 수 있다. 또한, 3차원 스캔 장치(100)는 테이블 스캐너일 수 있다.The 3D scanning device 100 according to one embodiment may include a medical device for obtaining a 3D model of the oral cavity. Specifically, the 3D scanning device 100 may be a device for generating a 3D model of the oral cavity including at least one tooth by being inserted into the oral cavity and scanning teeth in a non-contact manner. Additionally, the 3D scanning device 100 may have a shape that allows insertion and withdrawal into the oral cavity, and may scan the inside of the patient's oral cavity using at least one image sensor (eg, an optical camera, etc.). Additionally, the 3D scanning device 100 may be a table scanner.

3차원 스캔 장치(100)는 대상체인 구강 내부의 치아, 치은 또는 구강 내에 삽입 가능한 인공 구조물(예를 들어, 브라켓 및 와이어를 포함하는 교정 장치, 임플란트, 인공 치아, 구강 내 삽입되는 교정 보조 도구 등) 중 적어도 하나의 표면을 이미징하기 위해서, 대상체에 대한 표면 정보를 로우 데이터로서 획득할 수 있다. 3차원 모델 처리 장치(300)는, 로우 데이터를 기초로 결합(merge) 등의 3차원 연산을 수행하여 3차원 모델을 획득하고, 3차원 모델을 렌더링한 영상을 화면 상에 디스플레이에 표시할 수 있다.The 3D scanning device 100 is an object, such as teeth inside the oral cavity, gingiva, or artificial structures that can be inserted into the oral cavity (e.g., orthodontic devices including brackets and wires, implants, artificial teeth, orthodontic auxiliary tools inserted into the oral cavity, etc. ), surface information about the object may be acquired as raw data. The 3D model processing device 300 can obtain a 3D model by performing 3D operations such as merge based on raw data, and display a rendered image of the 3D model on a screen. there is.

일 실시 예에 따른 3차원 모델 처리 장치(300)는 3차원 스캔 장치(100)와 유선 또는 무선 통신 네트워크를 통하여 연결되며, 3차원 스캔 장치(100)가 대상체를 스캔하여 획득한 로우 데이터 또는 3차원 프레임을 3차원 스캔 장치(100)로부터 수신할 수 있다. The 3D model processing device 300 according to an embodiment is connected to the 3D scanning device 100 through a wired or wireless communication network, and the 3D scanning device 100 scans the object to obtain raw data or 3 A dimensional frame may be received from the 3D scanning device 100.

3차원 모델 처리 장치(300)는, 수신된 로우 데이터 또는 3차원 프레임에 기초하여, 대상체에 대한 3차원 모델 또는 영상을 생성, 처리, 디스플레이 및/또는 전송할 수 있는 모든 전자 장치가 될 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는 스마트 폰(smart phone), 랩탑 컴퓨터, 데스크탑 컴퓨터, PDA, 태블릿 PC 등의 컴퓨팅 장치가 될 수 있으며, 이에 한정되지 않는다. The 3D model processing device 300 may be any electronic device capable of generating, processing, displaying, and/or transmitting a 3D model or image of an object based on received raw data or 3D frames. For example, the 3D model processing device 300 may be a computing device such as a smart phone, laptop computer, desktop computer, PDA, or tablet PC, but is not limited thereto.

3차원 모델 처리 장치(300)는 3차원 스캔 장치(100)에서 수신된 데이터에 기초하여, 대상체의 진단에 필요한 정보 및 대상체 영상 중 적어도 하나를 생성하고, 생성된 정보 및/또는 영상을 디스플레이(320)를 통하여 디스플레이 할 수 있다. The 3D model processing device 300 generates at least one of information necessary for diagnosis of an object and an object image based on data received from the 3D scanning device 100, and displays the generated information and/or image ( 320).

일 실시 예에 따른 3차원 모델 처리 장치(300)는 대상체에 대한 3차원 모델 또는 영상을 분석하고, 분석 결과를 처리, 디스플레이 및/또는 전송할 수 있다. The 3D model processing device 300 according to an embodiment may analyze a 3D model or image of an object, and process, display, and/or transmit the analysis results.

또한, 일 실시 예에 따른 3차원 모델 처리 장치(300)는 3차원 스캔 장치(100)에 연동되는 전용 소프트웨어를 저장 및 실행할 수 있다. 전용 소프트웨어는 전용 프로그램 또는 전용 어플리케이션으로 호칭될 수 있다. 3차원 모델 처리 장치(300)가 3차원 스캔 장치(100)와 상호 연동되어 동작하는 경우, 3차원 모델 처리 장치(300)에 저장되는 전용 소프트웨어는 3차원 스캔 장치(100)와 연결되어 대상체 스캔을 통하여 획득되는 데이터들을 실시간으로 수신할 수 있다. 예를 들어, 자사의 구강 스캐너인 i500 제품에 대응되는 i500 에서 구강 스캔을 통하여 획득된 데이터를 처리하기 위한 전용 소프트웨어가 존재한다. 3차원 모델 처리 장치(300)는 i500 제품에 대응되는 전용 소프트웨어를 저장 및 실행할 수 있다. 전용 소프트웨어는 3차원 모델을 획득, 처리, 저장, 및/또는 전송하기 위한 적어도 하나의 동작들을 수행할 수 있다. Additionally, the 3D model processing device 300 according to an embodiment may store and execute dedicated software linked to the 3D scanning device 100. Dedicated software may be referred to as a dedicated program or dedicated application. When the 3D model processing device 300 operates in conjunction with the 3D scanning device 100, the dedicated software stored in the 3D model processing device 300 is connected to the 3D scanning device 100 to scan the object. Data acquired through can be received in real time. For example, there is dedicated software to process data acquired through intraoral scanning in i500, which corresponds to the i500 product, the company's intraoral scanner. The 3D model processing device 300 can store and execute dedicated software corresponding to the i500 product. Dedicated software may perform at least one operation to acquire, process, store, and/or transmit the three-dimensional model.

전용 소프트웨어는 3차원 모델 처리 장치(300)의 프로세서 또는 메모리에 저장될 수 있다. 또한, 전용 소프트웨어는 3차원 스캔 장치(100)에서 획득된 데이터의 이용을 위한 사용자 인터페이스를 제공할 수 있다. 전용 소프트웨어에서 제공되는 사용자 인터페이스 화면은 개시된 실시 예에 따라서 생성되는 대상체에 대한 3차원 모델이 렌더링 된 영상을 포함할 수 있다. 예를 들어, 개시된 실시 예에서, 전용 소프트웨어에서 제공되는 사용자 인터페이스 화면은 이하의 도면들에서 도시 되는 사용자 인터페이스 화면들 중 어느 하나가 될 수 있다.Dedicated software may be stored in the processor or memory of the 3D model processing device 300. Additionally, dedicated software may provide a user interface for using data acquired from the 3D scanning device 100. The user interface screen provided by the dedicated software may include a rendered image of a 3D model of the object created according to the disclosed embodiment. For example, in the disclosed embodiment, the user interface screen provided by the dedicated software may be any one of the user interface screens shown in the drawings below.

도 2는 일 실시 예에 따른 3차원 모델 처리 시스템의 블록도를 도시한다.Figure 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 model processing device 300 according to an embodiment may be connected to an external device or an external server through a wired or wireless communication network. The 3D model processing device 300 according to an embodiment includes a 3D scanning device 100, a data acquisition device 101 (e.g., a computed tomography (CT) device, or a magnetic resonance imaging device ( Data on the object may be obtained and processed from at least one of a medical diagnosis device such as a Magnetic Resonance Imaging (MRI) device or the server 102. Alternatively, the 3D model processing device 300 according to an embodiment may obtain and process data previously stored in the internal memory.

일 실시 예에 따른 3차원 모델 처리 장치(300)에서 처리된 3차원 모델은, 3차원 프린팅을 통해 3차원 물체를 제작하기 위해 이용될 수 있다. 3차원 프린팅을 통해 제작된 3차원 물체를 용이하게 식별하기 위하여, 3차원 물체 상에 3차원 물체의 식별 정보를 나타내는 텍스트가 3차원 물체 상에 추가될 수 있다. The 3D model processed by the 3D model processing device 300 according to an embodiment can be used to produce a 3D object through 3D printing. In order to easily identify a 3D object produced through 3D printing, text indicating identification information of the 3D object may be added to the 3D object.

도 3a 및 도 3b는 일반적인 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법을 설명한다. 3A and 3B explain how a typical 3D model processing device 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 device can add 3D text data 302 representing a character string to a 3D model 301 representing an object. When 3D text data 302 is added to an area where the surface of the 3D model 301 is flat, the part corresponding to the 3D model 301 and the part corresponding to the 3D text data 302 are well combined ( combined) 3D objects can be produced through 3D printing.

반면에, 도 3b에 도시된 바와 같이, 3차원 모델(303) 상에 굴곡이 심한 영역 또는 3차원 모델(303) 영역 외에 3차원 텍스트 데이터(304)가 추가되는 경우, 3차원 모델(303)에 대응되는 부분으로부터 3차원 텍스트 데이터(304)에 대응하는 부분의 적어도 일부가 분리되어 프린팅 될 수 있다.On the other hand, as shown in FIG. 3B, when 3D text data 304 is added to a highly curved area on the 3D model 303 or outside the 3D model 303 area, the 3D model 303 At least a portion of the portion corresponding to the 3D text data 304 may be separated and printed.

따라서, 3차원 프린팅 과정에서 복수의 문자들을 포함하는 텍스트 전체가 3차원 물체 상에 잘 결합되어 있을 수 있도록 하기 위해서는, 3차원 물체 상에 텍스트 추가가 적합한 영역을 사용자가 용이하게 파악할 수 있도록 하는 것이 요구될 수 있다.Therefore, in order to ensure that the entire text including a plurality of characters is well combined on the 3D object during the 3D printing process, it is important to allow the user to easily identify an area suitable for adding text to the 3D object. may be requested.

본 개시의 다양한 실시 예들에 따르면, 3차원 모델 처리 장치(300)는 3차원 모델 상에 텍스트를 추가함에 있어서, 3차원 텍스트 데이터가 3차원 모델과 적절하게 결합될 수 있는 지 여부를 판단하고 판단 결과를 화면 상에 표시할 수 있다. According to various embodiments of the present disclosure, when adding text to a 3D model, the 3D model processing device 300 determines whether 3D text data can be appropriately combined with the 3D model. The results can be displayed on the screen.

다양한 실시 예들에 따라 3차원 모델 처리 장치(300)가 3차원 모델 상에 텍스트를 추가하는 구체적인 방법과 관련하여서는, 이하에서 도 4 내지 도 10을 참조하여 보다 상세히 설명한다.A specific method by which the 3D model processing device 300 adds text to a 3D model according to various embodiments will be described in more detail below with reference to FIGS. 4 to 10.

도 4는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 상에 텍스트를 추가하는 방법의 흐름도를 도시한다.Figure 4 shows a flowchart of a method in which a 3D model processing device adds text to a 3D model, according to an embodiment.

단계 S401에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. In step S401, the 3D model processing device 300 according to an embodiment may acquire 3D text data corresponding to at least one character.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 내부 메모리 또는 외부 디바이스로부터 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 적어도 하나의 문자를 입력하는 사용자 입력을 수신하고, 사용자 입력에 기초하여 적어도 하나의 문자를 나타내는 3차원 텍스트 데이터를 획득할 수 있다.The 3D model processing device 300 according to an embodiment may obtain 3D text data corresponding to at least one character from an internal memory or an external device. The 3D model processing device 300 may receive a user input of at least one character and obtain 3D text data representing the at least one character based on the user input.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 적어도 하나의 문자에 대응하는 사용자 입력을 수신하고, 적어도 하나의 문자에 대응하는 윤곽선(contour) 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 2차원 메쉬 데이터를 제1 면으로 포함하고, 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 3차원 텍스트 데이터로서 획득할 수 있다.The 3D model processing device 300 according to an embodiment may receive a user input corresponding to at least one character and obtain contour data corresponding to the at least one character. The 3D model processing device 300 may obtain 2D mesh data by connecting a plurality of first vertices included in the contour data. The 3D model processing device 300 may acquire 3D mesh data including 2D mesh data as a first face and a second face spaced apart from the first face by a predetermined depth as 3D text data. there is.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자로부터 복수의 문자들을 포함하는 제1 문자열에 대응하는 사용자 입력을 수신할 수 있다. 3차원 모델 처리 장치(300)는, 제1 문자열에 포함되는 각 문자에 대응하는 윤곽선 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 각 문자에 대응하는 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 제1 문자열에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터를 포함하는, 3차원 텍스트 데이터 세트를 획득할 수 있다.The 3D model processing device 300 according to an embodiment may receive a user input corresponding to a first string including a plurality of characters from the user. The 3D model processing device 300 may obtain outline data corresponding to each character included in the first string. The 3D model processing device 300 may obtain 2D mesh data by connecting a plurality of first vertices included in the outline data corresponding to each character. The 3D model processing device 300 may obtain a 3D text data set including 3D text data corresponding to each character included in the first string.

단계 S402에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델을 화면 상에 표시할 수 있다.In step S402, the 3D model processing device 300 according to an embodiment may display 3D text data and a 3D model on the screen.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델을 렌더링 하여 화면 상에 표시할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델이 표시된 화면 상에, 사용자에 의해 입력된 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 추가로 표시할 수 있다.The 3D model processing device 300 according to an embodiment can render a 3D model and display it on the screen. The 3D model processing device 300 may additionally display 3D text data corresponding to at least one character input by the user on the screen on which the 3D model is displayed.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 기준점 또는 기준면으로부터 3차원 모델의 표면까지의 거리 또는 사용자 입력 중 적어도 하나에 기초하여, 3차원 공간 내에서 3차원 텍스트 데이터가 배치될 위치를 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 결정된 X축 좌표값 및 Y축 좌표값에 기초하여, 3차원 모델에 근접하여 위치하도록 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The 3D model processing device 300 according to an embodiment determines where 3D text data will be placed in 3D space based on at least one of the distance from a reference point or reference surface to the surface of the 3D model or a user input. can be decided. The 3D model processing device 300 according to an embodiment may determine the X-axis coordinate value and Y-axis coordinate value of 3D text data. The 3D model processing device 300 according to an embodiment may determine the Z-axis coordinate value of the 3D text data to be located close to the 3D model, based on the determined X-axis coordinate value and Y-axis coordinate value. .

일 예로서, 3차원 모델 처리 장치(300)는, 화면 상의 소정 위치를 선택하는 사용자 입력을 수신하고, 화면 상의 소정 위치에 기초하여 기준점을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 기준점으로부터 3차원 모델의 표면까지의 거리에 기초하여, 3차원 텍스트 데이터의 위치를 결정할 수 있다. 3차원 모델 처리 장치(300)는, 화면 상의 소정 위치에 기초하여 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정하고, 3차원 모델을 고려하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다. As an example, the 3D model processing device 300 may receive a user input for selecting a predetermined position on the screen and determine a reference point based on the predetermined position on the screen. The 3D model processing device 300 may determine the location of 3D text data based on the distance from the reference point to the surface of the 3D model. The 3D model processing device 300 determines the can be decided.

예를 들어, 3차원 텍스트 데이터의 X축 좌표값이란, 화면 상에 디스플레이되고 있는 3차원 공간 내에서, 화면의 가로축을 따라 결정되는 3차원 텍스트 데이터의 위치를 나타내는 값일 수 있다. 3차원 텍스트 데이터의 Y축 좌표값이란, 화면 상에 디스플레이되고 있는 3차원 공간 내에서, 화면의 세로축을 따라 결정되는 3차원 텍스트 데이터의 위치를 나타내는 값일 수 있다. 3차원 텍스트 데이터의 Z축 좌표값이란, 화면 상에 디스플레이되고 있는 3차원 공간 내에서, 화면을 기준으로 3차원 텍스트 데이터의 깊이를 나타내는 값일 수 있다.For example, the X-axis coordinate value of 3D text data may be a value indicating the 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 3D text data may be a value indicating the position of the 3D text data determined along the vertical axis of the screen within the 3D space displayed on the screen. The Z-axis coordinate value of 3D text data may be a value indicating the depth of the 3D text data relative to the screen within the 3D space displayed on the screen.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 기준점으로부터 3차원 모델로 가상의 선을 조사함으로써, 3차원 모델의 표면 상에서 기준점으로부터 가장 가까운 포인트를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 3차원 텍스트 데이터가 부착되도록, 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The 3D model processing device 300 according to an embodiment may identify the point closest to the reference point on the surface of the 3D model by examining an imaginary line from the reference point to the 3D model. The 3D model processing device 300 may determine the Z-axis coordinate value of the 3D text data so that the 3D text data is attached to the identified point on the 3D model.

다른 예로서, 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 model processing device 300 places 3D text data at a position corresponding to a first position on the screen, and drags the 3D text data displayed at the first position on the screen to a second position. Can receive user input. The 3D model processing device 300 determines the You can. The 3D model processing device 300 may determine a reference point based on the second position on the screen and determine the Z-axis coordinate value of the 3D text data based on the distance from the reference point to the surface of the 3D model. .

다른 예로서, 3차원 모델 처리 장치(300)는, 화면 상에 디스플레이 되고 있는 3차원 공간 내의 3차원 모델에 복수의 가상의 선들을 조사할 수 있다. 3차원 모델 처리 장치(300)는, 복수의 가상의 선들을 3차원 모델에 조사함으로써, 3차원 모델의 표면 상에서 가장 가까운 포인트(즉, 3차원 모델의 표면 상에서 가장 돌출된 포인트)를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 기준 문자에 대응하는 3차원 텍스트 데이터의 포인트가 부착되도록, 3차원 텍스트 데이터 세트를 위치 정렬할 수 있다.As another example, the 3D model processing device 300 may irradiate a plurality of virtual lines to a 3D model in a 3D space displayed on a screen. The 3D model processing device 300 can identify the closest point on the surface of the 3D model (i.e., the most protruding point on the surface of the 3D model) by examining a plurality of virtual lines on the 3D model. there is. The 3D model processing device 300 may position and align the 3D text data set so that points of 3D text data corresponding to reference characters are attached to points identified on the 3D model.

3차원 모델 처리 장치(300)는, 화면 상에 디스플레이 되고 있는 3차원 모델의 표면에서 가장 돌출된 영역을 검색하고, 검색된 영역에 대응하는 X축 좌표값 및 Y축 좌표값을 결정할 수 있다.The 3D model processing device 300 may search for the most protruding area on the surface of the 3D model displayed on the screen and determine the X-axis coordinate value and Y-axis coordinate value corresponding to the searched area.

3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 검색된 영역까지의 연직 거리들에 기초하여, 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다. The 3D model processing device 300 determines the Z-axis coordinate value of the 3D text data based on the vertical distances from the vertices included in the second side of the 3D text data to the searched area of the 3D model. You can.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 양각(embossment)으로 입력되는 지 또는 음각(intaglio)으로 입력되는 지 여부에 기초하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The 3D model processing device 300 according to an embodiment processes the Z-axis of 3D text data based on whether the text is input as embossment or intaglio on the 3D model. Coordinate values can be determined.

일 예로서, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 외부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As an example, when text is input in relief on a 3D model, the 3D model processing device 300 processes the 3D text data so that the first and second sides of the 3D text data are located outside the 3D model. The location of text data can be determined. The 3D model processing device 300 may determine the position of the 3D text data where the sum of the vertical distances from the vertices included in the second surface of the 3D text data to the surface of the 3D model is minimum.

다른 예로서, 3차원 모델 내에 텍스트가 음각으로 입력되는 경우, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 내부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As another example, when text is input engraved into a 3D model, the 3D model processing device 300 processes the 3D text so that the first and second sides of the 3D text data are located inside the 3D model. You can determine the location of the data. The 3D model processing device 300 may determine the position of the 3D text data where the sum of the vertical distances from the vertices included in the second surface of the 3D text data to the surface of the 3D model is minimum.

또한, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 노멀 벡터와 3차원 모델의 노멀 벡터에 기초하여, 3차원 텍스트 데이터의 각도를 결정할 수 있다. Additionally, the 3D model processing device 300 may determine the angle of the 3D text data based on the normal vector of the 3D text data and the normal vector of the 3D model.

단계 S403에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다.In step S403, the 3D model processing device 300 according to an embodiment may determine whether the 3D text data and the 3D model can be combined.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 소정 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차(intersection) 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다. 오프셋이 적용된 3차원 텍스트 데이터는, 오프셋만큼 깊이가 추가된 3차원 텍스트 데이터를 포함할 수 있다.The 3D model processing device 300 according to an embodiment determines whether the 3D text data and the 3D model can be combined based on whether there is an intersection between the 3D model and the 3D text data to which a predetermined offset is applied. can do. 3D text data to which an offset is applied may include 3D text data with added depth equal to the offset.

일 실시 예에 따른 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 model processing device 300 according to an embodiment may move the second vertex included in the second side of the 3D text data by a predetermined offset in order to obtain 3D text data to which an offset is applied. The 3D model processing device 300 may determine a line connecting the first vertex of the first side of the 3D text data and the moved second vertex. The 3D model processing device 300 may determine whether a line intersects the surface of the 3D model. The 3D model processing device 300 determines the number of lines that intersect the surface of the 3D model among the lines connecting the first vertices of the first surface of the 3D text data and the second vertices moved by a predetermined offset. It is possible to determine whether is greater than or equal to a reference value, and based on the determination result, to determine whether the 3D text data and the 3D model can be combined. For example, the 3D model processing device 300 determines that all lines connecting the first vertices of the first surface of the 3D text data and the second vertices moved by a predetermined offset intersect the surface of the 3D model. In this case, it may be determined that 3D text data and 3D model can be combined.

단계 S404에서 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 판단 결과를 화면 상에 표시할 수 있다.In step S404, the 3D model processing device 300 according to an embodiment may display the determination result on the screen.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지 여부에 기초하여, 화면 상에 표시되는 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.The 3D model processing device 300 according to an embodiment may determine at least one of the 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. You can decide on one.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터가 3차원 모델에 결합 가능한 경우와 결합 가능하지 않은 경우를 상이하게 표시할 수 있다. 예를 들어, 일 실시 예 에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터가 3차원 모델에 결합 가능한 경우 제1 색(예를 들어, 파란색)으로 3차원 텍스트 데이터를 표시할 수 있다. 3차원 텍스트 데이터가 3차원 모델에 결합 가능하지 않은 경우 제2 색(예를 들어, 주황색)으로 3차원 텍스트 데이터를 표시할 수 있다.The 3D model processing device 300 according to an embodiment may display differently when 3D text data can be combined with a 3D model and when it cannot be combined. For example, the 3D model processing device 300 according to an embodiment may display 3D text data in a first color (for example, blue) when 3D text data can be combined with a 3D model. there is. When 3D text data cannot be combined with a 3D model, the 3D text data may be displayed in a second color (eg, orange).

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 화면 상에 표시된 3차원 텍스트 데이터를 3차원 모델에 결합 불가능한 제1 위치로부터 3차원 모델에 결합 가능한 제2 위치로 드래그하는 사용자 입력에 따라, 3차원 텍스트 데이터의 색상을 제2 색으로부터 제1 색으로 변경할 수 있다.The 3D model processing device 300 according to an embodiment may, according to a user input, drag the 3D text data displayed on the screen from a first position that cannot be combined with the 3D model to a second position that can be combined with the 3D model. , the color of the 3D text data can be changed from the second color to the first color.

또한, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트 중에서 일부 문자들에 대응하는 3차원 텍스트 데이터가, 3차원 모델과 결합 가능하지 않다고 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델과 결합 가능하지 않다고 판단되는 일부 3차원 텍스트 데이터를, 다른 3차원 텍스트 데이터와 상이하게 표시할 수 있다. 3차원 모델 처리 장치(300)는, 사용자가 입력하고자 하는 문자열에 대응하는 3차원 텍스트 데이터 세트 중에서 어떠한 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합되지 않는지를 표시할 수 있다. 따라서, 사용자는, 문자열에 포함된 문자들 중에서 문제가 되는 문자를 직관적으로 확인하고, 문자열을 수정하거나 3차원 텍스트 데이터의 위치를 변경할 수 있다. In addition, the 3D model processing device 300 according to an embodiment determines that 3D text data corresponding to some characters among the 3D text data set corresponding to a plurality of characters cannot be combined with the 3D model. You can judge. The 3D model processing device 300 may display some 3D text data that is determined not to be combinable with a 3D model differently from other 3D text data. The 3D model processing device 300 may display which 3D text data corresponding to a character from among the 3D text data set corresponding to the character string that the user wants to input is not combined with the 3D model. Accordingly, the user can intuitively check the problematic character among the characters included in the string, modify the string, or change the position of the 3D text data.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 경우, 텍스트가 추가된 3차원 모델을 획득할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 3차원 모델로부터 소정 오프셋이 적용된 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득할 수 있다.The 3D model processing device 300 according to an embodiment may obtain a 3D model to which text is added when 3D text data and a 3D model can be combined. The 3D model processing device 300 combines the 3D text data to which a predetermined offset is applied on a 3D model, or deletes data corresponding to the 3D text data to which a predetermined offset is applied from the 3D model, so that the text An additional 3D model can be obtained.

도 5a, 도 5b 및 도 5c는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 텍스트 데이터를 획득하는 과정의 예를 도시한다.FIGS. 5A, 5B, and 5C show an example of a process in which a 3D model processing device acquires 3D text data according to an embodiment.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 다양한 문자들 각각에 대응하는 윤곽선 데이터를 포함하는 윤곽선 데이터 세트를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 오픈 API(Application Programming Interface)로부터 윤곽선 데이터 세트를 획득할 수 있다. 소정 문자에 대응하는 윤곽선 데이터는 적어도 하나의 폐루프를 포함하고, 복수의 포인트들로 구성될 수 있다. The 3D model processing device 300 according to an embodiment may obtain an outline data set including outline data corresponding to each of various characters. The 3D model processing device 300 may obtain a contour data set from an open application programming interface (API). Contour data corresponding to a predetermined character may include at least one closed loop and be composed of a plurality of points.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 내부 메모리에 미리 저장되어 있던 윤곽선 데이터 세트로부터, 사용자 입력에 대응하는 적어도 하나의 문자를 나타내는 윤곽선 데이터를 획득할 수 있다.The 3D model processing device 300 according to an embodiment may obtain outline data representing at least one character corresponding to a user input from a set of outline data previously stored in an internal memory.

도 5a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 문자 'a'를 입력하는 사용자 입력을 수신하면, 문자 'a'를 나타내는 윤곽선 데이터(510)를 획득할 수 있다. 윤곽선 데이터(510)는, 복수의 제1 정점들로 구성된 바깥쪽 폐루프와 안쪽 폐루프를 포함할 수 있다.As shown in FIG. 5A, when receiving a user input of character 'a', the 3D model processing device 300 according to an embodiment acquires outline data 510 representing the letter 'a'. You can. The contour data 510 may include an outer closed loop and an inner closed loop composed of a plurality of first vertices.

다음으로, 도 5b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 윤곽선 데이터 내에 포함되는 제1 정점들을 연결하여 2차원 메쉬 데이터(520)를 생성할 수 있다.Next, as shown in FIG. 5B, the 3D model processing device 300 according to an embodiment may generate two-dimensional mesh data 520 by connecting first vertices included in the outline data.

다음으로, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 2차원 메쉬 데이터(520)에 기초하여 3차원 텍스트 데이터를 생성할 수 있다.Next, the 3D model processing device 300 according to an embodiment may generate 3D text data based on the 2D mesh data 520.

도 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 model processing device 300 according to an embodiment applies a predetermined depth value to 2D mesh data consisting of an X-axis coordinate value and a Y-axis coordinate value, , 3D text data 530 consisting of Y-axis coordinate values and Z-axis coordinate values can be generated. The 3D model processing device 300 generates 3D mesh data including 2D mesh data obtained from contour data as a first face and a second face spaced apart from the first face by a predetermined depth value. It can be generated as text data 530.

본 개시의 실시예는 도 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 model processing device 300 according to an embodiment generates a random vertex between the outer closed loop and the inner closed loop of the contour data 510, and generates 2D mesh data 520 based on the random vertex. ) can be created. The 3D model processing device 300 may generate 3D text data by applying a predetermined depth value to the 2D mesh data 520 . The 3D model processing device 300 generates a line from an arbitrary vertex in the direction of the normal vector of the 2D mesh data 520 or in the opposite direction of the normal vector, and determines whether the generated line intersects the 3D model. Based on this, it can be determined whether 3D text data and 3D model can be combined.

윤곽선 데이터로부터 생성된 2차원 메쉬 데이터를 포함하는 제1 면(531)의 정점들을 제1 정점들(또는, 전면(front) 정점들)이라고 지칭하고, 제1 정점들로부터 소정 깊이 값이 적용된 제2 면(532)에 포함되는 정점들을 제2 정점들(또는, 후면(back) 정점들)이라고 지칭할 수 있다. Vertices of the first surface 531 including two-dimensional mesh data generated from contour data are referred to as first vertices (or front vertices), and a predetermined depth value is applied from the first vertices. Vertices included in side 2 532 may be referred to as second vertices (or back vertices).

도 5a 내지 5c에는 문자 'a'에 대한 3차원 텍스트 데이터를 생성하는 경우를 예로 들어 설명하였으나, 본 개시는 도시된 예에 제한되지 않는다. 3차원 모델 처리 장치(300)는, 다양한 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. 또한, 3차원 모델 처리 장치(300)는, 사용자에 의해 복수의 문자들을 포함하는 문자열이 입력되는 경우, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트를 획득할 수 있다.5A to 5C illustrate the case of generating 3D text data for the letter 'a' as an example, but the present disclosure is not limited to the example shown. The 3D model processing device 300 can acquire 3D text data corresponding to various characters. Additionally, when a string containing a plurality of characters is input by a user, the 3D model processing device 300 may obtain a 3D text data set corresponding to the plurality of characters.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터가 획득되면, 3차원 모델을 포함하는 3차원 공간 내에서 3차원 텍스트 데이터가 배치될 위치를 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자 입력에 기초하여, 또는, 3차원 모델의 일부 영역 중에서 가장 돌출된 것으로 검색된 영역에 기초하여, 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 그리고, 3차원 모델 처리 장치(300)는, 3차원 모델의 위치를 기준으로 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.When 3D text data is acquired, the 3D model processing device 300 according to an embodiment may determine a location where the 3D text data will be placed within a 3D space including the 3D model. The 3D model processing device 300 according to an embodiment may generate an X-axis coordinate value of 3D text data and The Y-axis coordinate value can be determined. Additionally, the 3D model processing device 300 may determine the Z-axis coordinate value of the 3D text data based on the position of the 3D model.

이하, 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 model processing device 300 according to an embodiment may align 3D text data on the 3D model according to the following process.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 복수의 문자들을 포함하는 문자열을 입력하는 사용자 입력을 수신하고, 문자열에 대응하는 3차원 텍스트 데이터 세트를 획득할 수 있다. 3차원 모델 처리 장치(300)는, 복수의 문자들 중에서 기준 문자, 또는 복수의 문자들의 중앙에 위치하는 것으로 판단되는 기준 점을 선택할 수 있다.The 3D model processing device 300 according to an embodiment may receive a user input of inputting a string containing a plurality of characters and obtain a 3D text data set corresponding to the string. The 3D model processing device 300 may select a reference character from among a plurality of characters, or a reference point determined to be located in the center of the plurality of characters.

예를 들어, 3차원 모델 처리 장치(300)는, 문자열 “ABCDE”에 대응하는 3차원 텍스트 데이터 세트를 획득하고, 문자열 “ABCDE” 중에서 중앙에 위치한 문자 “C”를 기준 문자로서 선택할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 문자열 “ABCD”에 대응하는 3차원 텍스트 데이터 세트를 획득하고, 문자열 “ABCD” 중에서 중앙에 위치한 문자 “B” 또는 문자 “C”를 기준 문자로서 선택할 수 있다.For example, the 3D model processing device 300 may obtain a 3D text data set corresponding to the string “ABCDE” and select the centrally located character “C” from the string “ABCDE” as a reference character. For example, the 3D model processing device 300 acquires a 3D text data set corresponding to the string “ABCD” and uses the letter “B” or the letter “C” located in the center of the string “ABCD” as a reference character. You can choose as .

또는, 3차원 모델 처리 장치(300)는, 문자열에 대응하는 3차원 텍스트 데이터 세트를 하나의 메쉬 데이터로서 결정하고, 결정된 메쉬 데이터의 중앙에 위치하는 것으로 판단되는 점을 기준점으로서 설정할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 문자열 “ABCD”에 대응하는 3차원 텍스트 데이터 세트를 획득하고, 문자열 “ABCD” 중에서 문자 “B” 및 문자 “C” 사이의 중앙에 위치한 점을 기준점으로 설정할 수 있다.Alternatively, the 3D model processing device 300 may determine a 3D text data set corresponding to a string as one piece of mesh data, and set a point determined to be located in the center of the determined mesh data as a reference point. For example, the 3D model processing device 300 obtains a 3D text data set corresponding to the string “ABCD” and selects a point located at the center between the letter “B” and the letter “C” in the string “ABCD”. can be set as a reference point.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 화면 상의 소정 위치를 선택하는 사용자 입력(예를 들어, 화면 상의 소정 위치를 클릭하는 사용자의 입력 등)을 수신하고, 화면 상의 소정 위치에 대응하는 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 3차원 모델 처리 장치(300)는, X축 좌표값 및 Y축 좌표값에 의해 결정된 기준점을 기준으로 가상의 선을 3차원 모델에 조사함으로써, 3차원 모델의 표면 상에서 기준점으로부터 가장 가까운 포인트를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 기준 문자에 대응하는 3차원 텍스트 데이터의 포인트가 부착되도록, 또는, 3차원 모델 상에서 식별된 포인트에 3차원 텍스트 데이터 세트의 기준점이 부착되도록, 3차원 텍스트 데이터 세트를 3차원 모델에 인접하여 위치 정렬할 수 있다.The 3D model processing device 300 according to an embodiment receives a user input for selecting a predetermined position on the screen (for example, a user input for clicking a predetermined position on the screen, etc.), and places a user input on a predetermined position on the screen. The corresponding X-axis coordinate value and Y-axis coordinate value can be determined. The 3D model processing device 300 identifies the point closest to the reference point on the surface of the 3D model by irradiating an imaginary line to the 3D model based on a reference point determined by the X-axis coordinate value and the Y-axis coordinate value. can do. The 3D model processing device 300 attaches a point of 3D text data corresponding to a reference character to a point identified on the 3D model, or attaches a reference point of the 3D text data set to a point identified on the 3D model. To achieve this, the three-dimensional text data set can be positioned adjacent to the three-dimensional model.

다른 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 화면 상에 디스플레이 되고 있는 3차원 공간 내의 3차원 모델에 Z축 방향으로 복수의 가상의 선들을 조사할 수 있다. 3차원 모델 처리 장치(300)는, 복수의 가상의 선들을 3차원 모델에 조사함으로써, 3차원 모델의 표면 상에서 화면으로부터 가장 가까운 포인트(즉, 3차원 모델의 표면 상에서 가장 돌출된 포인트)를 식별할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에서 식별된 포인트에 기준 문자에 대응하는 3차원 텍스트 데이터의 포인트가 부착되도록, 또는, 3차원 모델 상에서 식별된 포인트에 3차원 텍스트 데이터 세트의 기준점이 부착되도록, 3차원 텍스트 데이터 세트를 3차원 모델에 인접하여 위치 정렬할 수 있다.The 3D model processing device 300 according to another embodiment may radiate a plurality of virtual lines in the Z-axis direction to the 3D model in the 3D space displayed on the screen. The 3D model processing device 300 identifies the point closest to the screen on the surface of the 3D model (i.e., the most protruding point on the surface of the 3D model) by examining a plurality of virtual lines on the 3D model. can do. The 3D model processing device 300 attaches a point of 3D text data corresponding to a reference character to a point identified on the 3D model, or attaches a reference point of the 3D text data set to a point identified on the 3D model. To achieve this, the three-dimensional text data set can be positioned adjacent to the three-dimensional model.

예를 들어, 사용자의 구강 내부를 나타내는 치아 모델은, 치아 및 치은을 나타내는 구강 영역과 구강 영역을 받치는 베이스 영역을 포함할 수 있다. 일반적으로 치아 모델의 경우, 구강 영역에 비해 베이스 영역이 돌출되게 되므로, 3차원 모델 처리 장치(300)는, 사용자가 텍스트를 입력하면, 상대적으로 돌출된 베이스 영역을 검색하고, 입력된 텍스트에 대응하는 3차원 텍스트 데이터 세트를 검색된 베이스 영역 상에 자동으로 위치 정렬 할 수 있다.For example, a tooth model representing the inside of a user's oral cavity may include an oral region representing teeth and gingiva and a base region supporting the oral region. Generally, in the case of a tooth model, the base area protrudes compared to the oral area, so when the user inputs text, the 3D model processing device 300 searches for a relatively protruding base area and responds to the input text. 3D text data sets can be automatically aligned on the searched base area.

한편, 일 실시예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델을 세그멘테이션 할 수 있다. 3차원 모델 처리 장치(300)는 템플릿을 사용하거나 인공지능 등을 사용하여, 적어도 하나의 치아에 대응하는 영역, 치은에 대응하는 영역, 및/또는 베이스 영역으로 3차원 모델을 분리할 수 있다. 3차원 모델에 있어서, 구강을 나타내는 영역(예를 들어, 치아 영역 및/또는 치은 영역)은 입력된 텍스트로 인해서 변형되면 안되는 중요한 영역이다. 따라서, 사용자에 의해 입력된 텍스트는, 구강을 나타내는 영역이 아닌 베이스 영역에 추가되는 것이 바람직할 수 있다. Meanwhile, the 3D model processing device 300 according to an embodiment can segment a 3D model. The 3D model processing device 300 may use a template or artificial intelligence to separate the 3D model into an area corresponding to at least one tooth, an area corresponding to the gingiva, and/or a base area. In a 3D model, the area representing the oral cavity (eg, tooth area and/or gingival area) is an important area that should not be deformed due to input text. Accordingly, it may be desirable for text entered by the user to be added to the base area rather than the area representing the oral cavity.

따라서, 일 실시예에 따른 3차원 모델 처리 장치(300)는, 세그멘테이션에 의해 식별된 각 치아를 기준으로 일정 거리 내에는 텍스트가 추가되지 않도록 하는 락킹(Locking) 기능을 설정할 수 있다. 락킹 기능이 활성화되면, 3차원 모델 처리 장치(300)는, 사용자에 의해 입력된 텍스트가 3차원 모델 상에서 설정된 영역 이외의 영역에 위치할 수 있도록 텍스트를 자동 위치 정렬할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 사용자에 의해 입력된 텍스트가 구강 영역 이외의 영역, 즉, 베이스 영역에 위치할 수 있도록 텍스트를 자동 위치 정렬할 수 있다.Accordingly, the 3D model processing device 300 according to one embodiment may set a locking function to prevent text from being added within a certain distance based on each tooth identified by segmentation. When the locking function is activated, the 3D model processing device 300 may automatically align the text entered by the user so that it is located in an area other than the set area on the 3D model. For example, the 3D model processing device 300 may automatically align the text so that the text input by the user can be located in an area other than the oral cavity area, that is, the base area.

한편, 3차원 텍스트 데이터와 3차원 모델이 잘 결합되기 위해서는, 3차원 텍스트 데이터의 제2 면의 정점들이 3차원 모델의 표면(즉, 3차원 모델의 표면에 위치한 메쉬 또는 정점)과 맞닿아야 한다. 그러나, 3차원 모델의 표면이 평평하지 않은 경우, 3차원 텍스트 데이터의 제2 면의 정점들의 일부가 3차원 모델과 접촉하더라도, 제2 정점들의 나머지 일부는 3차원 모델과 접촉하지 않을 수 있다. Meanwhile, in order for 3D text data and 3D model to be well combined, the vertices of the second side of the 3D text data must contact the surface of the 3D model (i.e., the mesh or vertices 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 portions of the second vertices may not contact the 3D model.

따라서, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델과의 결합을 위한 오프셋을 3차원 텍스트 데이터에 적용할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면의 정점들로부터 오프셋만큼 이동된 가상의 정점들을 설정함으로써, 3차원 텍스트 데이터에 오프셋을 적용할 수 있다. Accordingly, the 3D model processing device 300 according to an embodiment may apply an offset for combining with a 3D model to 3D text data. The 3D model processing device 300 may apply an offset to 3D text data by setting virtual vertices that are moved by an offset from the vertices of the second side of the 3D text data.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제2 면의 노멀 벡터의 방향으로, 또는 제2 면의 노멀 벡터의 반대 방향으로 제2 면 정점들을 이동시킴으로써 가상의 제3 정점들을 설정할 수 있다. 3차원 모델 처리 장치(300)는, 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단하고 판단 결과를 화면 상에 표시할 수 있다. The 3D model processing device 300 according to an embodiment moves the second face vertices in the direction of the normal vector of the second face of the 3D text data or in the opposite direction to the normal vector of the second face, thereby creating a virtual Third vertices can be set. The 3D model processing device 300 determines whether the 3D text data and the 3D model can be combined, based on whether the 3D text data to which the offset is applied and the 3D model intersect, and displays the determination result on the screen. You can.

도 6a는 일 실시 예에 따른 3차원 모델 처리 장치가 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부를 판단하는 방법을 설명한다.FIG. 6A explains how a 3D model processing device determines whether offset-applied 3D text data and a 3D model intersect, according to an embodiment.

도 6a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 3차원 텍스트 데이터(611, 631)가 3차원 모델(605)의 외부에 위치하도록 3차원 텍스트 데이터(611, 631)의 위치를 결정할 수 있다.As shown in FIG. 6A, the 3D model processing device 300 according to an embodiment processes the 3D text data 611 and 631 into the 3D model ( The location of the 3D text data 611 and 631 may be determined to be located outside of 605.

도 6a에서, 3차원 텍스트 데이터(611)는, 적어도 하나의 문자에 대응하는 윤곽선 데이터로부터 생성된 2차원 메쉬 데이터를 제1 면(611a)으로서 포함하고, 제1 면으로부터 소정 깊이 값(601)만큼 이격된 제2 면(611b)을 포함할 수 있다.In FIG. 6A, three-dimensional text data 611 includes two-dimensional mesh data generated from outline data corresponding to at least one character as a first face 611a, and has a predetermined depth value 601 from the first face. It may include a second surface 611b spaced apart from each other.

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 model processing device 300 moves the second vertices included in the second side 611b of the 3D text data 611 by a predetermined offset in order to obtain 3D text data to which the offset 602 is applied. You can do it. The 3D model processing device 300 may determine lines connecting the first vertices of the first side 611a of the 3D text data and the moved second vertices. The 3D model processing device 300 may determine whether lines intersect with the surface of the 3D model. When the mesh or vertex of the surface of the 3D model is located on a line that uses the first vertex as the starting point and the second vertex moved by the offset as the end point, the line and the 3D model It can be judged that the surfaces of intersect.

3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(611a)의 제1 정점들과 오프셋(602)만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단 할 수 있다. 3차원 모델 처리 장치(300)는, 판단 결과에 기초하여 3차원 텍스트 데이터(611)와 3차원 모델(605)이 결합 가능한 지를 판단할 수 있다.The 3D model processing device 300 selects the surface of the 3D model and It can be determined whether the number of intersecting lines is greater than the reference value. The 3D model processing device 300 may determine whether the 3D text data 611 and the 3D model 605 can be combined based on the determination result.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 1개 이상의 라인들이 3차원 모델(605)의 표면과 교차하지 않으므로, 3차원 텍스트 데이터(611)가 3차원 모델(605)과 결합 가능하지 않다고 판단할 수 있다. In the 3D model processing device 300 according to an embodiment, one or more lines do not intersect the surface of the 3D model 605, so 3D text data 611 can be combined with the 3D model 605. You can judge that it is not done.

반면에, 도 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 3D text data 631 may include a first side 631a and a second side 631b. The 3D model processing device 300 may determine lines connecting first vertices of the first side 631a of the 3D text data and second vertices moved by a predetermined offset. The 3D model processing device 300 selects the surface of the 3D model and It can be determined whether the number of intersecting lines is greater than the reference value.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 모든 라인들이 3차원 모델(605)의 표면과 교차하므로, 3차원 텍스트 데이터(631)가 3차원 모델(605)과 결합 가능하다고 판단할 수 있다.The 3D model processing device 300 according to an embodiment determines that the 3D text data 631 can be combined with the 3D model 605 because all lines intersect the surface of the 3D model 605. You can.

도 6b는 일 실시 예에 따른 3차원 모델 처리 장치가 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부를 판단하는 방법을 설명한다.FIG. 6B explains how a 3D model processing device determines whether offset-applied 3D text data and a 3D model intersect, according to an embodiment.

도 6b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 음각으로 입력되는 경우, 3차원 텍스트 데이터(661, 681)가 3차원 모델(605)의 내부에 위치하도록 3차원 텍스트 데이터(661, 681)의 위치를 결정할 수 있다.As shown in FIG. 6B, the 3D model processing device 300 according to an embodiment, when text is input as an engraving on the 3D model, 3D text data 661 and 681 are converted into a 3D model ( The positions of the 3D text data 661 and 681 may be determined to be located inside 605).

도 6b에서, 3차원 텍스트 데이터(661)는, 적어도 하나의 문자에 대응하는 윤곽선 데이터로부터 생성된 2차원 메쉬 데이터를 제1 면(661a)으로서 포함하고, 제1 면으로부터 소정 깊이 값(601)만큼 이격된 제2 면(661b)을 포함할 수 있다.In FIG. 6B, three-dimensional text data 661 includes two-dimensional mesh data generated from outline data corresponding to at least one character as a first face 661a, and has a predetermined depth value 601 from the first face. It may include a second surface 661b spaced apart from each other.

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 model processing device 300 moves the second vertices included in the second side 661b of the 3D text data 661 by a predetermined offset in order to obtain 3D text data to which the offset 602 is applied. You can do it. The 3D model processing device 300 may determine lines connecting the first vertices of the first side 661a of the 3D text data and the moved second vertices. The 3D model processing device 300 may determine whether lines intersect with the surface of the 3D model. When the mesh or vertex of the surface of the 3D model is located on a line that uses the first vertex as the starting point and the second vertex moved by the offset as the end point, the line and the 3D model It can be judged that the surfaces of intersect.

3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면(661a)의 제1 정점들과 오프셋(602)만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 값 이상인 지 여부를 판단 할 수 있다. 3차원 모델 처리 장치(300)는, 판단 결과에 기초하여 3차원 텍스트 데이터(661)와 3차원 모델(605)이 결합 가능한 지를 판단할 수 있다.The 3D model processing device 300 selects the surface of the 3D model and It can be determined whether the number of intersecting lines is greater than the reference value. The 3D model processing device 300 may determine whether the 3D text data 661 and the 3D model 605 can be combined based on the determination result.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 1개 이상의 라인들이 3차원 모델(605)의 표면과 교차하지 않으므로, 3차원 텍스트 데이터(661)가 3차원 모델(605)과 결합 가능하지 않다고 판단할 수 있다. In the 3D model processing device 300 according to an embodiment, one or more lines do not intersect the surface of the 3D model 605, so 3D text data 661 can be combined with the 3D model 605. You can judge that it is not done.

반면에, 도 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 first side 681a and a second side 681b. The 3D model processing device 300 may determine lines connecting first vertices of the first side 681a of the 3D text data and second vertices moved by a predetermined offset. The 3D model processing device 300 selects the surface of the 3D model and It can be determined whether the number of intersecting lines is greater than the reference value.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 모든 라인들이 3차원 모델(605)의 표면과 교차하므로, 3차원 텍스트 데이터(681)가 3차원 모델(605)과 결합 가능하다고 판단할 수 있다.The 3D model processing device 300 according to an embodiment determines that the 3D text data 681 can be combined with the 3D model 605 because all lines intersect the surface of the 3D model 605. You can.

도 6a 및 도 6b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 각 문자에 대응하는 3차원 텍스트 데이터 별로 3차원 모델과의 결합 가능 여부를 판단할 수 있다. 따라서, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자가 입력하고자 하는 문자열에 대응하는 3차원 텍스트 데이터 세트 중에서 어떠한 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합되지 않는지를 표시할 수 있다. 따라서, 사용자는, 문자열에 포함된 문자들 중에서 문제가 되는 문자를 직관적으로 확인하고, 문자열을 수정할 수 있다. 또는 사용자는, 3차원 모델 상에서 문자열 입력이 적합한 영역을 빠르고 정확하게 찾을 수 있다.As shown in FIGS. 6A and 6B, the 3D model processing device 300 according to an embodiment may determine whether 3D text data corresponding to each character can be combined with a 3D model. Therefore, the 3D model processing device 300 according to an embodiment determines which 3D text data corresponding to a character among the 3D text data set corresponding to the string that the user wants to input is not combined with the 3D model. It can be displayed. Accordingly, the user can intuitively identify problematic characters among the characters included in the string and modify the string. Alternatively, the user can quickly and accurately find an area on the 3D model where string input is appropriate.

도 7a는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 상에 양각 방식으로 텍스트를 추가한 예를 도시한다. FIG. 7A shows an example in which a 3D model processing device adds text in an embossed manner on a 3D model, according to an embodiment.

도 7a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 3차원 텍스트 데이터 세트(711)가 3차원 모델(710)의 외부에 위치하도록 문자열에 대응하는 3차원 텍스트 데이터 세트(711)의 위치를 결정할 수 있다. As shown in FIG. 7A, the 3D model processing device 300 according to an embodiment, when text is input in relief on the 3D model, the 3D text data set 711 is converted into a 3D model 710. ) The location of the three-dimensional text data set 711 corresponding to the string can be determined to be located outside of ).

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델(710) 상에 3차원 텍스트 데이터 세트(711)를 위치 정렬할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(711)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들(또는, 전면(front) 정점들)을 시작점들로서 포함하고, 소정 깊이 값 및 오프셋만큼 이동된 제2 정점들(또는, 후면(back) 정점들)을 끝점들로서 포함하는 3차원 메쉬 데이터를 3차원 모델 상에 결합할 수 있다. The 3D model processing device 300 according to an embodiment may align the 3D text data set 711 on the 3D model 710. The 3D model processing device 300 uses the vertices (or front vertices) of the first side of the 3D text data corresponding to each character included in the 3D text data set 711 as starting points. 3D mesh data including second vertices (or back vertices) moved by a predetermined depth value and offset as end points may be combined on a 3D model.

3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델(710)의 표면과 교차하는 위치들을 기초로 3차원 텍스트 데이터의 후면(back) 정점들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(711)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들을 시작점들로서 포함하고, 3차원 모델(710)과의 교차 위치들을 기초로 새롭게 결정된 후면 정점들을 끝점들로서 포함하는 3차원 메쉬 데이터를 획득할 수 있다.The 3D model processing device 300 uses the positions where lines connecting the first vertices of the first side of the 3D text data and the second vertices moved by the offset intersect the surface of the 3D model 710 based on the positions. You can determine the back vertices of 3D text data. The 3D model processing device 300 includes vertices of the first side of the 3D text data corresponding to each character included in the 3D text data set 711 as starting points, and Three-dimensional mesh data including newly determined rear vertices as end points can be obtained based on the intersection positions.

3차원 모델 처리 장치(300)는, 획득된 3차원 메쉬 데이터를 3차원 모델에 결합함으로써, 3차원 모델 상에 텍스트를 추가할 수 있다.The 3D model processing device 300 may add text to the 3D model by combining the acquired 3D mesh data with the 3D model.

도 7b는 일 실시 예에 따른 3차원 모델 처리 장치가 3차원 모델 내에 음각 방식으로 텍스트를 추가한 예를 도시한다.FIG. 7B shows an example in which a 3D model processing device according to an embodiment adds text in an engraving manner to a 3D model.

도 7b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트가 음각으로 입력되는 경우, 3차원 텍스트 데이터 세트(721)가 3차원 모델(720)의 내부에 위치하도록 문자열에 대응하는 3차원 텍스트 데이터 세트(721)의 위치를 결정할 수 있다. As shown in FIG. 7B, in the 3D model processing device 300 according to an embodiment, when text is input engraved on the 3D model, the 3D text data set 721 is converted into the 3D model 720. ) The location of the three-dimensional text data set 721 corresponding to the string can be determined to be located inside.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델(720) 내에 3차원 텍스트 데이터 세트(721)를 위치 정렬할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(721)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들을 시작점들로서 포함하고, 소정 깊이 값 및 오프셋만큼 이동된 제2 정점들을 끝점들로서 포함하는 3차원 메쉬 데이터를 획득할 수 있다.The 3D model processing device 300 according to an embodiment may align the 3D text data set 721 within the 3D model 720. The 3D model processing device 300 includes vertices of the first side of the 3D text data corresponding to each character included in the 3D text data set 721 as starting points, and moves the vertices by a predetermined depth value and offset. Three-dimensional mesh data including second vertices as end points may be obtained.

3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델(720)의 표면과 교차하는 위치들을 기초로 3차원 텍스트 데이터의 후면(back) 정점들을 결정할 수 있다. 3차원 모델 처리 장치(300)는, 3 차원 텍스트 데이터 세트(721)에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터의 제1 면의 정점들을 시작점들로서 포함하고, 3차원 모델(720)과의 교차 위치들을 기초로 새롭게 결정된 후면 정점들을 끝점들로서 포함하는 3차원 메쉬 데이터를 획득할 수 있다.The 3D model processing device 300 uses the positions where lines connecting the first vertices of the first side of the 3D text data and the second vertices shifted by the offset intersect the surface of the 3D model 720 based on the positions. You can determine the back vertices of 3D text data. The 3D model processing device 300 includes vertices of the first side of the 3D text data corresponding to each character included in the 3D text data set 721 as starting points, and Three-dimensional mesh data including newly determined rear vertices as end points can be obtained based on the intersection positions.

3차원 모델 처리 장치(300)는, 획득된 3차원 메쉬 데이터를 3차원 모델(720)로부터 삭제함으로써, 3차원 모델 상에 텍스트를 추가할 수 있다.The 3D model processing device 300 may add text to the 3D model by deleting the acquired 3D mesh data from the 3D model 720 .

도 8a 및 도 8b는 일 실시 예에 따른 3차원 모델 처리 장치가 디스플레이 하는 화면의 예를 도시한다.FIGS. 8A and 8B show examples of screens displayed by a 3D model processing device according to an embodiment.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델(810) 상에 3차원 텍스트 데이터 세트(811)를 위치 정렬할 수 있다. The 3D model processing device 300 according to an embodiment may align the 3D text data set 811 on the 3D model 810.

도 8a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트(811)가 3차원 모델(810) 상에 잘 결합되어 있는 지 여부를 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 복수의 문자들 각각에 대응하는 3차원 텍스트 데이터가 3차원 모델(810) 상에 잘 결합되어 있는 지 여부를 판단할 수 있다. As shown in FIG. 8A, in the 3D model processing device 300 according to an embodiment, the 3D text data set 811 corresponding to a plurality of characters is well combined on the 3D model 810. You can determine whether it exists or not. The 3D model processing device 300 determines whether the 3D text data corresponding to each of the plurality of characters included in the 3D text data set 811 is well combined on the 3D model 810. can do.

3차원 모델 처리 장치(300)는, 각 문자를 나타내는 3차원 텍스트 데이터에 오프셋을 적용하고, 오프셋이 적용된 3차원 텍스트 데이터가 3차원 모델(810)과 교차하는 지 여부에 기초하여, 3차원 텍스트 데이터가 3차원 모델(810) 상에 잘 결합되어 있는 지 여부를 판단할 수 있다.The 3D model processing device 300 applies an offset to 3D text data representing each character, and based on whether the 3D text data to which the offset is applied intersects the 3D model 810, the 3D text It can be determined whether the data is well combined on the 3D model 810.

3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지 여부에 기초하여, 화면 상에 표시되는 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.The 3D model processing device 300 determines the color of the 3D text data displayed on the screen based on whether the 3D model can be combined with the 3D text data included in the 3D text data set 811, At least one of shape or brightness can be determined.

예를 들어, 도 8a에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 모든 3차원 텍스트 데이터가 3차원 모델(810)과 결합 가능하다고 판단하고 모든 3차원 텍스트 데이터의 색을 제1 색(예를 들어, 파란색)으로 결정할 수 있다.For example, as shown in FIG. 8A, the 3D model processing device 300 according to an embodiment processes all 3D text data included in the 3D text data set 811 into the 3D model 810. It is determined that it can be combined with and the color of all 3D text data can be determined as the first color (for example, blue).

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 사용자 입력에 기초하여, 3차원 텍스트 데이터 세트(811)를 다른 위치로 이동할 수 있다.The 3D model processing device 300 according to an embodiment may move the 3D text data set 811 to another location based on user input.

도 8b에 도시된 바와 같이, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)를 위쪽 방향으로 이동할 수 있다.As shown in FIG. 8B, the 3D model processing device 300 according to one embodiment may move the 3D text data set 811 in an upward direction.

3차원 텍스트 데이터 세트(811)의 위치가 이동함에 따라, 문자 “l”과 문자 “d”에 대응하는 3차원 텍스트 데이터(813, 815)의 상단 끝 부분이 3차원 모델(810)과 접촉하지 않게 될 수 있다. As the position of the three-dimensional text data set 811 moves, the upper ends of the three-dimensional text data 813 and 815 corresponding to the letter “l” and the letter “d” do not contact the three-dimensional model 810. It may not happen.

따라서, 3차원 텍스트 데이터 세트(811)의 위치가 이동함에 따라, 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트(811)에 포함되는 일부 3차원 텍스트 데이터(813, 815)가 3차원 모델(820)과 결합 가능하지 않다고 판단할 수 있다. Therefore, as the location of the 3D text data set 811 moves, the 3D model processing device 300 according to an embodiment may process some 3D text data 813 included in the 3D text data set 811. , 815) may be determined not to be combinable with the 3D model 820.

3차원 모델 처리 장치(300)는, 복수의 문자들에 대응하는 3차원 텍스트 데이터 세트(811) 중에서 일부 문자들에 대응하는 3차원 텍스트 데이터(813, 815)가, 오프셋을 적용하더라도 3차원 모델(820)과 교차하지 않는다고 판단할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터(813, 815)가 3차원 모델(810)과 결합 가능하지 않는 다는 판단에 기초하여, 3차원 텍스트 데이터(813, 815)의 색상을 상이하게 표시할 수 있다. The 3D model processing device 300 allows 3D text data 813 and 815 corresponding to some characters among the 3D text data set 811 corresponding to a plurality of characters to be used as a 3D model even if an offset is applied. It can be determined that it does not intersect with (820). The 3D model processing device 300 changes the colors of the 3D text data 813 and 815 differently based on the determination that the 3D text data 813 and 815 cannot be combined with the 3D model 810. It can be displayed as follows.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 일부 3차원 텍스트 데이터(813, 815)의 색을 제2 색(예를 들어, 주황색)으로 결정할 수 있다. 예를 들어, 3차원 모델 처리 장치(300)는, 3차원 모델 상에 잘 결합되는 것으로 판단되는 3차원 텍스트 데이터는 파란색으로 표시하고, 3차원 모델 상에 잘 결합되지 않는다고 판단되는 3차원 텍스트 데이터는 주황색으로 표시할 수 있다.The 3D model processing device 300 according to an embodiment may determine the color of some 3D text data 813 and 815 to be a second color (eg, orange). For example, the 3D model processing device 300 displays 3D text data determined to be well combined on the 3D model in blue, and displays 3D text data determined to be poorly combined on the 3D model. can be displayed in orange.

도 8b에는 결합 가능하지 않다고 판단되는 3차원 텍스트 데이터의 색만을 변경하는 경우를 예로 들어 도시하였으나, 본 개시의 다양한 실시 예들은 도 8a 및 도 8b에 도시된 예에 제한되지 않는다. 구현에 따라서 다양한 방식을 통해, 3차원 텍스트 데이터가 3차원 모델에 결합 가능한 지 여부에 대한 정보가 제공될 수 있다. Although FIG. 8B shows an example of changing only the color of 3D text data that is determined not to be combinable, various embodiments of the present disclosure are not limited to the examples shown in FIGS. 8A and 8B. Depending on the implementation, information about whether 3D text data can be combined with a 3D model may be provided through various methods.

예를 들어, 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터 세트에 포함되는 적어도 일부 3차원 텍스트 데이터가 3차원 모델과 결합이 가능하지 않다고 판단되는 경우, 3차원 텍스트 데이터 세트에 포함되는 모든 3차원 텍스트 데이터의 색을 변경할 수 있다. 그리고, 3차원 모델 처리 장치(300)는, 결합이 가능하지 않다고 판단되는 적어도 일부 3차원 텍스트 데이터를 나머지 3차원 텍스트 데이터와 상이하게 표시할 수 있다. 예를 들어, 3 차원 모델 처리 장치(300)는, 결합이 가능하지 않다고 판단되는 적어도 일부 3차원 텍스트 데이터를 굵게(bold) 표시할 수 있다.For example, when the 3D model processing device 300 determines that at least some of the 3D text data included in the 3D text data set cannot be combined with the 3D model, the 3D model processing device 300 You can change the color of all 3D text data. Additionally, the 3D model processing device 300 may display at least some 3D text data that is determined to be uncombinable differently from the remaining 3D text data. For example, the 3D model processing device 300 may display in bold at least some 3D text data that is determined not to be combined.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 상술한 과정을 통해, 텍스트가 추가된 3차원 모델을 획득할 수 있다. The 3D model processing device 300 according to an embodiment may obtain a 3D model to which text is added through the above-described process.

도 9는 일 실시 예에 따른 3차원 모델 처리 장치가 출력하는 텍스트가 추가된 3차원 모델의 예를 도시한다.Figure 9 shows an example of a 3D model with text added output by a 3D model processing device according to an embodiment.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 경우, 텍스트가 추가된 3차원 모델을 획득할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델 상에 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합함으로써, 도 9에 도시된 바와 같이 텍스트가 추가된 3차원 모델을 획득할 수 있다.The 3D model processing device 300 according to an embodiment may obtain a 3D model to which text is added when 3D text data and a 3D model can be combined. The 3D model processing device 300 may obtain a 3D model with text added as shown in FIG. 9 by combining the 3D text data to which a predetermined offset is applied to the 3D model.

일 실시 예에 따른 3차원 모델 처리 장치(300)는, 3차원 모델 상에 텍스트를 추가함에 있어서, 추가되는 문자 별로 해당 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합 가능한 지 여부를 판단하여 표시할 수 있다. When adding text to a 3D model, the 3D model processing device 300 according to an embodiment determines for each added character whether the 3D text data corresponding to the character can be combined with the 3D model. It can be displayed as follows.

더 나아가, 일 실시 예에 따른 3차원 모델 처리 장치(300)는 사용자가 입력한 문자에 대응하는 3차원 텍스트 데이터가 3차원 모델과 결합 가능하지 않은 경우, 결합 가능하지 않다는 정보를 표시할 뿐만 아니라, 사용자가 입력한 문자가 3차원 모델에 추가되지 않도록 할 수 있다. 따라서, 사용자는, 3차원 모델과 결합 가능한 위치에 3차원 텍스트 데이터를 추가하기 위해서, 문자를 다시 입력하거나 3차원 텍스트 데이터의 위치를 변경할 수 있다. 3차원 모델 처리 장치(300)는, 3차원 모델과 결합이 불가능한 텍스트의 경우 추가되지 않도록 하여, 3차원 모델(320)에 대응되는 부분으로부터 3차원 텍스트 데이터(321)에 대응하는 부분의 적어도 일부가 분리되어 3차원 프린팅 되는 문제를 방지할 수 있다.Furthermore, the 3D model processing device 300 according to an embodiment not only displays information indicating that 3D text data corresponding to characters entered by the user cannot be combined with the 3D model, but also displays information indicating that 3D text data corresponding to characters entered by the user cannot be combined with the 3D model. , you can prevent characters entered by the user from being added to the 3D model. Accordingly, the user can re-enter characters or change the position of the 3D text data in order to add the 3D text data to a location that can be combined with the 3D model. The 3D model processing device 300 prevents text from being added if it cannot be combined with the 3D model, and extracts at least a portion of the portion corresponding to the 3D text data 321 from the portion corresponding to the 3D model 320. This can prevent the problem of 3D printing being separated.

도 10은 일 실시 예에 따른 3차원 모델 처리 장치의 블록도를 도시한다.Figure 10 shows a block diagram of a 3D model processing device according to an embodiment.

도 10에 도시된 3차원 모델 처리 장치(300)는, 본 개시의 다양한 실시 예들에 따른 3차원 모델 처리 방법을 수행할 수 있으며, 도 1 내지 도 9에 대한 설명이 적용될 수 있다. 따라서, 상술한 바와 중복되는 내용은 생략한다.The 3D model processing device 300 shown in FIG. 10 may perform a 3D model processing method according to various embodiments of the present disclosure, and the descriptions of FIGS. 1 to 9 may be applied. Therefore, content that overlaps with what was described above will be omitted.

일 실시 예에 따른 3차원 모델 처리 장치(300)는 3차원 스캔 장치 등의 외부 장치 또는 외부 서버와 유선 또는 무선 통신 네트워크를 통하여 연결되며, 대상체에 대한 3차원 모델을 획득할 수 있다.The 3D model processing device 300 according to one embodiment is connected to an external device such as a 3D scanning device or an external server through a wired or wireless communication network, and can obtain a 3D model of the object.

3차원 모델 처리 장치(300)는, 획득된 3차원 모델에 기초하여, 대상체에 대한 3차원 영상을 생성, 처리, 디스플레이 및/또는 전송할 수 있는 모든 전자 장치가 될 수 있다. 본 개시의 다양한 실시 예들에 따른 3차원 모델 처리 장치(300)는 고정형 단말이거나 이동형 단말일 수 있다. 3차원 모델 처리 장치(300)는, 예를 들어, 스마트 폰(smart phone), 랩탑 컴퓨터, 데스크탑 컴퓨터, PDA, 태블릿 PC 등의 컴퓨팅 장치가 될 수 있으며, 이에 한정되지 않는다.The 3D model processing device 300 may be any electronic device capable of generating, processing, displaying, and/or transmitting a 3D image of an object based on an acquired 3D model. The 3D model processing device 300 according to various embodiments of the present disclosure may be a fixed terminal or a mobile terminal. The 3D model processing device 300 may be, for example, a computing device such as a smart phone, laptop computer, desktop computer, PDA, or tablet PC, but is not limited thereto.

도 10을 참조하면, 3차원 모델 처리 장치(300)는 프로세서(310), 디스플레이(320), 통신 인터페이스(330), 사용자 입력부(340), 및 메모리(350)를 포함할 수 있다.Referring to FIG. 10 , the 3D model processing device 300 may include a processor 310, a display 320, a communication interface 330, a user input unit 340, and a memory 350.

일 실시 예에 따른 프로세서(310)는 적어도 하나의 인스트럭션을 수행하여, 의도하는 동작을 수행하도록 3차원 모델 처리 장치(300)를 제어한다. 적어도 하나의 인스트럭션은 프로세서(310) 내에 포함되는 내부 메모리(미도시) 또는 별도의 메모리(350) 내에 저장되어 있을 수 있다.The processor 310 according to one embodiment controls the 3D model processing device 300 to perform an intended operation by executing at least one instruction. At least one instruction may be stored in an internal memory (not shown) included in the processor 310 or in a separate memory 350.

일 실시 예에 따른 프로세서(310)는 적어도 하나의 인스트럭션을 수행하여, 의도하는 동작을 수행하도록 3차원 모델 처리 장치(300) 내부에 포함되는 적어도 하나의 구성들을 제어할 수 있다. 따라서, 프로세서(310)가 소정 동작을 수행하는 경우를 예로 들어 설명하더라도, 3차원 모델 처리 장치(300)에 포함하는 적어도 하나의 구성들이 소정 동작을 수행하도록 프로세서(310)가 적어도 하나의 구성들을 제어하는 것을 의미할 수 있다. The processor 310 according to an embodiment may control at least one component included in the 3D model processing device 300 to perform an intended operation by executing at least one instruction. Therefore, even if the case where the processor 310 performs a predetermined operation is explained as an example, the processor 310 may use at least one component included in the 3D model processing device 300 to perform the predetermined operation. It can mean controlling.

일 실시 예에 따른 프로세서(310)는 3차원 모델 처리 장치(300)의 외부에서부터 입력되는 신호 또는 데이터를 저장하거나, 3차원 모델 처리 장치(300)에서 수행되는 다양한 작업에 대응되는 저장 영역으로 사용되는 RAM(미도시), 3차원 모델 처리 장치(300)의 제어를 위한 제어 프로그램 및/또는 복수개의 인스트럭션이 저장된 ROM(미도시) 및 적어도 하나의 인스트럭션을 실행하는 적어도 하나의 내부의 프로세서(미도시)를 포함할 수 있다. The processor 310 according to one embodiment stores signals or data input from outside the 3D model processing device 300, or is used as a storage area corresponding to various tasks performed in the 3D model processing device 300. RAM (not shown), a ROM (not shown) storing a control program and/or a plurality of instructions for controlling the 3D model processing device 300, and at least one internal processor (not shown) executing at least one instruction. Poetry) may be included.

또한, 프로세서(310)는 비디오에 대응되는 그래픽 처리를 위한 그래픽 프로세서(Graphic Processing Unit, 미도시)를 포함할 수 있다. 또한, 프로세서(310)는 코어(core, 미도시)와 GPU(미도시)를 통합한 SoC(System On Chip)로 구현될 수 있다.Additionally, the processor 310 may include a graphics processor (Graphic Processing Unit, not shown) for graphics processing corresponding to video. Additionally, the processor 310 may be implemented as a System On Chip (SoC) that integrates a core (not shown) and a GPU (not shown).

개시된 실시 예에서, 프로세서(310)는 구강에 대한 3차원 모델을 렌더링함으로써 영상을 생성할 수 있다. 예를 들어, 3차원 모델은, 복수의 치아들, 치은, 및 인공 구조물 중 적어도 하나를 포함하는 구강의 표면 형상 정보를 포함할 수 있다.In the disclosed embodiment, the processor 310 may generate an image by rendering a three-dimensional model of the oral cavity. For example, the 3D model may include surface shape information of an oral cavity including at least one of a plurality of teeth, gingiva, and artificial structures.

디스플레이(320)는 프로세서(310)에 제어에 따라서 소정 화면을 디스플레이 할 수 있다. 구체적으로, 디스플레이(320)는 3차원 모델을 포함하는 사용자 인터페이스 화면을 디스플레이 할 수 있다. 또는, 디스플레이(320)는 대상체에 대한 진단 및 치료와 관련되는 정보를 포함하는 사용자 인터페이스 화면을 디스플레이 할 수 있다. The display 320 can display a predetermined screen according to control by the processor 310. Specifically, the display 320 may display a user interface screen including a 3D model. Alternatively, the display 320 may display a user interface screen including information related to diagnosis and treatment of the object.

통신 인터페이스(330)는 적어도 하나의 외부 전자 장치(미도시)또는 서버(미도시)와 유선 또는 무선 통신 네트워크를 통하여 통신을 수행할 수 있다. The communication interface 330 may communicate with at least one external electronic device (not shown) or a server (not shown) through a wired or wireless communication network.

사용자 입력부(340)는 3차원 모델 처리 장치(300)를 제어하기 위한 사용자 입력을 수신할 수 있다. 사용자 입력부(340)는 사용자의 터치를 감지하는 터치 패널, 사용자의 푸시 조작을 수신하는 버튼, 사용자 인터페이스 화면 상의 일 지점을 지칭 또는 선택하기 위한 마우스(mouse) 또는 키보드(key board) 등을 포함하는 사용자 입력 디바이스를 포함할 수 있으나 이에 제한되지 않는다.The user input unit 340 may receive user input for controlling the 3D model processing device 300. The user input unit 340 includes a touch panel that detects the user's touch, a button that receives the user's push operation, and a mouse or keyboard for indicating or selecting a point on the user interface screen. May include, but is not limited to, user input devices.

또한, 사용자 입력부(340)는 음성 인식을 위한 음성 인식 장치(미도시)를 포함할 수 있다. 예를 들어, 음성 인식 장치(미도시)는 마이크가 될 수 있으며, 음성 인식 장치는 사용자의 음성 명령 또는 음성 요청을 수신할 수 있다. 그에 따라서, 프로세서(310)는 음성 명령 또는 음성 요청에 대응되는 동작이 수행되도록 제어할 수 있다.Additionally, the user input unit 340 may include a voice recognition device (not shown) for voice recognition. For example, a voice recognition device (not shown) may be a microphone, and the voice recognition device may receive a user's voice command or voice request. Accordingly, the processor 310 may control the operation corresponding to the voice command or voice request to be performed.

메모리(350)는 프로세서(310)가 실행하는 적어도 하나의 인스트럭션을 저장할 수 있다. 또한, 메모리(350)는 프로세서(310)가 실행하는 적어도 하나의 프로그램을 저장하고 있을 수 있다. 메모리(350)는 외부 장치 또는 외부 서버로부터 수신되는 데이터(예를 들어, 대상체 스캔을 통하여 획득된 로우 데이터, 2차원 영상 데이터, 3차원 모델 등)를 저장할 수 있다. 메모리(350)는 대상체를 3차원적으로 나타내는 대상체 영상을 저장할 수 있다. The memory 350 may store at least one instruction executed by the processor 310. Additionally, the memory 350 may store at least one program that the processor 310 executes. The memory 350 may store data received from an external device or an external server (for example, raw data acquired through scanning an object, two-dimensional image data, three-dimensional model, etc.). The memory 350 may store an object image representing the object in three dimensions.

본 개시의 일 실시 예에 따른 프로세서(310)는, 메모리(350)에 저장된 프로그램을 실행함으로써 3차원 모델 처리 장치(300)의 전체적인 동작을 제어할 수 있다.The processor 310 according to an embodiment of the present disclosure can control the overall operation of the 3D model processing device 300 by executing a program stored in the memory 350.

프로세서(310)가 3차원 모델 상에 텍스트를 추가하는 구체적인 방법에 대해서는 도 4에 대한 설명이 적용될 수 있고 중복되는 설명은 생략한다.For the specific method by which the processor 310 adds text to the 3D model, the description of FIG. 4 can be applied and redundant description will be omitted.

일 실시 예에 따른 프로세서(310)는, 내부 메모리 또는 외부 디바이스로부터 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득할 수 있다. 프로세서(310)는, 적어도 하나의 문자를 입력하는 사용자 입력을 수신하고, 사용자 입력에 기초하여 적어도 하나의 문자를 나타내는 3차원 텍스트 데이터를 획득할 수 있다.The processor 310 according to one embodiment may obtain 3D text data corresponding to at least one character from an internal memory or an external device. The processor 310 may receive a user input of at least one character and obtain three-dimensional text data representing the at least one character based on the user input.

일 실시 예에 따른 프로세서(310)는, 적어도 하나의 문자에 대응하는 사용자 입력을 수신하고, 적어도 하나의 문자에 대응하는 윤곽선(contour) 데이터를 획득할 수 있다. 프로세서(310)는, 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 프로세서(310)는, 2차원 메쉬 데이터를 제1 면으로 포함하고, 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 3차원 텍스트 데이터로서 획득할 수 있다.The processor 310 according to one embodiment may receive a user input corresponding to at least one character and obtain contour data corresponding to the at least one character. The processor 310 may obtain two-dimensional mesh data by connecting a plurality of first vertices included in the outline data. The processor 310 may obtain 3D mesh data including 2D mesh data as a first surface and 3D mesh data including a second surface spaced apart from the first surface by a predetermined depth as 3D text data.

일 실시 예에 따른 프로세서(310)는, 사용자 입력부(340)을 통해, 복수의 문자들을 포함하는 제1 문자열에 대응하는 사용자 입력을 수신할 수 있다. 프로세서(310)는, 제1 문자열에 포함되는 각 문자에 대응하는 윤곽선 데이터를 획득할 수 있다. 프로세서(310)는, 각 문자에 대응하는 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득할 수 있다. 프로세서(310)는, 제1 문자열에 포함되는 각 문자에 대응하는 3차원 텍스트 데이터를 포함하는, 3차원 텍스트 데이터 세트를 획득할 수 있다.The processor 310 according to one embodiment may receive a user input corresponding to a first string including a plurality of characters through the user input unit 340. The processor 310 may obtain outline data corresponding to each character included in the first string. The processor 310 may obtain two-dimensional mesh data by connecting a plurality of first vertices included in the outline data corresponding to each character. The processor 310 may obtain a 3D text data set including 3D text data corresponding to each character included in the first string.

일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델을 화면 상에 표시하도록 디스플레이(320)를 제어할 수 있다.The processor 310 according to one embodiment may control the display 320 to display 3D text data and a 3D model on the screen.

일 실시 예에 따른 프로세서(310)는, 3차원 모델을 렌더링 하여 디스플레이(320)의 화면 상에 표시할 수 있다. 프로세서(310)는, 3차원 모델이 표시된 화면 상에, 사용자에 의해 입력된 적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 추가로 표시하도록 디스플레이(320)를 제어할 수 있다.The processor 310 according to one embodiment may render a 3D model and display it on the screen of the display 320. The processor 310 may control the display 320 to additionally display 3D text data corresponding to at least one character input by the user on the screen on which the 3D model is displayed.

일 실시 예에 따른 프로세서(310)는, 사용자 입력 또는 3차원 텍스트 데이터로부터 3차원 모델의 표면까지의 거리 중 적어도 하나에 기초하여, 3차원 공간 내에서 3차원 텍스트 데이터가 배치될 위치를 결정할 수 있다. 일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터의 X축 좌표값 및 Y축 좌표값을 결정할 수 있다. 일 실시 예에 따른 3차원 모델 처리 장치(300)는, 결정된 X축 좌표값 및 Y축 좌표값에 기초하여, 3차원 모델에 근접하여 위치하도록 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The processor 310 according to one embodiment may determine a position in the 3D space where the 3D text data will be placed based on at least one of a user input or a distance from the 3D text data to the surface of the 3D model. there is. The processor 310 according to one embodiment may determine the X-axis coordinate value and Y-axis coordinate value of 3D text data. The 3D model processing device 300 according to an embodiment may determine the Z-axis coordinate value of the 3D text data to be located close to the 3D model, based on the determined X-axis coordinate value and Y-axis coordinate value. .

일 실시 예에 따른 프로세서(310)는, 3차원 모델 상에 텍스트가 양각으로 입력되는 지 또는 음각으로 입력되는 지 여부에 기초하여 3차원 텍스트 데이터의 Z축 좌표값을 결정할 수 있다.The processor 310 according to one embodiment may determine the Z-axis coordinate value of the 3D text data based on whether the text is input in embossing or engraving on the 3D model.

일 예로서, 3차원 모델 상에 텍스트가 양각으로 입력되는 경우, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 외부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 프로세서(310)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As an example, when text is input in relief on a 3D model, the processor 310 positions the 3D text data so that the first and second sides of the 3D text data are located outside the 3D model. can be decided. The processor 310 may determine the position of the 3D text data where the sum of the vertical distances from the vertices included in the second side of the 3D text data to the surface of the 3D model is minimum.

다른 예로서, 3차원 모델 내에 텍스트가 음각으로 입력되는 경우, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면과 제2 면이 3차원 모델의 내부에 위치하도록 3차원 텍스트 데이터의 위치를 결정할 수 있다. 프로세서(310)는, 3차원 텍스트 데이터의 제2 면에 포함된 정점들로부터 3차원 모델의 표면까지의 연직 거리들의 합이 최소인, 3차원 텍스트 데이터의 위치를 결정할 수 있다.As another example, when text is input engraved into a 3D model, the processor 310 positions the 3D text data so that the first and second sides of the 3D text data are located inside the 3D model. You can decide. The processor 310 may determine the position of the 3D text data where the sum of the vertical distances from the vertices included in the second side of the 3D text data to the surface of the 3D model is minimum.

또한, 프로세서(310)는, 3차원 텍스트 데이터의 노멀(normal) 벡터와 3차원 모델의 노멀 벡터에 기초하여, 3차원 텍스트 데이터의 각도를 결정할 수 있다. Additionally, the processor 310 may determine the angle of the 3D text data based on the normal vector of the 3D text data and the normal vector of the 3D model.

일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다.The processor 310 according to one embodiment may determine whether 3D text data and 3D model can be combined.

일 실시 예에 따른 프로세서(310)는, 소정 오프셋이 적용된 3차원 텍스트 데이터와 3차원 모델의 교차 여부에 기초하여, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지를 판단할 수 있다. 오프셋이 적용된 3차원 텍스트 데이터는, 오프셋만큼 깊이가 추가된 3차원 텍스트 데이터를 포함할 수 있다.The processor 310 according to one embodiment may determine 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 intersects the 3D model. 3D text data to which an offset is applied may include 3D text data with added depth equal to the offset.

일 실시 예에 따른 프로세서(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 processor 310 according to one embodiment may move the second vertex included in the second side of the 3D text data by a predetermined offset in order to obtain 3D text data to which an offset is applied. The processor 310 may determine a line connecting the first vertex of the first side of the 3D text data and the moved second vertex. The processor 310 may determine whether the line intersects the surface of the 3D model. The processor 310 determines that, among the lines connecting the first vertices of the first surface of the three-dimensional text data and the second vertices moved by a predetermined offset, the number of lines intersecting the surface of the three-dimensional model is greater than or equal to the reference value. It is possible to determine whether the 3D text data and the 3D model can be combined based on the determination result. For example, the processor 310, when all lines connecting the first vertices of the first surface of the 3D text data and the second vertices moved by a predetermined offset intersect the surface of the 3D model, the 3D model It can be determined that text data and 3D models can be combined.

일 실시 예에 따른 프로세서(310)는, 판단 결과를 화면 상에 표시하도록 디스플레이(320)를 제어할 수 있다.The processor 310 according to one embodiment may control the display 320 to display the determination result on the screen.

일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 지 여부에 기초하여, 화면 상에 표시되는 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다.The processor 310 according to one embodiment may determine at least one of the 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. there is.

일 실시예에 따른 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 3차원 모델의 표면과 교차하는 라인들의 개수에 기초하여, 3차원 텍스트 데이터의 색, 모양, 또는 밝기 중 적어도 하나를 결정할 수 있다. The processor 310 according to an embodiment selects lines that intersect the surface of the 3D model from among the lines connecting the first vertices of the first surface of the 3D text data and the second vertices moved by a predetermined offset. Based on the number, at least one of the color, shape, or brightness of the 3D text data can be determined.

예를 들어, 프로세서(310)는, 3차원 텍스트 데이터의 제1 면의 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 모두 교차하는 경우, 3차원 텍스트 데이터의 색상을 녹색으로 결정할 수 있다. 프로세서(310)는, 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 모두 교차하지는 않지만 기준 값 이상 교차하는 경우, 3차원 텍스트 데이터의 색상을 연한 녹색으로 결정할 수 있다. 프로세서(310)는, 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 적어도 하나는 교차하지만 기준 값 미만으로 교차하는 경우, 3차원 텍스트 데이터의 색상을 주황색으로 결정할 수 있다. 프로세서(310)는, 제1 정점들과 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들이 3차원 모델의 표면과 하나도 교차하지 않는 경우, 3차원 텍스트 데이터의 색상을 빨간색으로 결정할 수 있다.For example, if the lines connecting the first vertices of the first surface of the three-dimensional text data and the second vertices moved by a predetermined offset all intersect the surface of the three-dimensional model, the processor 310 The color of text data can be set to green. The processor 310 changes the color of the 3D text data to light green when the lines connecting the first vertices and the second vertices moved by a predetermined offset do not all intersect with the surface of the 3D model but intersect more than a reference value. can be decided. The processor 310 changes the color of the 3D text data when the lines connecting the first vertices and the second vertices moved by a predetermined offset intersect the surface of the 3D model at least once, but intersect less than a reference value. You can decide on orange. The processor 310 may determine the color of the 3D text data to be red when none of the lines connecting the first vertices and the second vertices moved by a predetermined offset intersect the surface of the 3D model.

일 실시 예에 따른 프로세서(310)는, 3차원 텍스트 데이터와 3차원 모델이 결합 가능한 경우, 텍스트가 추가된 3차원 모델을 획득할 수 있다. 3 프로세서(310)는, 3차원 모델 상에 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 3차원 모델로부터 소정 오프셋이 적용된 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득할 수 있다.If 3D text data and a 3D model can be combined, the processor 310 according to one embodiment may obtain a 3D model to which text is added. 3 Processor 310 combines the 3D text data to which a predetermined offset is applied on a 3D model, or deletes data corresponding to the 3D text data to which a predetermined offset is applied from the 3D model, thereby creating 3 text added. A dimensional model can be obtained.

상술한 본 개시의 다양한 실시 예들에 따른 3차원 모델 처리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 또한, 본 개시의 실시 예에 따르면, 3차원 모델 획득 방법을 실행하는 적어도 하나의 인스트럭션을 포함하는 하나 이상의 프로그램이 기록된 컴퓨터로 읽을 수 있는 저장 매체가 제공될 수 있다. The 3D model processing method according to various embodiments of the present disclosure described above may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. Additionally, according to an embodiment of the present disclosure, a computer-readable storage medium may be provided on which one or more programs including at least one instruction for executing a 3D model acquisition method are recorded.

상기 컴퓨터 판독 가능 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 여기서, 컴퓨터 판독 가능 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(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., singly 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, and floptical disks. Magneto-optical media such as magneto-optical media, and hardware devices configured to store and perform program instructions such as ROM, RAM, flash memory, etc. 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. Additionally, the 'non-transitory storage medium' may include a buffer where data is temporarily stored.

일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 구강 영상의 디스플레이 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포될 수 있다. 또는, 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. According to one embodiment, the method for displaying oral images according to various embodiments disclosed in this document may be included and provided in a computer program product. The computer program product may be distributed on a machine-readable storage medium (e.g., compact disc read only memory (CD-ROM)). Alternatively, it may be distributed (e.g., downloaded or uploaded) online, through an application store or directly between two user devices (e.g., 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 made by those skilled in the art using the basic concept of the present invention defined in the following claims are also included in the scope of the present invention. It belongs.

300: 데이터 처리 장치
310: 프로세서
320: 디스플레이
330: 통신 인터페이스
340: 사용자 입력부
350: 메모리
300: data processing device
310: processor
320: display
330: communication interface
340: User input unit
350: memory

Claims (22)

대상체를 나타내는 3차원 모델 상에 텍스트를 추가하는 방법에 있어서,
3차원 스캔 장치를 이용하여 상기 대상체를 스캔함으로써 얻어진 스캔 데이터에 기반하여 생성된 상기 3차원 모델을 획득하는 단계로서, 상기 대상체는 치아, 치은, 구강의 적어도 일부 영역, 상기 구강 내에 삽입 가능한 인공 구조물, 상기 인공 구조물이 부착된 치아 또는 치은 중 적어도 하나를 포함하는, 단계;
적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하는 단계;
상기 3차원 텍스트 데이터와 상기 3차원 모델을 화면 상에 표시하는 단계;
소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계; 및
상기 판단 결과를 화면 상에 표시하는 단계를 포함하고,
상기 판단 결과를 상기 화면 상에 표시하는 단계는,
상기 3차원 모델과 결합 가능하다고 판단된 상기 3차원 텍스트 데이터의 일 부분이 상기 3차원 모델과 결합 가능하지 않다고 판단된 상기 3차원 텍스트 데이터의 다른 부분과 구별될 수 있도록 상기 3차원 텍스트 데이터의 일 부분의 색상, 모양, 또는 밝기 중 적어도 하나를 상기 3차원 텍스트 데이터의 다른 부분의 색상, 모양 또는 밝기 중 적어도 하나와 상이하게 표시하는 단계를 포함하는, 방법.
In a method of adding text to a three-dimensional model representing an object,
Obtaining the 3D model generated based on scan data obtained by scanning the object using a 3D scanning device, wherein the object includes teeth, gingiva, at least a portion of the oral cavity, and an artificial structure insertable into the oral cavity. , comprising at least one of teeth or gingiva to which the artificial structure is attached;
Obtaining three-dimensional 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 and the 3D model intersect; and
Including displaying the determination result on a screen,
The step of displaying the determination result on the screen is,
A portion of the 3D text data so that a portion of the 3D text data determined to be capable of being combined with the 3D model can be distinguished from another portion of the 3D text data determined to be not combinable with the 3D model. A method comprising displaying at least one of the color, shape, or brightness of a portion differently from at least one of the color, shape, or brightness of another portion of the three-dimensional text data.
제1 항에 있어서,
상기 3차원 텍스트 데이터를 획득하는 단계는,
상기 적어도 하나의 문자에 관한 사용자 입력을 수신하는 단계;
상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하는 단계;
상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하는 단계; 및
상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 방법.
According to claim 1,
The step of acquiring the 3D text data is,
Receiving user input regarding the at least one character;
Obtaining outline data corresponding to the at least one character;
Obtaining two-dimensional mesh data by connecting a plurality of first vertices included in the outline data; and
A method of obtaining three-dimensional mesh data including the two-dimensional mesh data as a first face and a second face spaced apart from the first face by a predetermined depth as the three-dimensional text data.
제1 항에 있어서,
사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계
를 더 포함하는, 방법.
According to claim 1,
Based on user input, determining the location of the three-dimensional text data
A method further comprising:
제1 항에 있어서,
상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하는 단계;
상기 화면 상의 소정 위치에 기초하여 기준점을 결정하는 단계; 및
상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 더 포함하는, 방법.
According to claim 1,
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
The method further comprising determining a location of the three-dimensional text data based on the distance from the reference point to the surface of the three-dimensional model.
제4 항에 있어서,
상기 3차원 텍스트 데이터의 위치를 결정하는 단계는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 외부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법.
According to clause 4,
The step of determining the location of the 3D text data is:
Determining the position of the three-dimensional text data, wherein the first and second sides of the three-dimensional text data are located outside the three-dimensional model, and the distance from the reference point to the surface of the three-dimensional model is minimum. Method, including.
제4 항에 있어서,
상기 3차원 텍스트 데이터의 위치를 결정하는 단계는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는 단계를 포함하는, 방법.
According to clause 4,
The step of determining the location of the 3D text data is:
Determining the position of the three-dimensional text data, wherein the first and second sides of the three-dimensional text data are located inside the three-dimensional model, and the distance from the reference point to the surface of the three-dimensional model is minimum. Method, including.
제1 항에 있어서,
상기 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 is,
moving a second vertex included in the second side of the 3D text data by the predetermined offset;
determining a line connecting a first vertex of the first side of the three-dimensional text data and the moved second vertex; and
Method comprising determining whether the line intersects a surface of the three-dimensional model.
제7 항에 있어서,
상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하는 단계는,
상기 3차원 텍스트 데이터의 상기 제1 면의 제1 정점들과 상기 소정 오프셋만큼 이동된 제2 정점들을 연결하는 라인들 중에서, 상기 3차원 모델의 표면과 교차하는 라인들의 개수가 기준 개수 이상인 경우, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능하다고 판단하는 단계를 더 포함하는, 방법.
According to clause 7,
The step of determining whether the 3D text data and the 3D model can be combined is,
Among the lines connecting the first vertices of the first surface of the 3D text data and the second vertices moved by the predetermined offset, when the number of lines intersecting the surface of the 3D model is greater than the reference number, The method further comprising determining that the 3D text data and the 3D model can be combined.
삭제delete 제1 항에 있어서,
상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는 단계를 더 포함하는, 방법.
According to claim 1,
A 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 deleting data corresponding to the 3D text data to which the predetermined offset is applied from the 3D model. A method further comprising the step of obtaining.
대상체를 나타내는 3차원 모델을 처리하는 장치에 있어서,
적어도 하나의 프로세서; 및
3차원 텍스트 데이터와 상기 3차원 모델을 표시하는 디스플레이를 포함하고,
상기 적어도 하나의 프로세서는,
3차원 스캔 장치를 이용하여 상기 대상체를 스캔함으로써 얻어진 스캔 데이터에 기반하여 생성된 상기 3차원 모델을 획득하되, 상기 대상체는 치아, 치은, 구강의 적어도 일부 영역, 상기 구강 내에 삽입 가능한 인공 구조물, 상기 인공 구조물이 부착된 치아 또는 치은 중 적어도 하나를 포함하고,
적어도 하나의 문자에 대응하는 3차원 텍스트 데이터를 획득하고,
소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 교차 여부에 기초하여, 상기 3차원 텍스트 데이터와 상기 3차원 모델이 결합 가능한 지를 판단하고,
상기 판단 결과를 화면 상에 표시하도록 상기 디스플레이를 제어하되, 상기 3차원 모델과 결합 가능하다고 판단된 상기 3차원 텍스트 데이터의 일 부분이 상기 3차원 모델과 결합 가능하지 않다고 판단된 상기 3차원 텍스트 데이터의 다른 부분과 구별될 수 있도록 상기 3차원 텍스트 데이터의 일 부분의 색상, 모양, 또는 밝기 중 적어도 하나를 상기 3차원 텍스트 데이터의 다른 부분의 색상, 모양 또는 밝기 중 적어도 하나와 상이하게 표시하도록 상기 디스플레이를 제어하는, 3차원 모델 처리 장치.
In a device for processing a three-dimensional model representing an object,
at least one processor; and
Comprising a display that displays three-dimensional text data and the three-dimensional model,
The at least one processor,
Obtain the 3D model generated based on scan data obtained by scanning the object using a 3D scanning device, wherein the object includes teeth, gingiva, at least a partial region of the oral cavity, an artificial structure insertable into the oral cavity, and Comprising at least one of teeth or gingiva to which the artificial structure is attached,
Obtain three-dimensional text data corresponding to at least one character,
Based on whether the 3D text data to which a predetermined offset is applied and the 3D model intersect, determine whether the 3D text data and the 3D model can be combined,
Controlling the display to display the determination result on the screen, wherein a portion of the 3D text data determined to be combinable with the 3D model is determined not to be combinable with the 3D model. Displaying at least one of the color, shape, or brightness of a portion of the three-dimensional text data differently from at least one of the color, shape, or brightness of another portion of the three-dimensional text data so that it can be distinguished from other portions of the three-dimensional text data. A three-dimensional model processing device that controls the display.
제11 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 적어도 하나의 문자에 관한 사용자 입력을 수신하고,
상기 적어도 하나의 문자에 대응하는 윤곽선 데이터를 획득하고,
상기 윤곽선 데이터에 포함되는 복수의 제1 정점들을 연결함으로써 2차원 메쉬 데이터를 획득하고,
상기 2차원 메쉬 데이터를 제1 면으로 포함하고, 상기 제1 면으로부터 소정 깊이만큼 이격된 제2 면을 포함하는 3차원 메쉬 데이터를 상기 3차원 텍스트 데이터로서 획득하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
Receiving user input regarding the at least one character,
Obtaining outline 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,
A 3D model processing device that acquires 3D mesh data including the 2D mesh data as a first face and a second face spaced apart from the first face by a predetermined depth as the 3D text data.
제11 항에 있어서,
상기 적어도 하나의 프로세서는,
사용자 입력에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
A 3D model processing device that determines the location of the 3D text data based on user input.
제11 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 화면 상에 표시된 상기 3차원 텍스트 데이터를 소정 위치로 드래그하는 사용자 입력을 수신하고,
상기 화면 상의 소정 위치에 기초하여 기준점을 결정하고,
상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리에 기초하여, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
Receiving a user input for dragging the 3D text data displayed on the screen to a predetermined position,
Determine a reference point based on a predetermined position on the screen,
A three-dimensional model processing device that determines the position of the three-dimensional text data based on the distance from the reference point to the surface of the three-dimensional model.
제14 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 외부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.
According to claim 14,
The at least one processor,
Determining the position of the three-dimensional text data, wherein the first and second sides of the three-dimensional text data are located outside the three-dimensional model, and the distance from the reference point to the surface of the three-dimensional model is minimum, 3D model processing device.
제14 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 제1 면과 제2 면이 상기 3차원 모델의 내부에 위치하고, 상기 기준점으로부터 상기 3차원 모델의 표면까지의 거리가 최소인, 상기 3차원 텍스트 데이터의 위치를 결정하는, 3차원 모델 처리 장치.
According to claim 14,
The at least one processor,
Determining the position of the three-dimensional text data, wherein the first and second sides of the three-dimensional text data are located inside the three-dimensional model, and the distance from the reference point to the surface of the three-dimensional model is minimum, 3D model processing device.
제11 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 3차원 텍스트 데이터의 제2 면에 포함되는 제2 정점을 상기 소정 오프셋만큼 이동시키고,
상기 3차원 텍스트 데이터의 제1 면의 제1 정점과 상기 이동된 제2 정점을 연결하는 라인을 결정하고,
상기 라인과 상기 3차원 모델의 표면이 교차하는 지 여부를 판단하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
Moving the second vertex included in the second side of the 3D text data by the predetermined offset,
Determining a line connecting a first vertex of the first side of the three-dimensional text data and the moved second vertex,
A three-dimensional model processing device that determines whether the line intersects the surface of the three-dimensional model.
제17 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 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 surface of the 3D text data and the second vertices moved by the predetermined offset, when the number of lines intersecting the surface of the 3D model is greater than the reference number, A 3D model processing device that determines that the 3D text data and the 3D model can be combined.
삭제delete 제11 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 3차원 모델 상에 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터를 결합하거나, 상기 3차원 모델로부터 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터에 대응하는 데이터를 삭제함으로써, 텍스트가 추가된 3차원 모델을 획득하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
A 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 deleting data corresponding to the 3D text data to which the predetermined offset is applied from the 3D model. A three-dimensional model processing device that acquires.
제1 항에 있어서,
상기 판단하는 단계는,
상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 표면과 교차함에 따라 상기 3차원 텍스트 데이터와 상기 3차원 모델은 결합 가능하다고 판단하고, 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 표면과 교차하지 않음에 따라 상기 3차원 텍스트 데이터와 상기 3차원 모델은 결합 가능하지 않다고 판단하는 단계를 포함하는, 방법.
According to claim 1,
The above judgment step is,
As the 3D text data to which the predetermined offset is applied intersects the surface of the 3D model, it is determined that the 3D text data and the 3D model can be combined, and the 3D text data to which the predetermined offset is applied and the 3D model are determined to be combined. A method comprising determining that the 3D text data and the 3D model cannot be combined as they do not intersect with the surface of the 3D model.
제11 항에 있어서,
상기 적어도 하나의 프로세서는,
상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 표면과 교차함에 따라 상기 3차원 텍스트 데이터와 상기 3차원 모델은 결합 가능하다고 판단하고, 상기 소정 오프셋이 적용된 상기 3차원 텍스트 데이터와 상기 3차원 모델의 표면과 교차하지 않음에 따라 상기 3차원 텍스트 데이터와 상기 3차원 모델은 결합 가능하지 않다고 판단하는, 3차원 모델 처리 장치.
According to claim 11,
The at least one processor,
As the 3D text data to which the predetermined offset is applied intersects the surface of the 3D model, it is determined that the 3D text data and the 3D model can be combined, and the 3D text data to which the predetermined offset is applied and the 3D model are determined to be combined. A 3D model processing device that determines that the 3D text data and the 3D model cannot be combined because they do not intersect with the surface of the 3D model.
KR1020210135928A 2021-07-06 2021-10-13 Method for adding text on three dimensional model and apparatus for processing three dimensional model KR102680644B1 (en)

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
KR20210088573 2021-07-06
KR1020210088573 2021-07-06

Publications (2)

Publication Number Publication Date
KR20230007909A KR20230007909A (en) 2023-01-13
KR102680644B1 true KR102680644B1 (en) 2024-07-03

Family

ID=84900071

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210135928A KR102680644B1 (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) KR102680644B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000268201A (en) * 1999-03-15 2000-09-29 Sony Corp Device and method for making display element to be stereoscopic
JP2008276743A (en) 2000-04-28 2008-11-13 Orametrix Inc Method and system for scanning surface and preparing three-dimensional object

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011087470A1 (en) * 2010-01-13 2011-07-21 Thomson Licensing System and method for combining 3d text with 3d content
US20130050215A1 (en) * 2011-08-23 2013-02-28 Samsung Electronics Co. Ltd. Apparatus and method for 3d font engine
KR102024078B1 (en) * 2013-03-14 2019-09-23 스트라타시스 엘티디. Slicing and/or texturing for three-dimensional printing
KR102233258B1 (en) * 2017-03-16 2021-03-29 한국전자통신연구원 Method and apparatus for generating 3d printing data
JP7119425B2 (en) * 2018-03-01 2022-08-17 ソニーグループ株式会社 Image processing device, encoding device, decoding device, image processing method, program, encoding method and decoding method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000268201A (en) * 1999-03-15 2000-09-29 Sony Corp Device and method for making display element to be stereoscopic
JP2008276743A (en) 2000-04-28 2008-11-13 Orametrix Inc Method and system for scanning surface and preparing three-dimensional object

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AZTECHNOLOGY, 블렌더 기초강좌: 큐브에 있는 회전로고 영상, Youtube(2021.04.04.)*
BARON GRUTTER DSS, 3DBuilder - Adding Text or Logo to an Object, Youtube(2019.09.08.)*

Also Published As

Publication number Publication date
KR20230007909A (en) 2023-01-13

Similar Documents

Publication Publication Date Title
US11344392B2 (en) Computer implemented method for modifying a digital three-dimensional model of a dentition
US20230390032A1 (en) Method for determining object area from three-dimensional model, and three-dimensional model processing device
KR102680644B1 (en) Method for adding text on three dimensional model and apparatus for processing three dimensional model
KR102534778B1 (en) Method and apparatus for obtaining three dimensional data and computer readable medium storing a program for performing the same method
US20220343528A1 (en) Intraoral image processing apparatus, and intraoral image processing method
US20230386119A1 (en) Oral image processing device and oral image processing method
KR102582709B1 (en) A method for processing a three-dimensional intraoral model, and an apparatus for performing the same method
US20230215122A1 (en) Three-dimensional data acquisition method and device, and computer-readable storage medium storing program for performing same method
KR102493440B1 (en) Method for determining region of object from three dimensional model and apparatus for processing three dimensional model
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
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
KR102666198B1 (en) A data processing apparatus for processing an intraoral model, and a method for operating the data processing apparatus
KR20230029554A (en) An image processing apparatus, and an image processing method
US20240180397A1 (en) Data processing device, scanner, and method for operating same
US12050765B2 (en) Method for processing intraoral image, and data processing apparatus
EP4374819A1 (en) Image processing apparatus and image processing method
US20230111425A1 (en) Method for processing intraoral image, and data processing apparatus
KR20230055381A (en) A data processing apparatus, a data processing method
US20240197447A1 (en) Intraoral image processing apparatus and intraoral image processing method
KR20230014628A (en) An image processing apparatus, and an image processing method
KR20230051057A (en) A method for processing a intraoral image, and a data processing apparatus
KR20230038117A (en) A method for processing a intraoral image, and a data processing apparatus
KR20230051418A (en) An intraoral image processing apparatus and an intraoral image processing method

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)