CN111192641B - 一种用于复杂web 3D场景下用户交互的***和方法 - Google Patents
一种用于复杂web 3D场景下用户交互的***和方法 Download PDFInfo
- Publication number
- CN111192641B CN111192641B CN201911327957.6A CN201911327957A CN111192641B CN 111192641 B CN111192641 B CN 111192641B CN 201911327957 A CN201911327957 A CN 201911327957A CN 111192641 B CN111192641 B CN 111192641B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- model
- branch
- browser
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/20—Identification of molecular entities, parts thereof or of chemical compositions
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/80—Data visualisation
Landscapes
- Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供一种用于复杂web 3D场景下用户交互的***和方法,包括接收模块、传送模块和3D模型模块;接收模块:接收分子数据;传送模块:将接收到的分子数据进行解析后,同时进入两个分支模块;所述分支模块包括:视图层单元:理浏览器的渲染和3D模型的构建,该分支产生的数据会最终呈现在浏览器的页面;数据层单元:处理3D的拾取相关的业务逻辑,针对分子数据中的原子、共价键等建立了相关模型的索引信息的列表;3D模型模块:并会建立一个颜色和3D模型一一对应的关系,所有的需要被拾取的3D模型都会在数据层中具有一个唯一的索引。本发明针对web 3D分子可视化的拾取首先精简分子的展示模型(棍状模型)较少渲染上的模型数据的计算开销。
Description
技术领域
本发明属于化学计算领域,具体涉及一种用于复杂web 3D场景下用户交互的***和方法。
背景技术
在化学研究领域常常需要有一套标准的针对分子(mol格式)、晶体(cif格式)的描述文件以此方便不同的研究组织和机构对同一结构的化学分子或晶体达成共识,而cif、mol等纯文本格式的数据不利于研究人员直观的观察对应的化学结构的3D结构,虽然在化学领域存在着相关的3D结构展示的软件,但是这些客户端的应用不利于推广使用及传播使用,而随着现代浏览器性能的提升和web 3D技术的更新,基于JavaScript的编程语言的开发的在浏览器内可以运行的3D展示及交互的web 3d工具成为现实,由于不少化学分子或晶体结构复杂,在进行3D渲染时会产生大量的数据计算,因此对于性能的优化尤为重要,该方案的目的在于解决浏览器环境下3D分子可视化交互上的计算耗时导致的卡顿及渲染帧率不足的问题。
目前在web 3D场景中的交互操作首先是要基于3D场景中的物体的点击拾取的,目前针对3D场景中物体的拾取主要的方案就是射线法拾取。
在webgl渲染引擎中所渲染的物体都位于一个叫做视椎体的空间之中。如图1和图2所示。
发明内容
为了解决以上技术问题,本发明提供一种用于复杂web 3D场景下用户交互的***包括接收模块、传送模块和3D模型模块;
接收模块:接收分子数据,mol文件、cif文件以及包含晶体信息的自定义结构体;
传送模块:将接收到的分子数据进行解析后,同时进入两个分支模块;所述分支模块包括:
视图层单元:理浏览器的渲染和3D模型的构建,该分支产生的数据会最终呈现在浏览器的页面;
数据层单元:处理3D的拾取相关的业务逻辑,针对分子数据中的原子、共价键、氢键、柔性角建立了相关模型的索引信息的列表;
3D模型模块:并会建立一个颜色和3D模型一一对应的关系,所有的需要被拾取的3D模型都会在数据层中具有一个唯一的索引。
优选的,所述分子数据采用mol文件、cif文件以及包含晶体信息的自定义结构体。
相应的,本发明提供一种用于复杂web 3D场景下用户交互的方法,包括如下几个步骤:
步骤A:接收到分子数据后,据进行解析;
步骤B:之后会同时进入两个分支模块,包括第一分支模块和第二分支模块,所述第一分支模块作为视图层,主要处理浏览器的渲染和3D模型的构建,该分支产生的数据会最终呈现在浏览器的页面;
步骤C:所述第二分支模块作为数据层,专门负责处理3D的拾取相关的业务逻辑,针对分子数据中的原子、共价键等建立了相关模型的索引信息的列表;
步骤D:根据需求在一个不可见的3D场景中建立对应的简化的模型数据,并会建立一个颜色和3D模型一一对应的关系所有的需要被拾取的3D模型都会在数据层中具有一个唯一的索引。
其中,所述索引就是一个16进制的颜色,其从#000001到#FFFFFE,总计可以标记16*16*16*16*16*16-2个单位,而不会在浏览器的页面上进行渲染。
本发明带来了如下有益效果:
1、该方案针对web 3D分子可视化的拾取首先精简分子的展示模型(棍状模型)较少渲染上的模型数据的计算开销。
2、通过建立不需要渲染的数据层的精简化的可拾取的模型数据,减少了3D场景渲染的开销,避免了不必要拾取的模型数据的构建。
附图说明
图1是现有技术中透视投影下的视椎体模型,
图2是现有技术中正交投影下的视椎体模型。
图3是透视投影的视椎体。
图4中显示了该3D拾取方案的流程
图5中,L2表示的是浏览器页面中所渲染的3D场景的相关数据,对应于图1中视图层所产生的数据;L1可视为计算机的屏幕。
图6是晶格的立方体。
图7是1x1x晶格的立方体。
图8是2x2x2晶格的立方体。
图9是3x3x3晶格的立方体。
具体实施方式
下面结合附图,对本发明的较优的实施例作进一步的详细说明:
实施例1
图4中显示了该3D拾取方案的流程,在接收到分子数据(mol、cif文件)后,.据进行解析,之后会同时进入两个分支模块,左侧的分支模块作为视图层,主要处理浏览器的渲染和3D模型的构建,该分支产生的数据会最终呈现在浏览器的页面,而右侧的分支模块作为数据层,专门负责处理3D的拾取相关的业务逻辑,针对分子数据中的原子、共价键等建立了相关模型的索引信息的列表,该分支模块产生的数据始终在内存中进行操作,并根据需求在一个不可见的3D场景中建立对应的简化的模型数据,并会建立一个颜色和3D模型一一对应的关系,所有的需要被拾取的3D模型都会在数据层中具有一个唯一的索引,该索引就是一个16进制的颜色,其从#000001到#FFFFFE,总计可以标记16*16*16*16*16*16–2个单位,而不会在浏览器的页面上进行渲染。
实施例2
如图5所示,L2表示的是浏览器页面中所渲染的3D场景的相关数据,对应于图4中视图层所产生的数据;L1可视为计算机的屏幕。当用户点击屏幕上的一点P1时,一个3D拾取操作就被触发。当用户点击屏幕上点P1时,拾取相模块会获得该点的屏幕点击位置,并构建一个临时的虚拟平面,这个平面类似于计算机屏幕L1,平面上是3D模型数据在2D平面上的投影,如同球体S1投影在L1上表现为圆P1一样,在虚拟平面上的被投影的2D形状都以投影出自己的3D模型的索引作为自己的颜色,比如,3D空间中一个原子在拾取模块的索引是#123456,那在拾取模块临时构建的虚拟平面上,该原子映射在平面上的圆的颜色就是#123456,在社区模块读取到鼠标位置在该虚拟平面上的颜色#123456之后,就根据该颜色作为索引信息,无需计算就找到了该位置对应的3D模型,从而成功的拾取到了该点3D物体信息,在这一过程中避免了大量的计算过程,同时减少了不需要被拾取的3D模型的数据计算的开销,以此提升了3D场景的渲染帧率。
1x1x1:如图7所示,2x2x2,如图8所示,3x3x3如图9所示。
说明:3x3x3晶格展开就是在oa、ob、oc三个方向上进行扩展,有单个晶格扩展成3x3x3=27个晶格组成的立方体,2x2x2即扩展出8个单晶格的立方体。
效果对比(使用阿司匹林(aspirin)的结构进行对比测试)如表1所示:
表1
说明:3x3x3晶格展开就是在oa、ob、oc三个方向上进行扩展,有单个晶格扩展成3x3x3=27个晶格组成的立方体,2x2x2即扩展出8个单晶格的立方体。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (3)
1.一种用于复杂web 3D场景下用户交互的***,其特征在于,包括接收模块、传送模块和3D模型模块;
接收模块:接收分子数据;
传送模块:将接收到的分子数据进行解析后,同时进入两个分支模块;
所述分支模块包括:
视图层单元:处理浏览器的渲染和3D模型的构建,该分支产生的数据会最终呈现在浏览器的页面;
数据层单元:处理3D的拾取相关的业务逻辑,针对分子数据中的原子、共价键、氢键、柔性角建立了相关模型的索引信息的列表;
3D模型模块:用于建立一个颜色和3D模型一一对应的关系,所有的需要被拾取的3D模型都会在数据层中具有一个唯一的索引。
2.一种如权利要求1所述的用于复杂web 3D场景下用户交互的方法,其特征在于,包括如下几个步骤:
步骤A:接收到分子数据后,据进行解析;
步骤B:之后会同时进入两个分支模块,包括第一分支模块和第二分支模块,所述第一分支模块作为视图层,主要处理浏览器的渲染和3D模型的构建,该分支产生的数据会最终呈现在浏览器的页面;
步骤C:所述第二分支模块作为数据层,专门负责处理3D的拾取相关的业务逻辑,针对分子数据中的原子、共价键、氢键、柔性角建立了相关模型的索引信息的列表;
步骤D:根据需求在一个不可见的3D场景中建立对应的简化的模型数据,并会建立一个颜色和3D模型一一对应的关系,所有的需要被拾取的3D模型都会在数据层中具有一个唯一的索引。
3.如权利要求2所述的方法,其特征在于,所述索引就是一个16进制的颜色,其从#000001到#FFFFFE,总计可以标记16*16*16*16*16*16-2个单位,而不会在浏览器的页面上进行渲染。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911327957.6A CN111192641B (zh) | 2019-12-20 | 2019-12-20 | 一种用于复杂web 3D场景下用户交互的***和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911327957.6A CN111192641B (zh) | 2019-12-20 | 2019-12-20 | 一种用于复杂web 3D场景下用户交互的***和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111192641A CN111192641A (zh) | 2020-05-22 |
CN111192641B true CN111192641B (zh) | 2023-06-23 |
Family
ID=70710984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911327957.6A Active CN111192641B (zh) | 2019-12-20 | 2019-12-20 | 一种用于复杂web 3D场景下用户交互的***和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111192641B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11562549B2 (en) | 2019-12-20 | 2023-01-24 | Shenzhen Jingtai Technology Co., Ltd. | System and method for user interaction in complex web 3D scenes |
CN112068715B (zh) * | 2020-08-28 | 2024-07-12 | 深圳晶泰科技有限公司 | 手持式晶体交互设备、晶体交互***及方法 |
WO2022041108A1 (zh) * | 2020-08-28 | 2022-03-03 | 深圳晶泰科技有限公司 | 手持式晶体交互设备、晶体交互***及方法 |
CN112086147B (zh) * | 2020-09-22 | 2023-11-03 | 中山大学 | 一种基于WebGL的三维晶体结构可视化方法 |
CN112184870B (zh) * | 2020-10-13 | 2023-11-03 | 成都智鑫易利科技有限公司 | 用于三维图形软件的三维物体拾取方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609604A (zh) * | 2011-01-21 | 2012-07-25 | 中国科学院计算机网络信息中心 | 基于网格的计算化学过程可视化***及控制方法 |
CN102609246A (zh) * | 2011-01-21 | 2012-07-25 | 中国科学院计算机网络信息中心 | 基于网格的计算化学应用整合*** |
CN103077239A (zh) * | 2013-01-10 | 2013-05-01 | 上海电力学院 | 基于云渲染的iFrame 嵌入式Web3D*** |
CN104571527A (zh) * | 2015-01-26 | 2015-04-29 | 华东理工大学 | 一种基于增强现实技术的3d分子交互对接***及实现方法 |
CN105354872A (zh) * | 2015-11-04 | 2016-02-24 | 深圳墨麟科技股份有限公司 | 一种基于3d网页游戏的渲染引擎、实现方法及制作工具 |
CN107247548A (zh) * | 2017-05-31 | 2017-10-13 | 腾讯科技(深圳)有限公司 | 图像显示方法、图像处理方法及装置 |
CN108074274A (zh) * | 2017-12-26 | 2018-05-25 | 深圳拎得清软件有限公司 | 基于浏览器的bim模型实时渲染方法及装置 |
CN108415696A (zh) * | 2018-02-09 | 2018-08-17 | 上海九辛信息技术有限公司 | 分发式web服务架构设计方法 |
CN109658992A (zh) * | 2018-12-20 | 2019-04-19 | 广州市爱菩新医药科技有限公司 | 一种基于Web的化学结构绘制方法 |
CN110209974A (zh) * | 2019-05-29 | 2019-09-06 | 深圳图为技术有限公司 | 一种浏览三维模型的方法和装置 |
-
2019
- 2019-12-20 CN CN201911327957.6A patent/CN111192641B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609604A (zh) * | 2011-01-21 | 2012-07-25 | 中国科学院计算机网络信息中心 | 基于网格的计算化学过程可视化***及控制方法 |
CN102609246A (zh) * | 2011-01-21 | 2012-07-25 | 中国科学院计算机网络信息中心 | 基于网格的计算化学应用整合*** |
CN103077239A (zh) * | 2013-01-10 | 2013-05-01 | 上海电力学院 | 基于云渲染的iFrame 嵌入式Web3D*** |
CN104571527A (zh) * | 2015-01-26 | 2015-04-29 | 华东理工大学 | 一种基于增强现实技术的3d分子交互对接***及实现方法 |
CN105354872A (zh) * | 2015-11-04 | 2016-02-24 | 深圳墨麟科技股份有限公司 | 一种基于3d网页游戏的渲染引擎、实现方法及制作工具 |
CN107247548A (zh) * | 2017-05-31 | 2017-10-13 | 腾讯科技(深圳)有限公司 | 图像显示方法、图像处理方法及装置 |
CN108074274A (zh) * | 2017-12-26 | 2018-05-25 | 深圳拎得清软件有限公司 | 基于浏览器的bim模型实时渲染方法及装置 |
CN108415696A (zh) * | 2018-02-09 | 2018-08-17 | 上海九辛信息技术有限公司 | 分发式web服务架构设计方法 |
CN109658992A (zh) * | 2018-12-20 | 2019-04-19 | 广州市爱菩新医药科技有限公司 | 一种基于Web的化学结构绘制方法 |
CN110209974A (zh) * | 2019-05-29 | 2019-09-06 | 深圳图为技术有限公司 | 一种浏览三维模型的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111192641A (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111192641B (zh) | 一种用于复杂web 3D场景下用户交互的***和方法 | |
CN106846497B (zh) | 应用于终端的呈现三维地图的方法和装置 | |
US8194101B1 (en) | Dynamic perspective video window | |
JP2022524891A (ja) | 画像処理方法及び装置、電子機器並びにコンピュータプログラム | |
CN107491174A (zh) | 用于远程协助的方法、装置、***及电子设备 | |
CN106383965A (zh) | 一种三维数值大气可视化支撑*** | |
CN105892643A (zh) | 基于虚拟现实的多界面统一显示***及方法 | |
CN1202652A (zh) | 虚拟现实环境中显示信息的方法 | |
CN105321142B (zh) | 经由计算流水线进行的采样、错误管理和/或上下文切换 | |
CN109920056B (zh) | 建筑物渲染方法、装置、设备和介质 | |
CN111860167A (zh) | 人脸融合模型获取及人脸融合方法、装置及存储介质 | |
US20130257686A1 (en) | Distributed virtual reality | |
CN111177167B (zh) | 增强现实的地图更新方法、装置、***、存储与设备 | |
CN113870439A (zh) | 用于处理图像的方法、装置、设备以及存储介质 | |
WO2022174517A1 (zh) | 一种人群计数方法、装置、计算机设备及存储介质 | |
CN204406423U (zh) | 一种图像和二维码结合的扩增实境识别装置 | |
CN112132938B (zh) | 模型元素的形变处理、画面渲染方法、装置、设备及介质 | |
US11562549B2 (en) | System and method for user interaction in complex web 3D scenes | |
CN112565883A (zh) | 一种用于虚拟现实场景的视频渲染处理***和计算机设备 | |
CN112017304A (zh) | 用于呈现增强现实数据的方法、装置、电子设备及介质 | |
CN116931783A (zh) | 一种前端海量树形结构展示方法、装置、电子设备及介质 | |
CN115775300A (zh) | 人体模型的重建方法、人体重建模型的训练方法及装置 | |
CN112667137B (zh) | 户型图和房屋三维模型的切换显示方法及装置 | |
CN111652831B (zh) | 对象融合方法、装置、计算机可读存储介质及电子设备 | |
CN115619986A (zh) | 场景漫游方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 3 / F, Shunfeng industrial building, No.2 Hongliu Road, Fubao community, Fubao street, Futian District, Shenzhen City, Guangdong Province Applicant after: Shenzhen Jingtai Technology Co.,Ltd. Address before: 518000 4th floor, No.9 Hualian Industrial Zone, Xinshi community, Dalang street, Longhua District, Shenzhen City, Guangdong Province Applicant before: Shenzhen Jingtai Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |