A data processing method, device and electronic equipment
By acquiring and processing the topological and geometric information of triangular meshes, and performing subdivision and smoothing, the inefficiency and accuracy of existing model representation methods in complex surface modeling and fine structure representation are solved, achieving more efficient display and storage of geometric objects.
Patent Information
- Application Number
- CN202411677883.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-21
- Publication Date
- 2025-11-28
- Estimated Expiration
- 2044-11-21
AI Technical Summary
Existing model representation methods suffer from insufficient efficiency and accuracy in areas such as complex surface modeling, fine structure representation, fast rendering, and real-time interaction.
By acquiring the topological and geometric information of the triangular mesh of the target geometry, subdivision processing is performed to generate a more accurate geometric display, and Laplacian smoothing is used to improve the display effect.
It improves the display accuracy and storage efficiency of geometry, reduces storage space usage, and reduces the computational burden on planar and linear boundaries, thereby improving computational efficiency.
Smart Images

Figure CN119693584B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of data processing, and more particularly, to a data processing method, a data processing device, and an electronic device. BACKGROUND
[0002] In computer-aided design, there are many representation methods for models, each of which has its own advantages and disadvantages and plays an important role in different application scenarios. Common representation methods include boundary representation (BRep), discrete mesh, constructive solid geometry, voxel representation, etc. These traditional methods have been widely used in CAD systems, but with the development of engineering design and manufacturing technology, there is an increasing demand for more efficient, flexible, and accurate model representation methods. For example, in complex surface modeling, fine structure representation, fast rendering, real-time interaction, and large-scale data processing, existing methods still have certain limitations. SUMMARY
[0003] An object of the present disclosure is to provide a data processing method, device, and electronic device.
[0004] According to a first aspect of the present disclosure, a data processing method is provided, comprising:
[0005] obtaining first topological information and first geometric information of a first triangular mesh of a target geometric body, the first geometric information representing shape features of the first triangular mesh;
[0006] generating and displaying the target geometric body in an interface according to the first topological information and the first geometric information.
[0007] Optionally, the first topological information includes first position data representing two first vertices corresponding to an edge of the first triangular mesh, and second position data representing three first vertices corresponding to a face of the first triangular mesh, and the first geometric information includes first geometric data representing a shape of the edge of the first triangular mesh, and second geometric data representing a shape of the face of the first triangular mesh.
[0008] Optionally, the generating and displaying the target geometric body in the interface according to the first topological information and the first geometric information comprises:
[0009] subdividing the first triangular mesh according to the first topological information and the first geometric information to obtain second topological information and second geometric information of a second triangular mesh;
[0010] generating and displaying the target geometric body in the interface according to the second topological information and the second geometric information.
[0011] Optionally, the step of obtaining the second topology information comprises:
[0012] According to the first position data, obtaining third position data of a corresponding subdivision point on an edge;
[0013] According to the first position data, the second position data and the third position data, obtaining fourth position data representing two second vertices corresponding to an edge of the second triangular mesh, and fifth position data representing three second vertices corresponding to a face of the second triangular mesh;
[0014] Taking the fourth position data and the fifth position data as the second topology information.
[0015] Optionally, the step of obtaining the second geometry information comprises:
[0016] According to the fourth position data, the first geometry data and the second geometry data, obtaining third geometry data representing a shape of an edge of the second triangular mesh, and fourth geometry data representing a shape of a face of the second triangular mesh;
[0017] Taking the third geometry data and the fourth geometry data as the second geometry data.
[0018] Optionally, the method further comprises:
[0019] According to the second geometry data, correcting the third position data.
[0020] Optionally, the step of correcting the third position data according to the second geometry data comprises:
[0021] According to the third position data, the second position data and the second geometry data, determining a point on a face of the first triangular mesh closest to the subdivision point as a projection point of the subdivision point;
[0022] Taking position data of the projection point as third position data of the corresponding subdivision point.
[0023] Optionally, the method further comprises:
[0024] Performing Laplacian smoothing processing on the generated target geometry.
[0025] According to a second aspect of the present disclosure, a data processing apparatus is provided, comprising:
[0026] An information obtaining module, configured to obtain first topology information and first geometry information of a first triangular mesh of a target geometry, the first geometry information representing shape features of the first triangular mesh;
[0027] The geometric body display module is configured to generate and display the target geometric body in an interface according to the first topology information and the first geometry information of the first triangular mesh of the target geometric body.
[0028] According to a third aspect of the present disclosure, an electronic device is provided, comprising a memory and a processor, the memory being configured to store a computer program for controlling the processor to perform the method according to the first aspect of the present disclosure.
[0029] According to the embodiments of the present disclosure, the target geometric body is generated and displayed in an interface according to the first topology information and the first geometry information of the first triangular mesh of the target geometric body, which can make the generated geometric body more accurate, and the target geometric body is stored based on the first topology information and the first geometry information of the first triangular mesh of the target geometric body, which can improve the storage efficiency and reduce the occupied storage space.
[0030] Other features and advantages of the present disclosure will be apparent from the following detailed description of exemplary embodiments thereof, taken in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS
[0031] The accompanying drawings incorporated in and forming a part of the specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0032] Figure 1 is a block diagram showing an example of a hardware configuration of an electronic device that can be used to implement embodiments of the present disclosure;
[0033] Figure 2 shows a flowchart of a data processing method according to an embodiment of the present disclosure;
[0034] Figure 3 shows a flowchart of an example of a data processing method according to an embodiment of the present disclosure;
[0035] Figure 4 shows a block diagram of a data processing apparatus according to an embodiment of the present disclosure;
[0036] Figure 5 shows a block diagram of an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0037] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. Note that the relative arrangement, numerical expressions, and numerical values of components and steps set forth in these embodiments are not limiting of the scope of the present disclosure unless otherwise specifically stated.
[0038] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way limiting of the scope of the present disclosure or its applications or uses.
[0039] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.
[0040] In all the examples shown and discussed herein, any specific values should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.
[0041] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.
[0042] <Hardware Configuration>
[0043] Figure 1 This is a block diagram illustrating the hardware configuration of an electronic device 1000 that can implement embodiments of the present disclosure.
[0044] Electronic device 1000 can be a portable computer, desktop computer, mobile phone, tablet computer, etc. For example... Figure 1 As shown, the electronic device 1000 may include a processor 1100, a memory 1200, an interface device 1300, a communication device 1400, a display device 1500, an input device 1600, a speaker 1700, a microphone 1800, etc. The processor 1100 may be a CPU, a microprocessor (MCU), etc. The memory 1200 may include, for example, ROM (Read-Only Memory), RAM (Random Access Memory), or non-volatile memory such as a hard disk. The interface device 1300 may include, for example, a USB interface, a headphone jack, etc. The communication device 1400 may be capable of wired or wireless communication, specifically including Wi-Fi communication, Bluetooth communication, 2G / 3G / 4G / 5G communication, etc. The display device 1500 may be, for example, an LCD screen, a touch screen, etc. The input device 1600 may include, for example, a touch screen, a keyboard, motion input, etc. Users can input / output voice information through the speaker 1700 and the microphone 1800.
[0045] Figure 1 The electronic devices shown are merely illustrative and in no way intended to limit this disclosure, its application, or use. In embodiments applied to this disclosure, the memory 1200 of the electronic device 1000 is used to store instructions for controlling the processor 1100 to operate and perform any of the data processing methods provided in embodiments of this disclosure. Those skilled in the art will understand that, although... Figure 1The electronic device 1000 is shown to include a plurality of devices, but the present disclosure can only involve some of the devices, for example, the electronic device 1000 only involves the processor 1100 and the storage device 1200. A skilled person can design instructions according to the solutions disclosed in the present disclosure. How the instructions control the processor to operate is known in the art, and therefore will not be described in detail here.
[0046] Next, taking the electronic device 1000 as an embodiment, various embodiments of the data processing method are described. Figure 1
[0047] <Method Embodiment>
[0048] Figure 2 A data processing method according to some embodiments is shown, which is implemented by an electronic device, which can be specifically the electronic device 1000 described above. The data processing method can include the following steps S210 to S220:
[0049] Step S210, obtaining first topological information and first geometric information of a first triangular mesh of a target geometric body, the first geometric information representing shape features of the first triangular mesh.
[0050] In an embodiment of the present disclosure, the first topological information and the first geometric information can be obtained from a specified file stored in the electronic device, and the file type of the specified file can be a specified file type, for example, the file type of the specified file can be a UDO type.
[0051] Further, the specified file can be created by a user on the electronic device 1000, can be automatically generated according to a target geometric body drawn by the user through the electronic device 1000, or can be transmitted to the electronic device 1000 by another electronic device.
[0052] In an embodiment in which the specified file is automatically generated according to a target geometric body drawn by a user through the electronic device 1000, the user can stretch basic shapes such as rectangles, circles, triangles, and ellipses to obtain basic geometric bodies, and then perform Boolean operations (such as union, intersection, difference, etc.) on basic geometric bodies such as cubes, spheres, and cylinders to form a target geometric body. For each basic geometric body in the target geometric body, it can be split into a plurality of first triangular meshes based on the corresponding rules, and then the first topological information and the first geometric information of the first triangular meshes of all basic geometric bodies in the target geometric body are used to generate the specified file.
[0053] For the basic geometric body composed of straight edges and planes such as prism, pyramid, frustum, etc., all the planes can be converted into triangular patches by connecting a set of diagonals of the polygon, and such basic geometric body is converted into the first triangular mesh; for cylinder, cone and circular frustum, the bottom circle (the bottom of the cone, the upper and lower bottom of the cylinder and the circular frustum) is trisected, and the upper and lower bottom is connected in zigzag, and the curve and surface information is added to the corresponding surface, so that such geometric shape is converted into the first triangular mesh; for the sphere, the inscribed tetrahedron is defined, and the sphere is converted into the first triangular mesh; for other surfaces that can be represented as a parametric surface (often from sweeping and lofting), the first vertex can be obtained by uniform sampling on the parametric surface, and the boundary of the surface is obtained by preferentially sampling on the boundary of the surface (which is also a curve), and then the first triangular mesh is obtained by uniformly scattering points in the interior of the surface (without considering the area of the triangle connected or the curvature of the surface, because the surface is recorded separately, and even if the sampling is poor, the information will not be lost).
[0054] In one embodiment of the present disclosure, the first topological information includes first position data representing two first vertices corresponding to an edge of the first triangular mesh, and second position data representing three first vertices corresponding to a face of the first triangular mesh, and the first geometric information includes first geometric data representing a shape of the edge of the first triangular mesh, and second geometric data representing a shape of the face of the first triangular mesh.
[0055] In one embodiment, the first topological information can further include the identification and coordinate position of the first vertex of the triangular mesh, and the first position data can include the identification of the two first vertices, the coordinate position of the two first vertices, or both the identification and the coordinate position of the two first vertices; the second position data can include the identification of the three first vertices, the coordinate position of the three first vertices, or both the identification and the coordinate position of the three first vertices.
[0056] In this embodiment, the shape of the face of the first triangular mesh is the same as the shape of the surface on which the first triangular mesh is located. The first geometric data and the second geometric data can be determined according to the geometric data of the surface on which the first triangular mesh is located.
[0057] Specifically, the first geometric data can be a curve function representing the shape of the edge corresponding to the first triangular mesh, and the curve function can be a function representing a line segment, a subdivided line, a circular arc, a parabola, an ellipse, a hyperbola, etc. The second geometric data can be a surface function representing the shape of the face corresponding to the first triangular mesh, and the surface function can be a function representing a plane, a subdivided surface, a cylindrical surface, a conical surface, a spherical surface and other quadratic surfaces.
[0058] In step S220, the target geometry is generated and displayed in the interface according to the first topology information and the first geometry information of the first triangular mesh.
[0059] In the embodiment, the target geometry is generated and displayed in the interface according to the first topology information and the first geometry information of the first triangular mesh, so that the generated geometry is more accurate. Moreover, the target geometry is stored based on the first topology information and the first geometry information of the first triangular mesh, so that the storage efficiency is improved and the occupied storage space is reduced.
[0060] In addition, in the process of displaying the target geometry by the method of the embodiment, the calculation pressure is smaller when the planar and linear boundaries are operated and processed, and the calculation is easier to be parallel, so that the calculation efficiency is improved.
[0061] In one embodiment of the present disclosure, the target geometry is generated and displayed in the interface according to the first topology information and the first geometry information, including the following: the first triangular mesh is subdivided according to the first topology information and the first geometry information to obtain second topology information and second geometry information of a second triangular mesh; and the target geometry is generated and displayed in the interface according to the second topology information and the second geometry information.
[0062] In the embodiment, the triangular mesh can be subdivided at least once, and each subdivision process is the same. The embodiment only takes one subdivision process as an example for description.
[0063] Specifically, the first triangular mesh is subdivided, and each first triangular mesh is subdivided into four second triangular meshes.
[0064] In one embodiment of the present disclosure, the step of obtaining the second topology information includes: obtaining third position data of a subdivision point on a corresponding edge according to the first position data; obtaining fourth position data representing two second vertices corresponding to an edge of the second triangular mesh and fifth position data representing three second vertices corresponding to a face of the second triangular mesh according to the first position data, the second position data and the third position data; and taking the fourth position data and the fifth position data as the second topology information.
[0065] In the embodiment, one subdivision point can be taken from each edge of the first triangular mesh, and the third position data of the subdivision point is obtained. The subdivision point and the first vertex of the first triangular mesh constitute the second vertex of the second triangular mesh.
[0066] Further, for each first triangular mesh, connecting each two subdivision points, connecting each subdivision point with two first vertices located on the same edge in the second triangular mesh, to obtain edges of the second triangular mesh, according to the first position data, the second position data and the third position data, fourth position data representing two second vertices corresponding to the edges of the second triangular mesh can be obtained, and fifth position data representing three second vertices corresponding to the faces of the second triangular mesh can be obtained.
[0067] Further, on the basis of the fourth position data and the fifth position data, the obtained second triangular mesh can be taken as the first triangular mesh, the fourth position data can be taken as the first position data, and the fifth position data can be taken as the second position data, and the first triangular mesh can be continuously subdivided, and in the case that the subdivision times reach a set number of times, the finally obtained fourth position data and fifth position data can be taken as the second topological information.
[0068] The set number of times is a positive integer set by the user according to actual needs of the user. The greater the set number of times is, the higher the calculation complexity is, and the higher the accuracy of the target geometric body displayed in the interface is; the smaller the set number of times is, the lower the calculation complexity is, and the lower the accuracy of the target geometric body displayed in the interface is.
[0069] In an embodiment of the present disclosure, the method further comprises: correcting the third position data according to the second geometric data.
[0070] Specifically, the third position data is corrected according to the second geometric data, comprising: determining a point on a face of the first triangular mesh closest to a subdivision point as a projection point of the subdivision point according to the third position data, the second position data and the second geometric data; and taking position data of the projection point as the third position data of the corresponding subdivision point.
[0071] In the embodiment, when the edge on the curved surface is subdivided, it cannot be guaranteed that the subdivision point also falls on the curved surface, and if not corrected, the shape of the finally obtained target geometric body will be distorted in the subdivision.
[0072] Through the embodiment, the third position data is corrected by using the projection method, that is, the subdivision point is corrected to its projection position on the original curved surface, and the projection process is to find a point on the original curved surface closest to the subdivision point, and then the projection point of the subdivision point is used to replace the corresponding subdivision point. In this way, the display accuracy of the target geometric body can be improved.
[0073] In one embodiment of the present disclosure, the step of obtaining the second geometry information comprises: obtaining, according to the fourth position data, the first geometry data and the second geometry data, third geometry data representing shapes of edges of the second triangular mesh, and fourth geometry data representing shapes of faces of the second triangular mesh; and taking the third geometry data and the fourth geometry data as the second geometry information.
[0074] In the present embodiment, in the case where the first first triangular mesh is subdivided to obtain the first second triangular mesh, the shapes of the subdivided faces of the first second triangular mesh are the same as the shapes of the faces of the first first triangular mesh. Therefore, the fourth geometry data representing the shapes of the faces of the first second triangular mesh is the same as the second geometry data representing the shapes of the faces of the first second triangular mesh.
[0075] Further, in the case where the first edge of the first second triangular mesh coincides with the first edge of the first first triangular mesh, the first geometry data representing the shape of the first edge of the first first triangular mesh can be taken as the third geometry data representing the shape of the first edge of the first second triangular mesh.
[0076] Still further, in the case where the second edge of the first second triangular mesh does not coincide with any edge of the first first triangular mesh, the third geometry data representing the shape of the second edge of the first second triangular mesh can be obtained according to the fourth position data and the second geometry data.
[0077] In the present embodiment, according to the second topology information and the second geometry information, the target geometry is generated and displayed in the interface, which can improve the display precision of the target geometry and improve the display effect of the target geometry.
[0078] In one embodiment of the present disclosure, after step S220, the method further comprises: performing Laplace smoothing processing on the generated target geometry.
[0079] Through the present embodiment, the displayed target geometry can be made smoother.
[0080] Figure 3 A flowchart schematically showing one example of a data processing method of an embodiment of the present disclosure is shown in FIG. 1, which can comprise the following steps: Figure 3 As shown in FIG. 1, the data processing method can comprise the following steps:
[0081] In step S301, first topology information and first geometry information of a first triangular mesh of a target geometry are obtained, and the first geometry information represents shape features of the first triangular mesh.
[0082] In step S302, third position data of subdivided points on corresponding edges is obtained according to first position data.
[0083] In step S303, a point on a face of the first triangular mesh closest to the subdivision point is determined as the projection point of the subdivision point according to the third position data, the second position data and the second geometry data.
[0084] In step S304, the position data of the projection point is taken as the third position data of the corresponding subdivision point.
[0085] In step S305, fourth position data representing two second vertices corresponding to an edge of the second triangular mesh and fifth position data representing three second vertices corresponding to a face of the second triangular mesh are obtained according to the first position data, the second position data and the third position data.
[0086] In step S306, it is judged whether the number of subdivision processing reaches a set number, if yes, step S308 is executed; if no, step S307 is executed.
[0087] In step S307, the obtained second triangular mesh is taken as the first triangular mesh, the fourth position data is taken as the first position data, and the fifth position data is taken as the second position data.
[0088] In step S308, third geometry data representing the shape of an edge of the second triangular mesh and fourth geometry data representing the shape of a face of the second triangular mesh are obtained according to the fourth position data, the first geometry data and the second geometry data.
[0089] In step S309, the fourth position data and the fifth position data are taken as the second topology information, and the third geometry data and the fourth geometry data are taken as the second geometry information.
[0090] In step S310, the target geometry is generated and displayed in an interface according to the second topology information and the second geometry information.
[0091] <Device Embodiment>
[0092] Figure 4 A constituent structure schematic diagram of a data processing device according to an embodiment of the present disclosure is shown. As shown in the figure, the data processing device 400 includes an information acquisition module 410 and a geometry display module 420. Figure 4
[0093] The information acquisition module 410 is configured to acquire first topology information of a first triangular mesh of a target geometry and first geometry information representing shape features of the first triangular mesh.
[0094] The geometry display module 420 is configured to generate and display the target geometry in an interface according to the first topology information and the first geometry information.
[0095] In an embodiment of the present disclosure, the first topology information comprises first position data representing two first vertices corresponding to an edge of the first triangular mesh, second position data representing three first vertices corresponding to a face of the first triangular mesh, and the first geometry information comprises first geometry data representing a shape of the edge of the first triangular mesh, second geometry data representing a shape of the face of the first triangular mesh.
[0096] In an embodiment of the present disclosure, the geometry display module 420 is configured to:
[0097] subdivide the first triangular mesh according to the first topology information and the first geometry information to obtain second topology information and second geometry information of a second triangular mesh;
[0098] generate and display the target geometry in an interface according to the second topology information and the second geometry information.
[0099] In an embodiment of the present disclosure, the step of obtaining the second topology information comprises:
[0100] obtaining third position data of a subdivision point on the corresponding edge according to the first position data;
[0101] obtaining fourth position data representing two second vertices corresponding to an edge of the second triangular mesh, and fifth position data representing three second vertices corresponding to a face of the second triangular mesh according to the first position data, the second position data and the third position data;
[0102] taking the fourth position data and the fifth position data as the second topology information.
[0103] In an embodiment of the present disclosure, the step of obtaining the second geometry information comprises:
[0104] obtaining third geometry data representing a shape of the edge of the second triangular mesh, and fourth geometry data representing a shape of the face of the second triangular mesh according to the fourth position data, the first geometry data and the second geometry data;
[0105] taking the third geometry data and the fourth geometry data as the second geometry data.
[0106] In an embodiment of the present disclosure, the data processing apparatus 400 further comprises:
[0107] a correction module configured to correct the third position data according to the second geometry data.
[0108] In an embodiment of the present disclosure, the correction module is configured to:
[0109] determine, according to the third position data, the second position data and the second geometry data, a point on a face of the first triangular mesh that is closest to the subdivision point as a projection point of the subdivision point;
[0110] obtain position data of the projection point as third position data of the corresponding subdivision point.
[0111] In an embodiment of the present disclosure, the data processing apparatus 400 further comprises:
[0112] a smoothing module configured to perform Laplacian smoothing on the generated target geometry.
[0113] <Device Embodiment>
[0114] In the present embodiment, an electronic device is provided, such as Figure 5 As shown in FIG. 5, the electronic device 500 comprises a processor 510 and a memory 520. The memory 520 is configured to store a computer program, and the computer program is configured to control the processor 510 to perform the method according to any embodiment of the present disclosure.
[0115] The electronic device of the present embodiment may, for example, be a user terminal such as a mobile phone, a tablet computer, a PC, etc.
[0116] <Computer-readable Storage Medium>
[0117] In the present embodiment, a computer-readable storage medium is also provided, which stores a computer program. When the computer program is executed by a processor, the method according to any embodiment of the present disclosure is implemented.
[0118] The present disclosure can be a system, a method, and / or a computer program product. The computer program product can include a computer readable storage medium having computer readable program instructions embodied therewith. The computer readable storage medium can be used to store the computer readable program instructions.
[0119] Computer readable storage media can be tangible storage media which can retain and store instructions for use by an instruction execution device. Computer readable storage media can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer readable storage media include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
[0120] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.
[0121] Computer readable program instructions for carrying out operations of the present disclosure can be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate array (FPGA), or programmable logic array (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.
[0122] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0123] These computer readable program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions can also be stored in a computer readable storage medium that can include random access memory (RAM), read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other data storage device. When the computer readable program instructions are loaded into the computer and other programmable data processing apparatus, a series of operational steps are implemented that provide processes such that the instructions which operate on the computer or other programmable data processing apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0124] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer, other programmable data processing apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0125] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer, other programmable data processing apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0126] Embodiments of the present disclosure have been described above, and the description is intended to be illustrative, and not restrictive, of the disclosed embodiments. Many modifications and variations of the disclosed embodiments are possible in light of the above teachings. It is thus to be understood that changes can be made by those skilled in the art, with the intent to apply principles of the disclosure, within the scope of the disclosure. The scope of the disclosure is defined by the appended claims.
Claims
1. A data processing method, comprising: Obtain first topological information and first geometric information of the first triangular mesh of the target geometry, wherein the first geometric information represents the shape features of the first triangular mesh; Based on the first topological information and the first geometric information, the target geometry is generated and displayed in the interface; The first topological information includes first position data representing the two first vertices corresponding to the edges of the first triangular mesh and second position data representing the three first vertices corresponding to the faces of the first triangular mesh. The first geometric information includes first geometric data representing the shape of the edges of the first triangular mesh and second geometric data representing the shape of the faces of the first triangular mesh. The step of generating and displaying the target geometry in the interface based on the first topological information and the first geometric information includes: The first triangular mesh is subdivided based on the first topological information and the first geometric information to obtain the second topological information and the second geometric information of the second triangular mesh. Based on the second topology information and the second geometric information, the target geometry is generated and displayed in the interface; The steps to obtain the second topology information include: Based on the first position data, the third position data of the subdivision point on the corresponding edge is obtained; Based on the first position data, the second position data, and the third position data, fourth position data representing the two second vertices corresponding to the edges of the second triangular mesh and fifth position data representing the three second vertices corresponding to the faces of the second triangular mesh are obtained. The fourth location data and the fifth location data are used as the second topology information; The method further includes: The third position data is corrected based on the second geometric data; The step of correcting the third position data based on the second geometric data includes: Based on the third position data, the second position data, and the second geometric data, determine the point on the surface of the first triangular mesh that is closest to the subdivision point, and use it as the projection point of the subdivision point; The position data of the projection point is used as the third position data of the corresponding subdivision point.
2. The method according to claim 1, wherein the step of obtaining the second geometric information comprises: Based on the fourth position data, the first geometric data, and the second geometric data, third geometric data representing the shape of the edges of the second triangular mesh and fourth geometric data representing the shape of the faces of the second triangular mesh are obtained. The third and fourth geometric data are used as the second geometric data.
3. The method according to claim 1, further comprising: The generated target geometry is smoothed using Laplacian.
4. A data processing apparatus, comprising: The information acquisition module is used to acquire the first topological information and the first geometric information of the first triangular mesh of the target geometry, wherein the first geometric information represents the shape features of the first triangular mesh; A geometry display module is used to generate and display the target geometry in the interface based on the first topology information and the first geometry information; The first topological information includes first position data representing the two first vertices corresponding to the edges of the first triangular mesh and second position data representing the three first vertices corresponding to the faces of the first triangular mesh. The first geometric information includes first geometric data representing the shape of the edges of the first triangular mesh and second geometric data representing the shape of the faces of the first triangular mesh. The geometry display module is used to: subdivide the first triangular mesh according to the first topological information and the first geometric information to obtain the second topological information and the second geometric information of the second triangular mesh; Based on the second topology information and the second geometric information, the target geometry is generated and displayed in the interface; The steps for obtaining the second topology information include: obtaining third position data of the subdivision points on the corresponding edges based on the first position data; obtaining fourth position data representing the two second vertices corresponding to the edges of the second triangular mesh and fifth position data representing the three second vertices corresponding to the faces of the second triangular mesh based on the first position data, the second position data and the third position data; and using the fourth position data and the fifth position data as the second topology information. The data processing device further includes: a correction module, used to correct the third position data according to the second geometric data; The correction module is used to: determine the point on the surface of the first triangular mesh that is closest to the subdivision point based on the third position data, the second position data, and the second geometric data, and use it as the projection point of the subdivision point; and use the position data of the projection point as the third position data of the corresponding subdivision point.
5. An electronic device comprising a memory and a processor, the memory being used to store a computer program, the computer program being used to control the processor to perform the method as described in any one of claims 1 to 3.
Citation Information
Patent Citations
Geometric model processing method and device, electronic equipment and storage medium
CN115828349A
Tooth three-dimensional grid data segmentation method, electronic equipment and medium
CN118229915A