Method for converting first dental data including polygon mesh into second dental data including triangle mesh, method for converting first data including polygon mesh into second data including triangle mesh, and computer-readable recording medium in which program for executing same in computer is recorded
The conversion of polygon meshes to triangle meshes through triangulation enhances their usability in dental treatments by reducing artifacts and ensuring stable geometric properties and smooth texture application.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-11-07
- Publication Date
- 2026-03-12
AI Technical Summary
Polygon meshes generated from Boolean operations in dental treatments lack connection relationships, making them less usable in dental applications, and need to be converted into triangle meshes to enhance usability.
A method involving triangulation of polygon meshes by generating triangulation target points and performing triangulation based on these points to convert polygon meshes into triangle meshes, ensuring stable geometric properties and smooth texture application.
Reduces the likelihood of rendering artifacts and ensures stable geometric stability, allowing for smooth texture application and effective use of triangle meshes in dental treatments.
Smart Images

Figure KR2024017460_12032026_PF_FP_ABST
Abstract
Description
A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, a method for converting first data including a polygon mesh into second data including a triangle mesh, and a computer-readable recording medium having a program for executing the same on a computer.
[0001] The present invention relates to a method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, a method for converting first data including a polygon mesh into second data including a triangle mesh, and a computer-readable recording medium having a program for executing the same on a computer.
[0002] 3D oral scan data refers to data obtained by scanning teeth and the oral cavity, or an object modeled or reconstructed therefrom, using a 3D scanner. The 3D oral scan data may be composed of triangle meshes. Each of the triangle meshes may include points and edges, and may further include connection relationships.
[0003] Since each of the above triangle meshes includes the above connection relationship, the above triangle meshes can be used in prosthetic treatment such as inlay, onlay, crown, etc., dental treatment such as implant, orthodontic treatment, etc., prosthetic product or implant design, orthodontic device manufacturing, etc.
[0004] However, a Boolean operation may be performed in the above dental treatment, and when the Boolean operation is performed, polygon meshes may be generated. The polygon meshes include points and edges, but do not include connection relationships. Therefore, in order for the polygon meshes to be used in the above dental treatment, they must be converted into triangle meshes.
[0005] An object of the present invention is to provide a method for converting first dental data including a polygon mesh into second dental data including a triangular mesh.
[0006] Another object of the present invention is to provide a method for converting first data including a polygon mesh into second data including a triangle mesh.
[0007] Another object of the present invention is to provide a computer-readable recording medium having recorded thereon a program for executing a method for converting first dental data including the polygon mesh into second dental data including a triangle mesh and a method for converting first data including the polygon mesh into second data including the triangle mesh.
[0008] A method for converting first dental data including a polygon mesh into second dental data including a triangular mesh according to embodiments for realizing the above-described object of the present invention includes the steps of inputting first dental data including a polygon mesh including points and edges, generating a triangulation target point based on the point of the polygon mesh, and performing triangulation on the polygon mesh based on the triangulation target point.
[0009] In one embodiment, the step of generating the triangulation target point may include the step of determining whether the coordinates of the point of the polygon mesh match the coordinates of the point of a reference triangle mesh including a point and an edge, and the step of determining whether the point of the polygon mesh exists on the edge of the reference triangle mesh.
[0010] In one embodiment, when the coordinates of the point of the polygon mesh match the coordinates of the point of the reference triangle mesh, the step of generating the triangulation target point may further include the step of generating the point of the polygon mesh as the triangulation target point.
[0011] In one embodiment, when the point of the polygon mesh exists on the edge of the reference triangle mesh, the step of generating the triangulation target point may further include the step of generating the point of the polygon mesh as a division point, and dividing the reference triangle mesh based on the division point.
[0012] In one embodiment, when the point of the polygon mesh exists on the edge of the reference triangle mesh, the step of generating the triangulation target point may further include the step of generating the point of the polygon mesh as the triangulation target point.
[0013] In one embodiment, when the point of the polygon mesh does not exist on the edge of the reference triangle mesh, the step of generating the triangulation target point may further include the step of generating the point of the polygon mesh as the triangulation target point.
[0014] In one embodiment, the method for converting first dental data including the polygon mesh into second dental data including the triangle mesh may further include the step of determining whether the point of the reference triangle mesh exists on the edge of the polygon mesh.
[0015] In one embodiment, when the point of the reference triangle mesh exists on the edge of the polygon mesh, the method of converting first dental data including the polygon mesh into second dental data including the triangle mesh may further include the step of generating the point of the reference triangle mesh as the triangulation target point.
[0016] In one embodiment, the step of performing the triangulation on the polygon mesh based on the triangulation target point may include the step of determining whether the triangulation target point exists on the edge of the polygon mesh.
[0017] In one embodiment, when the triangulation target point does not exist on the edge of the polygon mesh, the step of performing the triangulation on the polygon mesh based on the triangulation target point may further include the step of determining the triangulation target point having the smallest angle with respect to adjacent triangulation target points and the step of generating an edge connecting the adjacent triangulation target points to generate a triangle.
[0018] In one embodiment, when the triangulation target point exists on the edge of the polygon mesh, the step of performing the triangulation on the polygon mesh based on the triangulation target point may further include the steps of preferentially performing the triangulation on the triangulation target point existing on the edge of the polygon mesh, the step of determining the triangulation target point having the smallest angle with respect to adjacent triangulation target points, and the step of generating an edge connecting the adjacent triangulation target points to generate a triangle.
[0019] In one embodiment, a method of converting first dental data including the polygon mesh into second dental data including a triangle mesh may further include a step of adding a triangle generated by performing the triangulation to the second dental data as a triangle mesh.
[0020] In one embodiment, the angle of the degenerate triangle includes 0 degrees or 180 degrees, and the angle of the triangle can be greater than 0 degrees and less than 180 degrees.
[0021] In one embodiment, the triangle mesh may include information about points, edges, and connection relationships between neighboring points and neighboring edges.
[0022] A method for converting first data including a polygon mesh into second data including a triangular mesh according to embodiments for realizing another object of the present invention described above includes the steps of inputting first data including a polygon mesh including points and edges, generating a triangulation target point based on the point of the polygon mesh, and performing triangulation on the polygon mesh based on the triangulation target point.
[0023] In one embodiment, the step of generating the triangulation target point may include the step of determining whether the coordinates of the point of the polygon mesh match the coordinates of the point of a reference triangle mesh including a point and an edge, and the step of determining whether the point of the polygon mesh exists on the edge of the reference triangle mesh.
[0024] In one embodiment, a method for converting first dental data including the polygon mesh into second dental data including the triangle mesh and a program for executing the method for converting the first data including the polygon mesh into second data including the triangle mesh on a computer may be recorded on a computer-readable recording medium.
[0025] According to the method for converting a dental polygon mesh into a triangle mesh according to the present invention, the method for converting a polygon mesh into a triangle mesh, and a computer-readable recording medium having a program for executing the same on a computer, the method for converting a polygon mesh into a triangle mesh may include the steps of inputting a polygon mesh including points and edges, generating a triangulation target point based on the points of the polygon mesh, and performing triangulation on the polygon mesh based on the triangulation target point. Therefore, the polygon mesh can be converted into the triangle mesh. Accordingly, the probability of rendering artifacts occurring can be reduced, and it can be ensured that a texture is smoothly applied to the entire triangle mesh. In addition, because the triangle mesh is geometrically more stable, algorithms such as shortest distance calculation and geodetic distance calculation can be performed stably.
[0026] Figure 1 is a diagram showing the process of generating a polygon mesh.
[0027] FIG. 2 is a flowchart illustrating a method for converting a polygon mesh into a triangle mesh according to embodiments of the present invention.
[0028] Figure 3 is a flowchart showing the steps for generating the triangulation target points of Figure 2.
[0029] FIGS. 4 to 8 are drawings illustrating the steps for generating the triangulation target point of FIG. 2.
[0030] FIG. 9 is a diagram illustrating the step of determining whether a point of the reference triangle mesh of FIG. 2 exists on the edge of the polygon mesh and the step of generating the point of the reference triangle mesh as a triangulation target point.
[0031] Figure 10 is a flowchart showing the steps for performing triangulation on a polygon mesh based on the triangulation target points of Figure 2.
[0032] Figures 11 and 12 are drawings explaining the steps of performing triangulation on a polygon mesh based on the triangulation target points of Figure 2.
[0033] With respect to the embodiments of the present invention disclosed in the text, specific structural or functional descriptions are provided merely for the purpose of explaining the embodiments of the present invention, and the embodiments of the present invention may be implemented in various forms and should not be interpreted as being limited to the embodiments described in the text.
[0034] The present invention is susceptible to various modifications and takes various forms. Specific embodiments are illustrated in the drawings and described in detail herein. However, this is not intended to limit the present invention to specific disclosed forms, but rather to encompass all modifications, equivalents, and alternatives falling within the spirit and technical scope of the present invention.
[0035] While terms like "first" and "second" may be used to describe various components, these components should not be limited by these terms. These terms may be used to distinguish one component from another. For example, without departing from the scope of the present invention, a first component could be referred to as a "second component," and similarly, a second component could also be referred to as a "first component."
[0036] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components in between. Conversely, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there are no other components in between. Other expressions that describe the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to", should be interpreted similarly.
[0037] The terminology used in this application is only used to describe specific embodiments and is not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly indicates otherwise. In this application, it should be understood that the terms "comprise" or "have" indicate the presence of a described feature, number, step, operation, component, part, or combination thereof, but do not preclude the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0038] Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by those of ordinary skill in the art to which this invention pertains. Terms defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technology, and shall not be construed in an idealized or overly formal sense unless explicitly defined herein.
[0039] Meanwhile, if a particular embodiment can be implemented differently, the functions or operations specified within a particular block may occur in a different order than specified in the flowchart. For example, two consecutive blocks may actually be executed substantially simultaneously, or, depending on the related functions or operations, the blocks may be executed in reverse order.
[0040] Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the attached drawings. Identical components in the drawings are designated by the same reference numerals, and redundant descriptions of identical components are omitted.
[0041] Figure 1 is a diagram showing the process of generating a polygon mesh (PG).
[0042] Referring to Fig. 1, when an object is scanned with a 3D scanner, 3D scan data may be generated. The 3D scan data may include triangular meshes. For example, the triangular meshes may include triangles or quadrangles.
[0043] For example, the 3D scan data may include 3D oral scan data (110) and cylindrical scan data (120). Each of the 3D oral scan data (110) and the cylindrical scan data (120) may be composed of the triangular meshes. In one embodiment, a Boolean operation utilizing a BSP (Binary Space Partitioning) tree may be performed on the 3D oral scan data (110) and the cylindrical scan data (120). For example, the Boolean operation may be a subtraction operation (Boolean difference). For example, by subtracting the cylindrical scan data (120) from the 3D oral scan data (110), a hole for implanting an implant may be formed in the 3D oral scan data (110). In this way, when a Boolean operation is performed on the three-dimensional oral scan data (110) and the cylinder scan data (120), polygon meshes (PG) can be generated in the process. In another embodiment, when a marching cube operation is performed on the volume data, the polygon meshes (PG) can be generated.
[0044] The above polygon meshes (PG) include points and edges, but do not include connection relationships with other polygon meshes adjacent to the polygon meshes (PG). The polygon meshes (PG) that do not include connection relationships with other neighboring polygon meshes may have low usability in dental treatment. If the polygon meshes (PG) do not include the connection relationships with other neighboring polygon meshes, even if the position or shape of one polygon mesh (PG) is changed, the positions or shapes of other neighboring polygon meshes do not change together, and thus the polygon meshes (PG) may have low usability in dental treatment.
[0045] Therefore, in order for the polygon meshes (PG) to be well utilized, they must be converted into the triangle meshes including information on the connection relationship between neighboring points and neighboring edges. The method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention aims to convert the polygon meshes (PG) into the triangle meshes. The method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention can be used in various fields. For example, the polygon meshes (PG) can be a dental polygon mesh, the first data can be first dental data, and the second data can be second dental data. In this case, the method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention can be used for dental treatment.
[0046] FIG. 2 is a flowchart illustrating a method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention.
[0047] Referring to FIGS. 1 and 2, a method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention may include a step (S100) of inputting a polygon mesh (PG) including points and edges, a step (S200) of generating a triangulation target point based on the point of the polygon mesh (PG), and a step (S500) of performing triangulation on the polygon mesh (PG) based on the triangulation target point.
[0048] In one embodiment, the method for converting first data including a polygon mesh according to embodiments of the present invention into second data including a triangle mesh may further include a step (S300) of determining whether a point of a reference triangle mesh exists on the edge of the polygon mesh. When the point of the reference triangle mesh exists on the edge of the polygon mesh (PG), the method for converting first data including a polygon mesh according to embodiments of the present invention into second data including a triangle mesh may further include a step (S400) of generating the point of the reference triangle mesh as the triangulation target point.
[0049] In one embodiment, a method of converting first data including a polygon mesh according to embodiments of the present invention into second data including a triangle mesh may further include a step (S600) of adding triangles generated by performing the triangulation to the second data as a triangle mesh.
[0050] A method for converting first data including the polygon mesh into second data including the triangle mesh can be performed by a computing device.
[0051] Fig. 3 is a flowchart illustrating the step (S200) of generating a triangulation target point of Fig. 2. Figs. 4 to 8 are drawings explaining the step (S200) of generating a triangulation target point of Fig. 2.
[0052] Referring to FIGS. 1 to 8, a method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention may include the step (S200) of generating the triangulation target points.
[0053] The step (S200) of generating the above triangulation target point may include a step (S210) of determining whether the coordinates of the point of the polygon mesh (PG) match the coordinates of the point of the reference triangle mesh (MS) including the point and the edge, and a step (S220) of determining whether the point of the polygon mesh (PG) exists on the edge of the reference triangle mesh (MS).
[0054] When the coordinates of the point of the polygon mesh (PG) match the coordinates of the point of the reference triangle mesh (MS), the step (S200) of generating the triangulation target point may further include a step (S211) of generating the point of the polygon mesh (PG) as the triangulation target point.
[0055] When the point of the polygon mesh (PG) exists on the edge of the reference triangle mesh (MS), the step (S200) of generating the triangulation target point may further include a step (S221) of generating the point of the polygon mesh (PG) as a division point and dividing the reference triangle mesh (MS) based on the division point, and a step (S222) of generating the point of the polygon mesh (PG) as the triangulation target point.
[0056] When the point of the reference triangle mesh (MS) does not exist on the edge of the polygon mesh (PG), the step (S200) of generating the triangulation target point may further include a step (S223) of generating the point of the reference triangle mesh (MS) as the triangulation target point.
[0057] Referring to FIG. 4, for example, the polygon mesh (PG) may include first to fifth points (PG_VT1 to PG_VT5), and the reference triangle mesh (MS) may include first to seventh points (MS_VT1 to MS_VT7).
[0058] The step (S210) of determining whether the coordinates of the first point (PG_VT1) of the polygon mesh (PG) of the polygon mesh (PG) match the coordinates of the point of the reference triangle mesh (MS) may be performed. The coordinates of the first point (PG_VT1) of the polygon mesh (PG) may match the coordinates of the first point (MS_VT1) of the reference triangle mesh (MS). Therefore, the first point (PG_VT1) of the polygon mesh (PG) may be generated as the triangulation target point.
[0059] The step (S210) of determining whether the coordinates of the points of the polygon mesh (PG) of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) match the coordinates of the points of the reference triangle mesh (MS) may be performed. The coordinates of each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) do not match the coordinates of the points of the reference triangle mesh (MS). Thereafter, the step (S220) of determining whether the points of the polygon mesh (PG) of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) exist on the edge of the reference triangle mesh (MS) may be performed. Each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) does not exist on the edge of the reference triangle mesh (MS). Therefore, each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) can be generated as the triangulation target points.
[0060] Referring to FIGS. 5 to 7, for example, the polygon mesh (PG) may include first to fifth points (PG_VT1 to PG_VT5), and the reference triangle mesh (MS) may include first to seventh points (MS_VT1 to MS_VT7).
[0061] The step (S210) of determining whether the coordinates of the point of the first point (PG_VT1) of the polygon mesh (PG) match the coordinates of the point of the reference triangle mesh (MS) may be performed. The coordinates of the first point (PG_VT1) of the polygon mesh (PG) do not match the coordinates of the first point (MS_VT1) of the reference triangle mesh (MS). Thereafter, the step (S220) of determining whether the point of the polygon mesh (PG) of the first point (PG_VT1) of the polygon mesh (PG) exists on the edge of the reference triangle mesh (MS) may be performed. The first point (PG_VT1) of the polygon mesh (PG) may exist on the first edge (MS_ED1) of the reference triangle mesh (MS). The first point (PG_VT1) of the polygon mesh (PG) may be generated as a division point, and the reference triangle mesh (MS) may be divided based on the division point. A second edge (MS_ED2) of the reference triangle mesh (MS) may be generated. The first point (PG_VT1) of the polygon mesh (PG) may be generated as the triangulation target point.
[0062] The step (S210) of determining whether the coordinates of the points of the polygon mesh (PG) of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) match the coordinates of the points of the reference triangle mesh (MS) may be performed. The coordinates of each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) do not match the coordinates of the points of the reference triangle mesh (MS). Thereafter, the step (S220) of determining whether the points of the polygon mesh (PG) of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) exist on the edge of the reference triangle mesh (MS) may be performed. Each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) does not exist on the edge of the reference triangle mesh (MS). Therefore, each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) can be generated as the triangulation target points.
[0063] Referring to FIG. 8, for example, the polygon mesh (PG) may include first to fifth points (PG_VT1 to PG_VT5), and the reference triangle mesh (MS) may include first to seventh points (MS_VT1 to MS_VT7).
[0064] The step (S210) of determining whether the coordinates of the points of the polygon mesh (PG) of the first to fifth points (PG_VT1 to PG_VT5) of the polygon mesh (PG) match the coordinates of the points of the reference triangle mesh (MS) may be performed. The coordinates of each of the first to fifth points (PG_VT1 to PG_VT5) of the polygon mesh (PG) do not match the coordinates of the points of the reference triangle mesh (MS). Thereafter, the step (S220) of determining whether the points of the polygon mesh (PG) of the first to fifth points (PG_VT1 to PG_VT5) of the polygon mesh (PG) exist on the edge of the reference triangle mesh (MS) may be performed. Each of the first to fifth points (PG_VT1 to PG_VT5) of the polygon mesh (PG) does not exist on the edge of the reference triangle mesh (MS). Therefore, each of the second to fifth points (PG_VT2 to PG_VT5) of the polygon mesh (PG) can be generated as the triangulation target points.
[0065] FIG. 9 is a diagram illustrating the step (S300) of determining whether a point of the reference triangle mesh (MS) of FIG. 2 exists on an edge of the polygon mesh (PG) and the step (S400) of creating the point of the reference triangle mesh (MS) as a triangulation target point.
[0066] Referring to FIGS. 1 to 9, a method for converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention may include the step (S300) of determining whether the point of the reference triangle mesh (MS) exists on the edge of the polygon mesh (PG), and the step (S400) of generating the point of the reference triangle mesh (MS) as the triangulation target point.
[0067] Referring to FIG. 9, for example, the polygon mesh (PG) may include first to fifth points (PG_VT1 to PG_VT5), and the reference triangle mesh (MS) may include first to seventh points (MS_VT1 to MS_VT7).
[0068] The step (S400) of generating the triangulation target points for the first to fifth points (PG_VT1 to PG_VT5) of the polygon mesh (PG) may be performed, and each of the first to fifth points (PG_VT1 to PG_VT5) of the polygon mesh (PG) may be generated as the triangulation target points.
[0069] The sixth point (MS_VT6) of the reference triangle mesh (MS) may exist on the first edge (PG_ED1) of the polygon mesh (PG). Therefore, the sixth point (MS_VT6) of the reference triangle mesh (MS) can be generated as the triangulation target point.
[0070] FIG. 10 is a flowchart illustrating the step (S500) of performing triangulation on a polygon mesh (PG) based on the triangulation target points of FIG. 2. FIG. 11 and FIG. 12 are drawings illustrating the step (S500) of performing triangulation on a polygon mesh (PG) based on the triangulation target points of FIG. 2.
[0071] Referring to FIGS. 1 to 12, a method for converting first data including a polygon mesh according to embodiments of the present invention into second data including a triangle mesh may include the step (S500) of generating the triangulation target point based on the point of the polygon mesh (PG).
[0072] The step (S500) of generating the triangulation target point may include the step (S510) of determining whether the triangulation target point exists on the edge of the polygon mesh (PG).
[0073] In one embodiment, when the triangulation target point does not exist on the edge of the polygon mesh (PG), the step (S500) of performing the triangulation on the polygon mesh (PG) based on the triangulation target point may further include a step (S511) of determining a triangulation target point having a minimum angle with adjacent triangulation target points and a step (S512) of generating an edge connecting the adjacent triangulation target points to generate a triangle.
[0074] In one embodiment, when the triangulation target point exists on the edge of the polygon mesh (PG), the step (500) of performing the triangulation on the polygon mesh (PG) based on the triangulation target point may further include a step (S513) of preferentially performing the triangulation on the triangulation target point existing on the edge of the polygon mesh (PG), a step (S514) of determining a triangulation target point having a minimum angle with adjacent triangulation target points, and a step (S515) of generating an edge connecting the adjacent triangulation target points to generate a triangle.
[0075] Referring to FIG. 11, for example, the polygon mesh (PG) may include first to fifth triangulation target points (PG_TTVT1 to PG_TTVT5), and each of the first to fifth triangulation target points (PG_TTVT1 to PG_TTVT5) does not exist on the edge of the polygon mesh (PG).
[0076] Among the first to fifth triangulation target points (PG_TTVT1 to PG_TTVT5), the point that has the minimum angle with adjacent triangulation target points may be the first triangulation target point (PG_TTVT1). The adjacent triangulation target points of the first triangulation target point (PG_TTVT1) may be the second triangulation target point (PG_TTVT2) and the fifth triangulation target point (PG_TTVT5). The edge connecting the first triangulation target point (PG_TTVT1) and the second triangulation target point (PG_TTVT2) may be the first edge (PG_TTED1), and the edge connecting the first triangulation target point (PG_TTVT1) and the fifth triangulation target point (PG_TTVT5) may be the second edge (PG_TTED2). The angle of the first triangulation target point (PG_TTVT1) may be the first angle (PG_TTAG1), and the first angle (PG_TTAG1) may be the angle between the first edge (PG_TTED1) and the second edge (PG_TTED2). A third edge (PG_TTED3) connecting the second triangulation target point (PG_TTVT2) and the fifth triangulation target point (PG_TTVT5) may be generated. By generating the third edge (PG_TTED3), a first triangle including the first triangulation target point (PG_TTVT1), the second triangulation target point (PG_TTVT2), and the fifth triangulation target point (PG_TTVT5) may be generated.
[0077] For a polygon from which the first triangle is excluded from the above polygon mesh (PG), the step (S511) of determining the triangulation target point that has the minimum angle formed with the adjacent triangulation target points and the step (S512) of generating the triangle by creating the edge connecting the adjacent triangulation target points may be repeated.
[0078] For example, the polygon from which the first triangle is excluded from the polygon mesh (PG) may include the second to fifth triangulation target points (PG_TTVT2 to PG_TTVT5). Among the second to fifth triangulation target points (PG_TTVT2 to PG_TTVT5), the triangulation target point that has the minimum angle with adjacent triangulation target points may be the second triangulation target point (PG_TTVT2). The adjacent triangulation target points of the second triangulation target point (PG_TTVT2) may be the third triangulation target point (PG_TTVT3) and the fifth triangulation target point (PG_TTVT5). The edge connecting the second triangulation target point (PG_TTVT2) and the third triangulation target point (PG_TTVT3) may be the fourth edge (PG_TTED4), and the edge connecting the second triangulation target point (PG_TTVT2) and the fifth triangulation target point (PG_TTVT5) may be the third edge (PG_TTED3). The angle of the second triangulation target point (PG_TTVT2) may be the second angle (PG_TTAG2), and the second angle (PG_TTAG2) may be the angle between the third edge (PG_TTED3) and the fourth edge (PG_TTED4). A fifth edge (PG_TTED5) connecting the third triangulation target point (PG_TTVT3) and the fifth triangulation target point (PG_TTVT5) may be generated. By generating the fifth edge (PG_TTED5), a second triangle including the second triangulation target point (PG_TTVT2), the third triangulation target point (PG_TTVT3), and the fifth triangulation target point (PG_TTVT5) can be generated.
[0079] The polygon from which the first triangle and the second triangle are excluded from the polygon mesh (PG) may be a triangle. The polygon from which the first triangle and the second triangle are excluded from the polygon mesh (PG) may include the third to fifth triangulation target points (PG_TTVT3 to PG_TTVT5) and may be the triangle. Therefore, a third triangle including the third triangulation target point (PG_TTVT3), the fourth triangulation target point (PG_TTVT4), and the fifth triangulation target point (PG_TTVT5) may be generated.
[0080] The above polygon mesh (PG) can be converted into triangle meshes including the first to third triangles. Each of the first to third triangles may have an angle greater than 0 degrees and less than 180 degrees. That is, each of the first to third triangles may not be a degenerate triangle. The angle of the degenerate triangle may be 0 degrees or 180 degrees, and the degenerate triangle may cause problems such as simulation instability, structural integrity of the triangle mesh, 3D modeling algorithm errors, rendering artifacts, and texture mapping distortion.
[0081] Referring to Fig. 12, for example, the polygon mesh (PG) may include first to sixth triangulation target points (PG_TTVT1 to PG_TTVT5), and the third triangulation target point (PG_TTVT3) may be located on the second edge (PG_TTED2) of the polygon mesh (PG). Therefore, the triangulation may be preferentially performed on the third triangulation target point (PG_TTVT3).
[0082] Among the second triangulation target point (PG_TTVT2) and the fourth triangulation target point (PG_TTVT4), the point with the minimum angle formed with adjacent triangulation target points may be the second triangulation target point (PG_TTVT2). The adjacent triangulation target points of the second triangulation target point (PG_TTVT2) may be the first triangulation target point (PG_TTVT1) and the third triangulation target point (PG_TTVT3). The edge connecting the second triangulation target point (PG_TTVT2) and the first triangulation target point (PG_TTVT1) may be the first edge (PG_TTED1), and the edge connecting the second triangulation target point (PG_TTVT2) and the third triangulation target point (PG_TTVT3) may be the second edge (PG_TTED2). The angle of the second triangulation target point (PG_TTVT2) may be the first angle (PG_TTAG1), and the first angle (PG_TTAG1) may be the angle between the first edge (PG_TTED1) and the second edge (PG_TTED2). A third edge (PG_TTED3) connecting the first triangulation target point (PG_TTVT1) and the third triangulation target point (PG_TTVT3) may be generated. By generating the third edge (PG_TTED3), a first triangle may be generated that includes the first triangulation target point (PG_TTVT1), the second triangulation target point (PG_TTVT2), and the third triangulation target point (PG_TTVT3).
[0083] For a polygon from which the first triangle is excluded from the polygon mesh (PG), the step (S714) of determining the triangulation target point that has the minimum angle formed with the adjacent triangulation target points and the step (S715) of generating the triangle by creating the edge connecting the adjacent triangulation target points may be repeated.
[0084] For example, the polygon from which the first triangle is excluded from the polygon mesh (PG) may include the first triangulation target point (PG_TTVT1) and the third to sixth triangulation target points (PG_TTVT3 to PG_TTVT6). Among the first triangulation target point (PG_TTVT1) and the third to sixth triangulation target points (PG_TTVT3 to PG_TTVT6), the triangulation target point that forms the smallest angle with adjacent triangulation target points may be the first triangulation target point (PG_TTVT1). The adjacent triangulation target points of the first triangulation target point (PG_TTVT1) may be the third triangulation target point (PG_TTVT3) and the sixth triangulation target point (PG_TTVT6). The edge connecting the first triangulation target point (PG_TTVT1) and the third triangulation target point (PG_TTVT3) may be a third edge (PG_TTED3), and the edge connecting the first triangulation target point (PG_TTVT1) and the sixth triangulation target point (PG_TTVT6) may be a fourth edge (PG_TTED4). The angle of the first triangulation target point (PG_TTVT1) may be a second angle (PG_TTAG2), and the second angle (PG_TTAG2) may be an angle between the third edge (PG_TTED3) and the fourth edge (PG_TTED4). A fifth edge (PG_TTED5) connecting the third triangulation target point (PG_TTVT3) and the sixth triangulation target point (PG_TTVT6) may be generated. By generating the fifth edge (PG_TTED5), a second triangle including the first triangulation target point (PG_TTVT1), the third triangulation target point (PG_TTVT3), and the sixth triangulation target point (PG_TTVT6) can be generated.
[0085] For example, the polygon from which the first triangle and the second triangle are excluded from the polygon mesh (PG) may include the third to sixth triangulation target points (PG_TTVT3 to PG_TTVT6). Among the third to sixth triangulation target points (PG_TTVT3 to PG_TTVT6), the triangulation target point that has the minimum angle with adjacent triangulation target points may be the sixth triangulation target point (PG_TTVT6). The adjacent triangulation target points of the sixth triangulation target point (PG_TTVT6) may be the third triangulation target point (PG_TTVT3) and the fifth triangulation target point (PG_TTVT5). The edge connecting the third triangulation target point (PG_TTVT3) and the sixth triangulation target point (PG_TTVT6) may be the fifth edge (PG_TTED5), and the edge connecting the fifth triangulation target point (PG_TTVT5) and the sixth triangulation target point (PG_TTVT6) may be the sixth edge (PG_TTED6). The angle of the sixth triangulation target point (PG_TTVT6) may be the third angle (PG_TTAG3), and the third angle (PG_TTAG3) may be the angle between the fifth edge (PG_TTED5) and the sixth edge (PG_TTED6). A seventh edge (PG_TTED7) connecting the third triangulation target point (PG_TTVT3) and the fifth triangulation target point (PG_TTVT5) may be generated. By generating the seventh edge (PG_TTED7), a third triangle including the third triangulation target point (PG_TTVT3), the fifth triangulation target point (PG_TTVT5), and the sixth triangulation target point (PG_TTVT6) can be generated.
[0086] The polygon from which the first triangle, the second triangle, and the third triangle are excluded from the polygon mesh (PG) may be a triangle. The polygon from which the first triangle, the second triangle, and the third triangle are excluded from the polygon mesh (PG) may include the third to fifth triangulation target points (PG_TTVT3 to PG_TTVT5) and may be the triangle. Therefore, a fourth triangle including the third triangulation target point (PG_TTVT3), the fourth triangulation target point (PG_TTVT4), and the fifth triangulation target point (PG_TTVT5) may be generated.
[0087] The above polygon mesh (PG) can be converted into a triangle mesh including the first to fourth triangles. The angle of each of the first to fourth triangles may be greater than 0 degrees and less than 180 degrees. That is, each of the first to fourth triangles may not be the degenerate triangle.
[0088] In this way, a method for converting first data including a polygon mesh according to embodiments of the present invention into second data including a triangle mesh may include a step (S100) of inputting a polygon mesh (PG) including points and edges, a step (S200) of generating a triangulation target point based on the point of the polygon mesh (PG), and a step (S500) of performing triangulation on the polygon mesh (PG) based on the triangulation target point. Therefore, the polygon mesh (PG) can be converted into the triangle mesh. Accordingly, the probability of occurrence of rendering artifacts can be reduced, and it can be ensured that textures are smoothly applied to the entire triangle mesh. In addition, since the triangle mesh is geometrically more stable, algorithms such as shortest distance calculation and geodesic distance calculation can be performed stably.
[0089] According to embodiments of the present invention, a computer-readable recording medium may be provided on which a program for executing on a computer a method of converting first data including a polygon mesh according to embodiments of the present invention into second data including a triangle mesh is recorded. The above-described method may be written as a program executable on a computer and may be implemented on a general-purpose digital computer that operates said program using a computer-readable medium. In addition, the structure of the data used in the above-described method may be recorded on the computer-readable medium through various means. The computer-readable medium may include program instructions, data files, data structures, etc., either alone or in combination. The program instructions recorded on said medium may be those specifically designed and configured for the present invention, or may be those known and available to a person skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The above-mentioned hardware device may be configured to operate as one or more software modules to perform the operation of the present invention.
[0090] Additionally, the method of converting first data including a polygon mesh into second data including a triangle mesh according to embodiments of the present invention may also be implemented in the form of a computer program or application executed by a computer stored in a recording medium.
[0091] The present invention relates to a method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, a method for converting first data including a polygon mesh into second data including a triangle mesh, and a computer-readable recording medium having a program for executing the same on a computer, wherein the polygon mesh can be converted into a triangle mesh.
[0092] Although the present invention has been described above with reference to preferred embodiments thereof, it will be understood by those skilled in the art that various modifications and changes may be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below.
Claims
1. A step of inputting first dental data including a polygon mesh including points and edges; A step of generating triangulation target points based on the points of the polygon mesh; and A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, the method comprising the step of performing triangulation on the polygon mesh based on the triangulation target points.
2. In claim 1, the step of generating the triangulation target point is, A step of determining whether the coordinates of the point of the polygon mesh match the coordinates of the point of a reference triangle mesh including points and edges; and A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, characterized in that it comprises a step of determining whether the point of the polygon mesh exists on the edge of the reference triangle mesh.
3. A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, wherein, in claim 2, when the coordinates of the point of the polygon mesh match the coordinates of the point of the reference triangle mesh, the step of generating the triangulation target point further includes the step of generating the point of the polygon mesh as the triangulation target point.
4. A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, wherein, in claim 2, when the point of the polygon mesh exists on the edge of the reference triangle mesh, the step of generating the triangulation target point further comprises the step of generating the point of the polygon mesh as a division point and dividing the reference triangle mesh based on the division point.
5. A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, wherein, in claim 4, when the point of the polygon mesh exists on the edge of the reference triangle mesh, the step of generating the triangulation target point further includes the step of generating the point of the polygon mesh as the triangulation target point.
6. A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, wherein, in claim 2, when the point of the polygon mesh does not exist on the edge of the reference triangle mesh, the step of generating the triangulation target point further includes the step of generating the point of the polygon mesh as the triangulation target point.
7. A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, characterized in that, in claim 2, it further includes the step of determining whether the point of the reference triangle mesh exists on the edge of the polygon mesh.
8. A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, characterized in that, in claim 7, when the point of the reference triangle mesh exists on the edge of the polygon mesh, the point of the reference triangle mesh is further generated as the triangulation target point.
9. In claim 1, the step of performing the triangulation on the polygon mesh based on the triangulation target points is, A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, characterized by including a step of determining whether the above-mentioned triangulation target point exists on the above-mentioned edge of the polygon mesh.
10. In claim 9, when the triangulation target point does not exist on the edge of the polygon mesh, the step of performing the triangulation on the polygon mesh based on the triangulation target point is A step of determining a triangulation target point that has the minimum angle formed with adjacent triangulation target points; and A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, characterized by further including the step of generating a triangle by generating an edge connecting the adjacent triangulation target points.
11. In claim 9, when the triangulation target point exists on the edge of the polygon mesh, the step of performing the triangulation on the polygon mesh based on the triangulation target point is A step of preferentially performing the triangulation on the triangulation target points existing on the edges of the polygon mesh; A step of determining a triangulation target point that has the minimum angle formed with adjacent triangulation target points; and A method for converting first dental data including a polygon mesh into second dental data including a triangle mesh, characterized by further including the step of generating a triangle by generating an edge connecting the adjacent triangulation target points.
12. A method for converting first dental data containing a polygon mesh into second dental data containing a triangle mesh, characterized in that, in claim 1, the triangle generated by performing the triangulation is further included as a triangle mesh in the second dental data.
13. In Clause 12, the angles of the degenerate triangle include 0 degrees or 180 degrees, and A method for converting first dental data including a polygon mesh, characterized in that the angle of the triangle is greater than 0 degrees and less than 180 degrees, into second dental data including a triangle mesh.
14. In Paragraph 12, A method for converting first dental data including a polygon mesh into second dental data including a triangular mesh, wherein the triangular mesh includes information about points, edges, and connection relationships between neighboring points and neighboring edges.
15. A step of inputting first data including a polygon mesh including points and edges; A step of generating triangulation target points based on the points of the polygon mesh; and A method for converting first data including a polygon mesh into second data including a triangle mesh, the method comprising the step of performing triangulation on the polygon mesh based on the triangulation target points.
16. In the 15th paragraph, the step of generating the triangulation target point is, A step of determining whether the coordinates of the point of the polygon mesh match the coordinates of the point of a reference triangle mesh including points and edges; and A method for converting first data including a polygon mesh into second data including a triangle mesh, characterized in that it comprises a step of determining whether the point of the polygon mesh exists on the edge of the reference triangle mesh.
17. A computer-readable recording medium having recorded thereon a program for executing the method of any one of claims 1 to 16 on a computer.
Citation Information
Patent Citations
Protection cover for electricity charging inlet of vehicle
KR1020230040789A
Ultra-membranes comprising cellulose acetate and cellulose derivative, and method for manufacturing the same
KR1020240063687A
Current sensor employing pre error detection for diagnosis of relay contact error detection and breakdown of electric load
KR1020240085923A
Apparatus and method for automatic registration of oral scan data and computed tomography image using crown segmentation of oral scan data
KR102273438B1
Story product service management server and serving method of story product
KR102844408B1