Display method of three-dimensional model and related equipment

By determining the display structure and actions of the three-dimensional model, selecting and sorting functional nodes, the complexity and cost of three-dimensional model editing are solved, and efficient display and interaction of the three-dimensional model is achieved.

CN119784986APending Publication Date: 2025-04-08ZHEJIANG ZEEKR INTELLIGENT TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411941235.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-04-08

AI Technical Summary

Technical Problem

In the prior art, the operation of three-dimensional models is complex and the editing cost is high. Especially for ordinary users, it is difficult to achieve efficient display and interaction of three-dimensional models.

Method used

By determining the display structure and display actions of the three-dimensional model, selecting functional nodes, and automatically generating the execution order of the functional nodes according to the display order of the display structure, thereby achieving a concise display of the three-dimensional model.

Benefits of technology

It reduces the complexity and cost of 3D model editing, improves editing efficiency, and allows ordinary users to easily display and interact with 3D models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119784986A_ABST
    Figure CN119784986A_ABST
Patent Text Reader

Abstract

The invention provides a three-dimensional model display method and related equipment, and the method comprises the steps: determining a display structure of a three-dimensional model and a display action corresponding to the display structure in response to a display request of the three-dimensional model; selecting N function nodes according to the display structure and the display action; obtaining a display sequence of the display structure, and determining an execution sequence of the N function nodes; and displaying the three-dimensional model according to the execution sequence of the N function nodes. According to the method, the display interaction operation of the three-dimensional model is simplified, and the editing efficiency of the three-dimensional model is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of image technology, and in particular to a three-dimensional model display method and related equipment. Background Art

[0002] With the development of 3D technology, more and more 3D models are used in life. In related technologies, the operation of 3D models is complicated and the cost of editing 3D models is high. When editing complex 3D models, a large number of 3D model nodes need to be called, resulting in reduced operating efficiency of 3D models. Compared with professionals, the 3D model needs of ordinary users are only to display 3D models or to interact with 3D models. They do not need to perform complex editing on 3D models and complete precise operations on 3D models.

[0003] How to provide a concise 3D model display method to enhance the user's 3D model editing experience is an urgent problem to be solved. Summary of the invention

[0004] In view of this, the present application provides a three-dimensional model display method and related equipment, which can simplify the editing operation of the three-dimensional model and improve the editing efficiency of the three-dimensional model.

[0005] A first aspect of an embodiment of the present application provides a method for displaying a three-dimensional model, comprising: in response to a display request for the three-dimensional model, determining a display structure of the three-dimensional model and a display action corresponding to the display structure; selecting N functional nodes according to the display structure and the display action; obtaining a display order of the display structure and determining an execution order of the N functional nodes; and displaying the three-dimensional model according to the execution order of the N functional nodes.

[0006] Compared with the related art, the embodiments of the present application have at least the following advantages: By determining the display structure and the display action corresponding to the display structure, and selecting a series of function nodes, this application allows users to perform three-dimensional editing of three-dimensional models without learning complex coding by selecting function nodes, which greatly reduces the difficulty of development and facilitates user debugging. At the same time, this application automatically generates a series of target function nodes of the display structure according to the display order of the display structure, and performs three-dimensional display of the three-dimensional model according to the execution order of N function nodes, which can facilitate the display and interaction of three-dimensional models and improve the editing and development efficiency of three-dimensional models.

[0007] In a second aspect, an embodiment of the present application further provides a three-dimensional model display device, comprising: A response module, used to respond to a display request of the three-dimensional model and determine a display structure of the three-dimensional model and a display action corresponding to the display structure; The acquisition module is used to select N function nodes according to the display structure and display action; A determination module is used to obtain the display order of the display structure and determine the execution order of N function nodes; The display module is used to display the three-dimensional model according to the execution order of N functional nodes.

[0008] In a third aspect, an embodiment of the present application further provides an electronic device, the electronic device comprising a processor and a memory, the memory being used to store instructions, and the processor being used to call the instructions in the memory so that the electronic device executes the three-dimensional model display method as in the first aspect.

[0009] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium, which stores computer instructions. When the computer instructions are executed on an electronic device, the electronic device executes the three-dimensional model display method as in the first aspect.

