System and method for user interaction in complex web 3D scenes

11562549 · 2023-01-24

Assignee

Inventors

Cpc classification

International classification

Abstract

This disclosure provides a system and method for user interaction in complex web 3D scenes, including a receiving module, a transmission module and a 3D model module. The receiving module receives molecular data. The transmission module analyzes the received molecular data and then enters the two branch modules at the same time. The branch modules include: a view layer unit: processing browser rendering and 3D model construction, the data generated by the branch will finally be presented on the browser page; a data layer unit: processing 3D picking-related business logic, and establishing a list of related model index information for atoms and covalent bonds in molecular data. The 3D model module: establishes a one-to-one correspondence between color and 3D model. This invention simplifies the display model of the molecule for the picking of web 3D molecular visualization and reduces the computational cost of the model data on the rendering.

Claims

1. A system for user interaction in complex web 3D scenes, comprising: a receiving module; a transmission module; and a three-dimensional (3D) model module, wherein the receiving module is configured to receive molecular data, the transmission module is configured to analyze the received molecular data and transmit the received molecular data to a first branch module and a second branch module at the same time, wherein the first branch module comprises a view layer unit configured to handle rendering on a browser and construct a 3D model, and present data generated by the first branch module on the browser, wherein the second branch module comprises a data layer unit configured to process 3D picking-related business logic, and establish a list of related model index information on atoms and covalent bonds in the molecular data; and the 3D model module is configured to establish a one-to-one correspondence between a color and the 3D model, and all 3D models that need to be picked up have a unique index in a data layer, wherein the unique index is a hexadecimal color without rendering on the browser; wherein the system comprises a processor and a memory comprising instructions executed by the processor; wherein the receiving module, the transmission module, and the 3D model module are executed by the processor.

2. A method for user interaction in complex web 3D scenes, comprising: analyzing molecular data after receiving the molecular data; transmitting the molecular data to two branch modules at the same time, the two branch modules comprising a first branch module and a second branch module, wherein the first branch module serves as a view layer, processing browser rendering and constructing a 3D model, and the data generated by the first branch module will finally be presented on a browser page; the second branch module serves as the data layer for processing 3D pickup-related business logic, and establishing a list of related model index information on atoms and covalent bonds in the molecular data; establishing corresponding simplified model data in an invisible 3D scene, and establishing a one-to-one correspondence between a color and the 3D model, all 3D models that need to be picked will have a unique index in the data layer, wherein the unique index is a hexadecimal color without rendering on the browser page.

3. The method according to claim 2, wherein the index is a hexadecimal color, which ranges from #000001 to #FFFFFE that marks a total of 16*16*16*16*16*16-2 units.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 is a visual cone model under perspective projection in the prior art.

(2) FIG. 2 is a visual cone model under orthogonal projection in the prior art.

(3) FIG. 3 is a visual cone of prospective projection.

(4) FIG. 4 shows the process flow of the 3D picking scheme

(5) In FIG. 5, L2 represents the relevant data of the 3D scene rendered in the browser page, which corresponds to the data generated by the view layer in FIG. 1. L1 can be regarded as a computer screen.

(6) FIG. 6-9 is the effect diagram of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENT

(7) The preferred embodiments of this invention will be further described in detail below in conjunction with the accompanying drawings.

Embodiment 1

(8) FIG. 4 shows the process flow of the 3D picking scheme, wherein the molecular data (mol, cif files) is analyzed after received and then enters two branch modules at the same time. The branch module on the left is used as the view layer, which mainly deals with the rendering of the browser and the construction of the 3D model. The data generated by this branch will finally be presented on the browser page; while the branch module on the right is used as the data layer and is responsible for processing 3D Pick up relevant business logic, and establishing a list of index information of related models on atoms and covalent bonds in molecular data. The data generated by this branch module is always operated in memory and would establish a corresponding simplified model data in an invisible 3D scene and a one-to-one correspondence between color and 3D model. All 3D models that need to be picked up will have a unique index in the data layer, wherein, the index is a hexadecimal color, which ranges from #000001 to #FFFFFE that marks a total of 16*16*16*16*16*16-2 units without rendering on the browser page.

Embodiment 2

(9) As shown in FIG. 5, L2 represents the relevant data of the 3D scene rendered in the browser page, which corresponds to the data generated by the view layer in FIG. 4. L1 can be regarded as a computer screen. When the user clicks on the point P1 on the screen, a 3D picking operation is triggered. When the user clicks on the point P1 on the screen, the pick-up module will obtain the screen click position of this point and construct a temporary virtual plane. This plane is similar to the computer screen L1. The plane is the projection of the 3D model data on the 2D plane. Just as the sphere S1 is projected on L1 as a circle P1, the projected 2D shapes on the virtual plane use the index of the projected 3D model as their own color. For example, the index of an atom in the pickup module in 3D space is #123456, and then on the virtual plane temporarily constructed by the pickup module, the color of the circle where the atom is mapped on the plane is #123456. After the community module reads the color #123456 of the mouse position on the virtual plane, the 3D model corresponding to the position was found without calculation by using the color as the index, and the 3D object information at that point was successfully picked up. In this way, a large number of calculation processes can be avoided, and at the same time, the cost of data calculation of the 3D model that does not need to be picked up is reduced, thereby improving the rendering frame rate of the 3D scene.

(10) 1×1×1: as shown in FIG. 7, 2×2×2 as shown in FIG. 8, and 3×3×3 as shown in FIG. 9.

(11) Description: 3×3×3 lattice expansion is to expand in the three directions of oa, ob, and oc. A single lattice expands into a cube composed of 3×3×3=27 lattices, and 2×2×2 lattice expands into a cube with 8 single lattices.

(12) The effect comparison (using the structure of aspirin for comparison test) is shown in Table 1:

(13) TABLE-US-00001 TABLE 1 Molecular visualization Optimized molecular ray method model visualization model picking scheme picking scheme Comparison item (Ball-and-stick model) (Stick-shaped model) Non-stacked unit program 880 ms 778 ms execution time in a single lattice Execution time for 1106 ms 897 ms expanding the program in a 1 × 1 × 1 lattice Execution time for 1841 ms 945 ms expanding the program in a 2 × 2 × 2 lattice Execution time for 3710 ms 1107 ms expanding the program in a 3 × 3 × 3 lattice Rendering frame rate in a 59.9 fps 59.9 fps 1 × 1 × 1 lattice Rendering frame rate in a 59.9 fps 59.9 fps 2 × 2 × 2 lattice Rendering frame rate in a 33 fps 59.9 fps 3 × 3 × 3 lattice

(14) Description: 3×3×3 lattice expansion is to expand in the three directions of oa, ob, and oc. A single lattice expands into a cube composed of 3×3×3=27 lattices, and 2×2×2 lattice expands into a cube with 8 single lattices.

(15) The above content is a further detailed description of this invention in combination with specific preferred embodiments, and it cannot be considered that the specific implementation of this invention is limited to these descriptions. For the ordinary technical staff in the technical field of this invention, a number of simple deductions or substitutions can be made without departing from the concept of this invention, which should be regarded as falling within the protection scope of this invention.