[0010] The technical effects obtained by the above-mentioned second, third and fourth aspects are similar to the technical effects obtained by the corresponding technical means in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figure 1 A schematic diagram of an implementation environment for a three-dimensional model display method provided in one embodiment of the present application.

[0012] Figure 2 A flowchart of the steps of a method for displaying a three-dimensional model provided in one embodiment of the present application.

[0013] Figure 3 A flowchart of a three-dimensional model editing function node provided in one embodiment of the present application.

[0014] Figure 4 A schematic diagram of the node structure of a series of target nodes of a three-dimensional model provided in one embodiment of the present application.

[0015] Figure 5 A functional module diagram of a three-dimensional model display device provided in one embodiment of the present application.

[0016] Figure 6 A schematic diagram of the structure of an electronic device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0017] In order to more clearly understand the above-mentioned purposes, features and advantages of the present application, the present application is described in detail below in conjunction with the accompanying drawings and specific implementation methods. It should be noted that the implementation methods of the present application and the features in the implementation methods can be combined with each other without conflict.

[0018] In the following description, many specific details are set forth to facilitate a full understanding of the present application. The described implementations are only part of the implementations of the present application, rather than all the implementations.

[0019] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein in the specification of this application are only for the purpose of describing specific embodiments and are not intended to limit this application.

[0020] It should be further noted that, in this article, the terms "comprises", "includes" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.

[0021] In this application, "at least one" means one or more, and "more" means two or more than two. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The terms "first", "second", "third", "fourth", etc. (if any) in the specification, claims and drawings of this application are used to distinguish similar objects, rather than to describe a specific order or sequence.

[0022] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.

[0023] The embodiments of the present application provide a three-dimensional model display method and related equipment, which can realize the editing of the three-dimensional model of a specific business and improve the stability of the editing of the three-dimensional model.

[0024] Please refer to Figure 1 , Figure 1 A schematic diagram of an implementation environment for a three-dimensional model display method provided in one embodiment of the present application.

[0025] Those skilled in the art will understand that Figure 1The schematic diagram of the implementation environment for editing the three-dimensional model shown is merely an example. The implementation environment described in the embodiment of the present application is intended to more clearly illustrate the technical solution of the embodiment of the present application, and does not constitute a limitation on the technical solution provided in the embodiment of the present application. A person of ordinary skill in the art can appreciate that with the emergence of new business scenarios, the technical solution provided in the embodiment of the present application is also applicable to similar technical problems.

[0026] exist Figure 1 In the embodiment of the present application, the implementation environment for editing the three-dimensional model provided by the embodiment of the present application may include a terminal 110 and a server 120. The server 120 may be integrated with a display device of the three-dimensional model provided by the embodiment of the present application. Among them, the terminal 110 may be, but is not limited to, other user devices (not shown in the figure) that establish a communication connection with the device 120. The terminal 110 and the server 120 are connected via a network.

[0027] Optionally, in this embodiment, the terminal may be a terminal device configured with a target client, and may include but is not limited to at least one of the following: a mobile phone (such as an Android phone, an iOS phone, etc.), a laptop, a tablet computer, a PDA, a MID (Mobile Internet Devices), a PAD, a desktop computer, a smart TV, etc. The above network may include but is not limited to: a wired network, a wireless network, wherein the wired network includes: a local area network, a metropolitan area network and a wide area network, and the wireless network includes: Bluetooth, WIFI and other networks that implement wireless communication. The above server may be a single server, or a server cluster consisting of multiple servers, or a cloud server. The above is only an example, and this embodiment does not make any limitation to this.

[0028] Terminal 110 provides a visualization interface for the editing scene of the three-dimensional model, and multiple visualization editing components are presented on the visualization interface for the user to select. According to the user's operation instructions on the visualization editing components on the visualization interface, the display structure of the three-dimensional model and the display action corresponding to the display structure can be determined.

[0029] The server 120 can execute the editing of the three-dimensional model provided in the embodiment of the present application, so as to simplify the editing operation of the three-dimensional model in the actual three-dimensional editing scene and improve the editing efficiency of the three-dimensional model.

[0030] It is understandable that the server 120 can be an independent server, or a server network or server cluster composed of servers. For example, the server 120 described in the embodiment of the present application includes but is not limited to a computer, a network host, a single network server, a plurality of network server sets or a cloud server composed of a plurality of servers. Among them, the cloud server is composed of a large number of computers or network servers based on cloud computing. It should be noted that the display scene of the above-mentioned three-dimensional model is not limited to only in the server, but also used in the terminal 110.

[0031] Please refer to Figure 2 , Figure 2 This is a flowchart of the steps of an embodiment of the method for displaying a three-dimensional model of the present application. According to different requirements, the order of the steps in the flowchart can be changed, and some steps can be omitted. The method for displaying a three-dimensional model can be applied to Figure 1 The server 120 is shown, but is not limited to this, and the embodiments of the present application are not limited to this.

[0032] The specific process of this embodiment is as follows Figure 2 As shown, the following steps are included: Step 210: In response to a request for displaying a three-dimensional model, determine a display structure of the three-dimensional model and a display action corresponding to the display structure.

[0033] The display structure of the three-dimensional model and the display action corresponding to the display structure can be determined by responding to an operation instruction input by the user in the terminal.

[0034] In one embodiment, during the display process of editing a three-dimensional model, the display structure of the three-dimensional model and the display action corresponding to the display structure are determined, including: reading the three-dimensional information of the three-dimensional model, and generating a visual editing component of the three-dimensional model on a visual interface based on the three-dimensional information; based on the display request, determining the user's operation instructions for the visual editing component to obtain the display structure and the display action.

[0035] Figure 3 An embodiment is provided for the present application, for obtaining and determining a display structure of a three-dimensional model and a display action corresponding to the display structure, including: Step 310: Create an editing project for the three-dimensional model.

[0036] Among them, by reading the local Project.json file (this file will be updated when the project is created and the operation changes), all project directory and hierarchy information are saved and read in JSON format. Since it is a desktop application, there is no permission issue such as obtaining local files.

[0037] Step 320: Import the 3D model into the editor.

[0038] The reading process includes: dragging to obtain the file path. Reading the 3D model file into memory, reading the 3D model file from the storage medium into a data structure that the program can process. Parsing the 3D model file to extract the model's geometric information, material, animation and other data. This step involves parsing the binary or text data of the 3D model file to understand its internal structure and organization.

[0039] Step 330: Create an editable object of the three-dimensional model.

[0040] Among them, the editable objects created include: vertex buffer objects, texture objects, shader programs, etc., and the parsed data is converted into objects that can be understood and used by the current rendering program.

[0041] Step 340: Create a prefabricated body of the three-dimensional model.

[0042] Automatically generate prefabs, using the rendering pipeline and drawing functions of the current rendering program. Prefabs are pre-prepared 3D model editors that can be reused and utilized. The main function of prefabs is to reduce repetitive work in 3D development. By creating a template object, you can quickly copy multiple identical objects, and you can modify the parameters of these copied objects at any time.

[0043] Step 350: import the prefabricated body of the three-dimensional model into the editor.

[0044] Copy the model's geometric information, materials, animation and other data into a prefab. Drag the prefab to the display area in the middle of the editor to complete the rendering and automatic display. In this application, the editor generates a visual editing component based on the prefab, and the three-dimensional model can be edited based on the visual component. For example, for the three-dimensional model of the car, get the editable object component of the car door, click on the editable object component of the car door, and an instruction box pops up. Enter the operation instruction in the instruction box, for example: rotate X meters, move Y meters, then determine that the display structure of the three-dimensional model is the car door, and the display action corresponding to the display structure is to rotate the car door by X meters and move Y meters.

[0045] Step 220: Select N function nodes according to the display structure and display action.

[0046] Among them, the function node is the basic unit for processing and operating 3D models. Complex image processing processes can be created by connecting different function nodes. Each function node represents a specific operation or effect. By selecting and connecting different nodes, users can flexibly create complex image processing effects.

[0047] In this embodiment, the function nodes are managed through a hash table and an event system. The hash table stores and manages the function nodes through key-value pairs. For example, each function node has a unique identifier (the key in the key-value pair), and the hash table can quickly find the corresponding node data through this identifier and the key-value pair. The event system is responsible for monitoring the triggering operation of the function node, and then passing the triggering operation into the hash table, and executing the corresponding function node through the hash table. For example, when the mouse clicks on the left front door of the display area model, and then drags the left front door to the selection node in the editor on the right, the triggering operation of the selection node is completed, and then the program will automatically generate a node chain of the left front door in the hash table in the form of a queue.

[0048] In one embodiment, the functional nodes include at least: a selection node, a moving node, a rotation node and a time node. The selection node is used to indicate the display structure, the moving node is used to determine the moving direction and movement parameters of the display action; the rotation node is used to determine the rotation direction and rotation parameters of the display action, and the time node is used to determine the duration of the display action.

[0049] In this embodiment, the three-dimensional model is divided into a plurality of three-dimensional display structures, and each display structure corresponds to a selection node. When the selection node is moved, the display structure also moves accordingly. It should be noted that the selection node may also refer to the camera perspective in addition to indicating the display structure of the three-dimensional model. When the selection node is the camera perspective, the display perspective can be switched, for example, from the main perspective to the slave perspective, for example, when displaying the car door, from the outside perspective to the inside perspective. The display action includes at least a moving action and a rotation action. The moving node displays the direction and movement parameters of the moving action. For example, the parameters of a moving node include: moving the display structure in the X direction by Y meters. The rotating node displays the rotation direction and rotation parameters of the rotation action. For example, a rotating node includes: rotating 360 degrees at the original position of the display structure.

[0050] In one embodiment, the function node further includes: a light effect node, and the light effect node is used to add rendering light effects to the three-dimensional model when displaying the three-dimensional model.

[0051] The light effect node includes at least one or more of an external light node, an internal light node and a transparent transformation node. The external light node is used to determine the time and number of times the display structure emits light externally, and the internal light node is used to determine the time and number of times the display structure emits light internally. The transparent transformation node is used to determine the time and number of times the display structure performs transparent transformation, wherein the transparent transformation of the display structure includes performing streamer operation on the display structure.

[0052] The above-mentioned light effect nodes, rotation nodes and mobile nodes all depend on the selection node and the time node. Only when the selection node is determined, the above-mentioned light effect nodes, rotation nodes and mobile nodes are executed, and the execution time of the light effect nodes, rotation nodes and mobile nodes is determined according to the time node.

[0053] In this embodiment, the operation of obtaining the function node includes: a selection operation, a replacement operation and a waiting operation. Among them, the selection operation refers to selecting one or some parts or maps of the model. The replacement operation refers to replacing according to the conditions according to the selected part, or replacing according to the conditions according to the selected map. The waiting operation includes executing a certain node according to the intermediate node, for example, waiting for 2 seconds.

[0054] Step 230: Obtain the presentation order of the presentation structure and determine the execution order of the N function nodes.

[0055] In this embodiment, a specific function is composed of N function nodes, and the function nodes are connected to form a complete function, and the functions are connected to form a complete function set.

[0056] In one embodiment, N functional nodes are selected according to a display structure and a display action, including: determining a series of preset display functions required to complete the display action, each preset display function corresponds to at least one rotation node, at least one movement node and at least one time node; determining a selection node corresponding to the display structure; and determining at least one rotation node, at least one movement node and at least one time node corresponding to the selection node according to the selection node corresponding to the display structure and the display action corresponding to the display structure.

[0057] In this embodiment, a preset display function corresponds to at least one rotation node and at least one movement node. The rotation node and the movement node are used to indicate the position to which the three-dimensional model needs to be moved and the rotation operation to be performed. A time node is also required to indicate the duration of the movement node and the rotation node.

[0058] In a specific application scenario, the display request of the 3D model includes: "After clicking the car door, play the door pull and rotate open animation, and display the interior." Therefore, the selected node is "car door", the display action is to pull and rotate the car door, and when the display request contains working parameters, the parameters of the rotation node and the parameters of the movement node are selected. When the display request does not contain working parameters, the preset parameters corresponding to the display action are searched, and the rotation node and the movement node are set for the car door according to the preset parameters to complete the pulling and rotation of the car door.

[0059] In one embodiment, a display order of a display structure is obtained and an execution order of N functional nodes is determined, including: generating a first execution order between at least two selection nodes according to the display order of the display structure; generating a second execution order for each selection node and at least one rotation node, at least one movement node and at least one time node according to at least one rotation node, at least one movement node and at least one time node corresponding to each selection node; and executing the selection nodes in sequence according to the first execution order, wherein, when executing the selection nodes, at least one rotation node, at least one movement node and at least one time node are executed in sequence according to the second execution order.

[0060] In this embodiment, the activation of each preset display function is to select a node. The selection node is executed in sequence according to the display order of each node. Each selection node also corresponds to a preset display function. After determining the selection node, the corresponding rotation node, movement node and time node need to be executed after the selection node.

[0061] In this embodiment, the execution order may be to connect the function nodes. According to the second execution order, the mobile nodes, rotation nodes and time nodes corresponding to the same selection node are connected in sequence according to a preset order to obtain the first node structure corresponding to the selection node; according to the first execution order, the first node structures corresponding to different selection nodes are connected.

[0062] In one embodiment, a second execution order is generated for each selection node and at least one rotation node, at least one mobile node and at least one time node, including: after the selection node is executed, the rotation node and the mobile node are executed respectively; after the rotation node and the mobile node are executed, the time node is executed.

[0063] In this embodiment, the rotation node and the mobile node are respectively connected to the selection node, and the mobile node and the rotation node are jointly connected to the time node. The connection between two first node structures includes: the time node of the previous first node structure is connected to the selection node of the next node structure.

[0064] In one embodiment, after the display structure completes the display action, a repeat display function can be selected to repeatedly display the executed three-dimensional model. The repeat display function includes: generating a first repeat display function according to at least one rotation node and a time node, and generating a second repeat display function according to at least one movement node and a time node. The first repeat display function is used to rotate the three-dimensional model at the original position to achieve repeated display of the three-dimensional model, and the second repeat display function is used to move the three-dimensional model back and forth within a certain distance to repeatedly display the three-dimensional model.

[0065] In this embodiment, the function nodes displayed repeatedly generate a second node structure, and the rotation nodes and function nodes of the second node structure are connected to the time nodes of the first node structure.

[0066] like Figure 4 As shown, Figure 4 Play the door's pull-and-swing opening animation and display the node diagram of the interior. Figure 4 The operation scenario is to select the touch object "car door", add a click behavior, determine that the selected node is "car door", add a moving node to the car door (that is, provide a moving path and moving parameters), add a rotation node to the car door (that is, provide a rotation path and rotation method), and merge them into a node scene of the function set. The scene is divided into: Node sequence 410: for the selected node "car door", execute a certain distance to move and rotate the car door. Node sequence 420: for displaying the interior, obtain the node object "camera perspective", and generate node parameters for the display of the camera perspective. Node sequence 430, repeatedly display the car interior, such as rotating the car interior.

[0067] Specifically. In the node sequence 410, after selecting the car door, a selection node 411 is generated, and a mobile node 412 and a rotation node 413 are added to realize the rotation animation of the car door, and the duration of the mobile node 412 and the rotation node 413 is confirmed according to the time node 414. The first node structure of the node sequence 410 is generated according to the selection node 411, the mobile node 412, the rotation node 413 and the time node 414. In the node sequence 420, the camera perspective is selected as the selection node, and the camera perspective is used to switch the main perspective to the God's perspective. The node sequence 420 generates a mobile node 422 and a rotation node 423 according to the movement parameters and the rotation node parameters, and then generates the mobile node 422 and the rotation node 423, and then generates the time node 424 of the node sequence 420. The first node structure of the node sequence 420 is generated according to the selection node 421, the mobile node 422, the rotation node 423 and the time node 424. The node sequence 430 is used to repeatedly display the three-dimensional model, and at this time, the node sequence 430 has no selected node. Node 430 connects rotation node 431 and time node 432 to generate a second node structure of node sequence 430. After determining the first node structure of node sequence 410, the first node structure of node sequence 420, and the first node structure of node sequence 430, the first node structure of node sequence 410 and the first node structure of node sequence 420 are sequentially connected according to the first execution order of selecting node 411 and selecting node 421. Node sequence 430 is used to realize the rotation effect after the three-dimensional model completes the display action. The second node structure of node sequence 430 is connected after the time node of node sequence 420.

[0068] In one embodiment, the function node also includes a light effect node, and the light effect node is used to add light effects to the three-dimensional model when displaying the three-dimensional model. Step 230, determining the execution order of the N function nodes also includes: determining a third execution order according to the light effect node; the third execution order includes: after the selection node is executed, executing the light effect node; after the light effect node is executed, executing the time node.

[0069] It should be noted that the third execution order can be performed in parallel with the second execution order, or can be set after the second execution order.

[0070] In one embodiment, node parameters of a mobile node and node parameters of a rotating node are determined based on a selected node, including: when the selected node is an image module of a three-dimensional image, a moving distance and a rotation parameter are obtained based on a display action; based on an interpolation algorithm, a moving distance and a rotation parameter, node parameters of the mobile node and node parameters of the rotating node are calculated; when the selected node is a camera perspective, action parameters of the camera perspective are obtained based on the display action; and node parameters of the mobile node and node parameters of the rotating node are calculated based on a multi-terminal Bezier curve and the action parameters of the camera perspective.

[0071] In this embodiment, if Figure 4 As shown, in a series of function nodes 410, for the operation object of the car door, the selection node is determined to be the car door. The selection node is connected to the rotation node and the movement node at the same time. In order to make the rotation effect and the movement effect smooth, the selection parameters and the movement parameters are interpolated to calculate the movement and rotation effect of the selection node at each moment. Figure 4 As shown, in a series of function nodes 420, for the selection node of the camera angle, the action parameters of the camera angle are obtained. In order to make the human eye feel better, the movement parameters of the camera angle are obtained through the multi-terminal Bezier curve. Figure 4 There is also a rotation node 430 for indicating the display effect. Node 430 is used to rotate the display content. At this time, it inherits the previous node and directly displays the 360-degree angle. The 360-degree angle is input into the rotation node in the form of interpolation, and the time node of repeated display is obtained, so that the scene of node 420 can be repeatedly rotated and displayed according to node 430.

[0072] In one embodiment, the selection node, the mobile node, the selection node and the time node are sequentially connected in execution order, which specifically includes: connecting the output pin of the selection node to the input pin of the mobile node and the input pin of the rotation node respectively; connecting the output pin of the mobile node and the output pin of the rotation node to the input pin of the same time node respectively.

[0073] Node connections are only used to bind input pins or output pins between nodes. Node connections only represent the execution order between nodes, that is, the control flow of the program. Usually, when data flows from the output pin of the current node to the input pin of another node, it means that the current node has completed the task and the next node will execute the task immediately.

[0074] In one embodiment, determining the execution order between the N function nodes includes: connecting the N function nodes, specifically including: obtaining a first node structure of each selection node, the first node structure including: a node structure between a selection node, a rotation node, a movement node, and a time node. Connecting the first node structures of multiple selection nodes according to the first execution order.

[0075] In this embodiment, the connection method between the first node structures of adjacent selection nodes includes: connecting the output pin of the last functional node of the previous first node structure to the input pin of the first functional node of the next first node structure.

[0076] Step 240: display the three-dimensional model according to the execution order of the N functional nodes.

[0077] In this embodiment, all nodes are inherited from the above-mentioned basic functional nodes, and each node can interact with the user's operation on the user interface. Each functional node includes: an input pin and an output pin. By connecting the output pin of the current node to the output node of other nodes, the node binding of the current node and other nodes can be completed, thereby converting the execution order into a logical flow. All actions that are not completed instantly are inherited from the time node. All connections are only used to bind input pins and output pins, and the connection between nodes represents the execution order, that is, the control flow of the program. Usually, the flow from the output pin of one node to the input pin of another node indicates that after the current node is executed, the next node will be executed.

[0078] In one embodiment, executing the node rotation includes: calculating a rotation matrix or a quaternion according to the rotation parameters of the rotation node input by the user. The quaternion and the rotation matrix can be converted to each other. After determining the rotation matrix or the quaternion, the original selected node coordinates are processed by the selection matrix or the quaternion to obtain the rotated position coordinates.

[0079] Specifically, the rotation parameter is determined. If the rotation parameter is an angle, the angle is converted into radians. The half-angle cosine C and the half-angle sine S are calculated according to the radians, and the quaternion is output according to C and S. The quaternion (x, y, z, w) calculation formula includes formula (1) to formula (4).

[0080] Formula (1); Formula (2); Formula (3); Formula (4).

[0081] In one embodiment, the position coordinates before determining the rotation and the rotated position coordinates , set the intermediate state coordinates , according to the Bezier curve, calculate each frame Coordinates, so that when generating a rotation animation, the display structure can rotate smoothly and without abruptness.

[0082] The specific Besar curve formula includes formula (5): Formula (5); Where t is the interpolation ratio from 0 to 1, and B(t) is the position of the current frame. When each frame is updated, B(t) is also updated, thus achieving a smooth rotation effect.

[0083] In one embodiment, executing the moving node includes: obtaining the original position coordinate Q1 and the position coordinate Q2 after the move, performing interpolation calculation on the distance between Q1 and Q2, and displaying the result of the interpolation calculation in each frame of animation to achieve smooth display of the moving node.

[0084] In one embodiment, executing the time node includes: continuously executing the display effect of rotation or movement. For example, providing the execution time for the rotation node or the movement node so that the rotation node or the movement node can perform interpolation calculation to achieve the above-mentioned smooth effect animation. When the input of the movement node and the rotation node received by the time node is empty, the time node plays a connecting role and acts as a pause in the execution sequence. For example, the next node has to wait for two seconds before it can be executed.

[0085] In one embodiment, the selection node can be either a display structure or a camera perspective. Usually, the camera perspective is stored in a separate form to facilitate users to switch perspectives.

[0086] In this application, the display order of the three-dimensional model is a node structure. By determining the structure between the nodes, the execution order between the nodes is determined, and according to the execution order, the node parameters corresponding to the nodes of the execution order are determined. After completing the execution order, all or part of the model can be placed in the cloud instead of being read locally when used, so as to reduce the package size.

[0087] like Figure 5 As shown, the present application provides a three-dimensional model display device 50, including: a response module 510, an acquisition module 520, a determination module 530 and a display module 540.

[0088] The response module 510 is used to respond to the display request of the three-dimensional model and determine the display structure of the three-dimensional model and the display action corresponding to the display structure.

[0089] The acquisition module 520 is used to select N function nodes according to the display structure and the display action.

[0090] The determination module 530 is used to obtain the display order of the display structure and determine the execution order of the N function nodes.

[0091] The display module 540 is used to determine the display of the three-dimensional model according to the execution order of the N function nodes.

[0092] In one embodiment, the device also includes: a download module. When the editing platform of the present application is on the H5 platform. Due to the natural cross-platform properties of H5, only one end of the web needs to be published to interconnect all ends, and the final product is a standard H5. The download process includes: after the operation is published, a basic configuration file will be generated first. The basic configuration file consists of user input and default configuration, and the user input includes resolution, background color, etc. All configurations will be saved in a string variable, and then saved as a config.json file, which will be loaded and executed by the entry class of bundle.js (generated by post-compilation) at the beginning of the program. Compiled bundle.js is compiled and generated by node.js. The overall project is divided into node (node) declaration and extension of various nodes, core (core) including loading, downloading, various mathematical operations, quaternions, Bessel, etc., framework (framework) manages all nodes, manages execution flow, manages data flow, events, life cycle, etc., logic (business) The specific implementation of all nodes is composed of, and finally compiled into a bundle.js file, and then introduced by index.html. Generate index.html, res (model resources), script (bundle.js) and other folders in the specified path. Deploy index.html to local or OSS to produce the finished product.

[0093] Please refer to Figure 6 , Figure 6 This is a schematic diagram of an embodiment of an electronic device of the present application.

[0094] The electronic device 100 includes a memory 20, a processor 30, and a computer program 40 stored in the memory 20 and executable on the processor 30. When the processor 30 executes the computer program 40, the steps in the above-mentioned three-dimensional model display method embodiment are implemented, for example Figure 2 Steps 210 to 240 are shown.

[0095] Exemplarily, the computer program 40 can also be divided into one or more modules / units, one or more modules / units are stored in the memory 20 and executed by the processor 30. One or more modules / units can be a series of computer program instruction segments that can complete specific functions, and the instruction segments are used to describe the execution process of the computer program 40 in the electronic device 100. For example, it can be divided into the response module 510, the acquisition module 520, the determination module 530 and the display module 540 shown.

[0096] Those skilled in the art will appreciate that the schematic diagram is merely an example of the electronic device 100 and does not constitute a limitation on the electronic device 100 . The electronic device 100 may include more or fewer components than shown in the diagram, or a combination of certain components, or different components. For example, the electronic device 100 may also include input and output devices, network access devices, buses, etc.

[0097] The processor 30 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor, a single-chip microcomputer, or the processor 30 may also be any conventional processor, etc.

[0098] The memory 20 can be used to store the computer program 40 and / or the module / unit. The processor 30 realizes various functions of the electronic device 100 by running or executing the computer program and / or the module / unit stored in the memory 20 and calling the data stored in the memory 20. The memory 20 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area can store data (such as audio data) created according to the use of the electronic device 100, etc. In addition, the memory 20 can include a high-speed random access memory, and can also include a non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), at least one disk storage device, a flash memory device, or other non-volatile solid-state storage devices.

[0099] If the module / unit integrated in the electronic device 100 is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable medium does not include electric carrier signals and telecommunication signals.

Claims

1. A method for displaying a three-dimensional model, characterized in that: include: In response to a display request of a three-dimensional model, determining a display structure of the three-dimensional model and a display action corresponding to the display structure; Selecting N function nodes according to the display structure and the display action; Obtaining a display order of the display structure, and determining an execution order of the N function nodes; The three-dimensional model is displayed according to the execution order of the N functional nodes.

2. The method according to claim 1, characterized in that The step of determining, in response to a display request for a three-dimensional model, a display structure of the three-dimensional model and a display action corresponding to the display structure includes: Reading three-dimensional information of the three-dimensional model, and generating a visual editing component of the three-dimensional model on a visual interface according to the three-dimensional information; According to the display request, an operation instruction of the user for the visual editing component is determined to obtain the display structure and the display action.

3. The method according to claim 1, characterized in that The functional nodes at least include: a selection node, a movement node, a rotation node and a time node. The selection node is used to indicate the display structure, the movement node is used to determine the movement direction and movement parameters of the display action; the rotation node is used to determine the rotation direction and rotation parameters of the display action, and the time node is used to determine the duration of the display action.

4. The method according to claim 3, characterized in that The selecting N function nodes according to the display structure and the display action includes: Determine a series of preset display functions required to complete the display action, each of the preset display functions corresponds to at least one of the rotation nodes, at least one of the movement nodes, and at least one of the time nodes; Determining a selection node corresponding to the display structure; At least one of the rotation nodes, at least one of the movement nodes, and at least one of the time nodes corresponding to the selection node are determined according to the selection node corresponding to the display structure and the display action corresponding to the display structure.

5. The method according to claim 4, characterized in that Obtaining the display order of the display structure and determining the execution order of the N function nodes includes: generating a first execution order between at least two of the selection nodes according to the presentation order of the presentation structure; generating a second execution order for each of the selection nodes and at least one of the rotation nodes, at least one of the movement nodes, and at least one of the time nodes according to at least one of the rotation nodes, at least one of the movement nodes, and at least one of the time nodes corresponding to each of the selection nodes; The selection nodes are executed in sequence according to the first execution order, wherein when the selection nodes are executed, at least one rotation node, at least one movement node and at least one time node are executed in sequence according to the second execution order.

6. The method according to claim 5, characterized in that The generating the second execution order of each of the selection nodes and at least one of the rotation nodes, at least one of the movement nodes, and at least one of the time nodes comprises: After the execution of the selected node is completed, the rotation node and the movement node are respectively executed; After the rotation node and the movement node are executed, the time node is executed.

7. The method according to claim 5, characterized in that The function node also includes a light effect node, and the light effect node is used to add rendering light effects to the three-dimensional model when displaying the three-dimensional model; The determining the execution order of the N function nodes further includes: determining a third execution order according to the light effect nodes; The third execution sequence includes: After the selection node is executed, the light effect node is executed; After the light effect node is executed, the time node is executed.

8. A three-dimensional model display device, characterized in that: include: A response module, configured to respond to a display request of a three-dimensional model and determine a display structure of the three-dimensional model and a display action corresponding to the display structure; An acquisition module, used for selecting N function nodes according to the display structure and the display action; A connection module is used to obtain the display order of the display structure and determine the execution order of N function nodes; A display module is used to determine the display of the three-dimensional model according to the execution order of the N functional nodes.

9. An electronic device, comprising a processor and a memory, characterized in that: The memory is used to store instructions, and the processor is used to call the instructions in the memory, so that the electronic device executes the three-dimensional model display method according to any one of claims 1 to claim 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and when the computer instructions are executed on an electronic device, the electronic device executes the three-dimensional model display method according to any one of claims 1 to 7.