CN114020390A - Bim模型显示方法、装置、计算机设备和存储介质 - Google Patents
Bim模型显示方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114020390A CN114020390A CN202111315596.0A CN202111315596A CN114020390A CN 114020390 A CN114020390 A CN 114020390A CN 202111315596 A CN202111315596 A CN 202111315596A CN 114020390 A CN114020390 A CN 114020390A
- Authority
- CN
- China
- Prior art keywords
- bim model
- bim
- accessed
- model file
- processing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 100
- 238000009877 rendering Methods 0.000 claims abstract description 30
- 238000005516 engineering process Methods 0.000 claims abstract description 18
- 239000013585 weight reducing agent Substances 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 238000007906 compression Methods 0.000 claims description 10
- 238000003672 processing method Methods 0.000 claims description 10
- 230000006835 compression Effects 0.000 claims description 9
- 238000000926 separation method Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 15
- 239000012634 fragment Substances 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000011946 reduction process Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000509579 Draco Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/04—Architectural design, interior design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Evolutionary Computation (AREA)
- Architecture (AREA)
- Human Computer Interaction (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种BIM模型显示方法、装置、计算机设备和存储介质。所述方法包括:接收终端发送的BIM模型访问请求,BIM模型访问请求包括待访问BIM模型的模型标识;获取模型标识对应的BIM模型文件,并对BIM模型文件进行轻量化处理;向终端发送轻量化处理后的BIM模型文件,以供终端基于轻量化处理后的BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。采用本方法对BIM模型文件进行轻量化处理,解决BIM模型文件数据体积过大问题,并基于网页端WEBGL技术,无需安装任何插件,提高终端加载以及渲染BIM模型文件的效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种BIM模型显示方法、装置、计算机设备和存储介质。
背景技术
BIM(Building Information Modeling,简称BIM)模型是虚拟的建筑工程三维模型,以建筑工程项目的各项相关信息数据作为基础,建立起三维的建筑模型,通过数字信息仿真模拟建筑物所具有的真实信息。
在建筑设计或工业设计中存在大量BIM模型渲染的场景和需求。传统技术中,需要在终端上先安装ACTIVEX插件,终端从本地或服务器获取BIM模型文件,基于BIM模型文件进行渲染并展示BIM模型。
然而,BIM模型文件的体积较大,因此,存在终端加载BIM模型文件的效率较低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高加载BIM模型文件的效率的BIM模型显示方法、装置、计算机设备和存储介质。
一种BIM模型显示方法,该方法包括:
接收终端发送的BIM模型访问请求,该BIM模型访问请求包括待访问BIM模型的模型标识;
获取该模型标识对应的BIM模型文件,并对该BIM模型文件进行轻量化处理;
向该终端发送轻量化处理后的BIM模型文件,以供该终端基于该轻量化处理后的BIM模型文件,渲染该待访问BIM模型并显示渲染后的待访问BIM模型。
一种BIM模型显示方法,该BIM模型显示方法包括:
向服务器发送BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识;
接收该服务器发送的该模型标识对应的BIM模型文件,其中,该BIM模型文件为该服务器对初始BIM模型文件进行轻量化处理后的模型文件;
基于该BIM模型文件,渲染该待访问BIM模型并显示渲染后的待访问BIM模型。
一种BIM模型显示装置,该装置包括:
接收模块,用于接收终端发送的BIM模型访问请求,该BIM模型访问请求包括待访问BIM模型的模型标识;
轻量化处理模块,用于获取该模型标识对应的BIM模型文件,并对该BIM模型文件进行轻量化处理;
显示模块,用于向该终端发送轻量化处理后的BIM模型文件,以供该终端基于该轻量化处理后的BIM模型文件,渲染该待访问BIM模型并显示渲染后的待访问BIM模型。
一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现上述任一方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一方法的步骤。
上述BIM模型显示方法、装置、计算机设备和存储介质,通过接收终端发送的BIM模型访问请求,BIM模型访问请求包括待访问BIM模型的模型标识;获取模型标识对应的BIM模型文件,并对BIM模型文件进行轻量化处理;向终端发送轻量化处理后的BIM模型文件,以供终端基于轻量化处理后的BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。由于本发明实施例对BIM模型文件进行了轻量化处理,轻量化处理后的BIM模型文件的数据量小于原始的BIM模型文件,减小了BIM模型文件的体积,因此,能够提高终端从服务器获取BIM模型文件的效率以及加载BIM模型文件的效率。
附图说明
图1为一个实施例中BIM模型显示方法的应用环境图;
图2为本申请实施例中提供的一种BIM模型显示方法的流程示意图;
图3为本申请实施例中提供的一种BIM模型文件轻量化处理方法的流程示意图;
图4为本申请实施例中提供的一种相似性处理方法的流程示意图;
图5为本申请实施例中提供的一种向终端发送轻量化处理后BIM模型文件的流程示意图;
图6为本申请实施例中提供的另一种BIM模型显示方法的流程示意图;
图7为本申请实施例中提供的一种待访问BIM模型展示方法的流程示意图;
图8为本申请实施例中提供的一种渲染BIM模型方法的结构示意图;
图9为本申请实施例中提供的一种透视投影照相机示意图;
图10为本申请实施例中提供的一种BIM模型显示装置的结构示意图;
图11为本申请实施例中提供的另一种BIM模型显示装置的结构示意图;
图12为本申请实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供了一种BIM模型显示方法,可以应用于如图1所示的应用环境中。其中,终端101通过网络与服务器102进行通信。
其中,终端101可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
图2为本申请实施例中提供的一种BIM模型显示方法的流程示意图。在一个实施例中,如图2所示,包括以下步骤:
S201,接收终端发送的BIM模型访问请求,BIM模型访问请求包括待访问BIM模型的模型标识。
本实施例中,服务器已经预存了用户的BIM模型文件,用户通过终端向服务器发送BIM模型访问请求,待访问BIM模型的模型标识用于标识服务器中的待访问的BIM模型文件,服务器根据待访问BIM模型的模型标识,可以确定待访问BIM模型的模型标识对应的待访问的BIM模型文件。
S202,获取模型标识对应的BIM模型文件,并对BIM模型文件进行轻量化处理。
其中,服务器对BIM模型文件进行轻量化处理,获得轻量化后的BIM模型文件。例如,服务器对BIM模型文件进行参数化处理,得到参数化处理后的模型文件,并对参数化处理后的模型文件进行压缩处理,将压缩处理后的模型文件作为轻量化处理后的模型文件。
S203,向终端发送轻量化处理后的BIM模型文件,以供终端基于轻量化处理后的BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。
本实施例中,终端获得轻量化后的BIM模型文件后,可以采用网络图形库WebGL技术渲染待访问BIM模型并展示渲染后的待访问BIM模型。渲染是数据的实时计算和输出,是指用数学模型模拟客观世界中物体与可见光的相互作用生成真实感图像的过程。
本实施例提供的BIM模型显示方法,通过接收终端发送的BIM模型访问请求,BIM模型访问请求包括待访问BIM模型的模型标识,获取模型标识对应的BIM模型文件,并对该BIM模型文件进行轻量化处理,向终端发送轻量化处理后的BIM模型文件,以供终端基于轻量化处理后的BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型,由于本实施例对BIM模型文件进行了轻量化处理,轻量化处理后的BIM模型文件的数据量小于原始的BIM模型文件,减小了BIM模型文件的体积,因此,能够提高终端从服务器获取BIM模型文件的效率以及加载BIM模型文件的效率。
图3为本申请实施例中提供的一种BIM模型文件轻量化处理方法的流程示意图,参照图3,本实施例涉及的是如何对BIM模型文件进行轻量化处理的一种可选的实现方式。在上述实施例的基础上,上述的S202中对所述BIM模型文件进行轻量化处理具体包括如下步骤:
S301,对BIM模型文件进行数模分离,得到待访问BIM模型的几何数据和非几何数据。
本实施例中,BIM模型文件包含三维几何数据和模型结构属性等非几何数据两部分。首先,需要将BIM模型文件通过数模分离拆分为几何数据和非几何数据。通过这样的处理,原始BIM模型文件中约20%-50%的非几何数据会被剥离出去。
S302,对几何数据进行轻量化处理,轻量化处理包括参数化处理、三角化处理、相似性处理以及压缩处理中的至少一种。
本实施例中,几何数据可以为三维几何数据,也可以包括二维几何数据。对几何数据进行轻量化处理,例如可以对剥离非几何数据后得到三维几何数据进行轻量化处理,以降低三维几何数据的数据量,节约终端的渲染计算量,从而提高BIM模型文件下载、BIM模型渲染和功能处理的速度。
BIM模型文件中的三维几何数据指三维三角形网格(triangular mesh)或者三维线网格(polyline mesh),其中,每一个mesh由一个顶点数组和一个索引数组组成。
其中,参数化或三角化处理方法是将mesh转成nurbs或者其他参数表达方式,对于参数易表达的面,比如球体,这种方式大大减少了数据量。参数化或三角化处理方法可以通过如下方式实现:
重新mesh(remeshing),即将mesh重新采样做成一个新的mesh。
可选的,在上述实例的基础上,还可以包括如下实现参数化的方式:
曲面细分(subdividision),即将一个曲面细分,生成一个更加复杂的曲面,实质上是生成一个由原先曲面作为控制点的b-spline surfac。
可选的,在上述实例的基础上,还可以包括如下实现参数化的方式:
BIM模型文件中管道等利用extrusion操作生成的结构,此类结构可以用一条路径加一个横截面来表达。如果横截面为一个方便公式表达的形状,例如圆形,那么数据压缩的效果会更加明显。为了进一步减轻终端将这种参数表达的形体展开为mesh的工作量,可以将路径(path)中的采样点预先计算出来。
可选的,上述S302中的对几何数据进行轻量化处理,还可以通过如下方式实现:
使用Google的Draco库对几何数据进行压缩。
可选的,在上述实例的基础上,还可以包括如下压缩实现方式:
将BIM模型文件数据进行gzip压缩后保存,因为浏览器原生支持gzip解压在传输过程还是gzip压缩数据,而在应用层已经为解压后的模型数据,gzip的压缩率例如为2:1时,能压缩到BIM模型文件原始数据一半的大小。
可选的,上述S302中的对几何数据进行轻量化处理,还可以通过相似性处理方法实现。
需要说明的是,可以采用上述的参数化处理、三角化处理、相似性处理以及压缩处理中的多种处理方式进行轻量化处理,例如对几何数据进行相似性处理后,将处理后得到的数据再进行压缩处理,将压缩处理后的数据作为轻量化处理后的BIM模型文件。
图4为本申请实施例中提供的一种相似性处理方法的流程示意图,参照图4,本实施例涉及的是如何对BIM模型文件进行相似性处理的一种可选的实现方式。在上述实施例的基础上,相似性处理方法具体包括如下步骤:
S401,识别几何数据中的基准图形。
其中,在本实施例中,基准图形可以为三角形、长方形或正方形。
S402,确定基准图形中的相似的图形。
在本实施例中,BIM模型文件中很多构件结构相同,只是所处位置或角度不同,这样的构件会被服务器识别为相似。
S403,将相似的图形的数据进行合并简化处理。
在本实施例中,使用相似性算法对进行数据合并,即:只保留一个构件的数据,其他相似构件通过“引用+空间坐标”的形式标记。
传统技术中,由于BIM模型文件的数据体积较大,存在终端加载BIM模型文件时内存溢出的问题。而本实施例提供的轻量化BIM模型方法,通过使用参数化处理、三角化处理、相似性处理以及压缩处理中的至少一种,减少BIM模型文件的体积,从而减少BIM模型文件的传输所需的时间以及终端加载BIM模型文件所需的时间,并且能够避免内存溢出的问题,能够有效提高终端加载以及渲染BIM模型文件的效率。
图5为本申请实施例中提供的一种向终端发送轻量化处理后BIM模型文件的流程示意图;参照图5,本实施例涉及的是向终端发送轻量化处理后BIM模型文件的一种可选的实现方式,在上述实施例的基础上,上述的S203具体包括如下步骤:
S501,接收终端发送的当前视点到待访问BIM模型的距离。
体积大的BIM模型构件数量会非常多,在WEB浏览器中全部下载和加载这些构件会影响下载以及加载速度。同时,观察BIM模型的视野范围或场景又是相对有限的。因此在本实施例中,利用上述特点,可以创建一个符合场景远近原则的多级构件体系,服务器接收终端发送的当前视点到待访问BIM模型的距离。
S502,从对应关系中确定所述距离对应的轻量化处理后的BIM模型文件,并向终端发送距离对应的轻量化处理后的BIM模型文件。
其中,所述对应关系包括不同的距离与不同的轻量化处理后的BIM模型文件之间的对应关系。
在本实施例中,服务器从对应关系中确定所述距离对应的轻量化处理后的BIM模型文件。若当前视点到待访问BIM模型的距离为较远距离时,服务器获取对应的轻量化处理后的BIM模型文件,该BIM模型文件用于展示全景的BIM模型;若当前视点到待访问BIM模型的距离为近距离时,服务器获取对应的轻量化处理后的BIM模型文件,该BIM模型文件用于展示BIM模型的细节信息。
在本实施例中,若当前视点到待访问BIM模型的距离为远距离时,服务器获取对应的轻量化处理后的关于全景的BIM模型文件并发送给终端,因此,当使用终端的用户进行远距离浏览BIM模型时,用户并不关注BIM模型文件上构件的具体细节,此种情况下,服务器无需向终端发送用于展示细节信息的BIM模型文件,终端仅接收服务器发送的全景的BIM模型文件,从而降低了终端接收的BIM模型的数据量,提高了终端加载BIM模型文件的效率;若当前视点到待访问BIM模型的距离变小时,即当前视点到待访问BIM模型的距离为近距离时,服务器获取对应的轻量化处理后的关于细节信息的BIM模型文件并发送给终端,因此,当使用终端的用户使用近距离观察BIM模型时,用户需要看到此BIM模型构件细节,而不用看到BIM模型的全景,此种情况下,服务器需向终端发送用于展示细节信息的BIM模型文件,终端仅接收服务器发送的用于展示BIM模型的细节信息的BIM模型文件,从而降低了终端接收的BIM模型的数据量,提高了终端加载BIM模型文件的效率。
由于本实施例根据当前视点到待访问BIM模型的距离远近来确定向终端发送距离对应的轻量化处理后的BIM模型文件,提高BIM模型文件在WEB浏览器加载速度,进而提高了BIM模型的渲染速度。
图6为本申请实施例中提供的另一种BIM模型显示方法的流程示意图,本实施例提供的BIM模型显示方法可以应用于终端,该方法可以通过如下方式实现,参照图6,具体包括如下步骤:
S601,向服务器发送BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识。
终端向服务器BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识,获取服务器上待访问BIM模型的模型标识对应的确认待访问的BIM模型文件。
S602,接收服务器发送的模型标识对应的BIM模型文件。
其中,BIM模型文件为服务器对初始BIM模型文件进行轻量化处理后的模型文件。例如,终端接收服务器参数化处理和压缩处理后的BIM模型文件。
S603,基于BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。
本实施例中,终端获得轻量化后的BIM模型文件后,可以采用网络图形库WebGL技术渲染待访问BIM模型并展示渲染后的待访问BIM模型。
本实施例提供的BIM模型显示方法,通过向服务器发送BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识,接收服务器发送的模型标识对应的进行轻量化后的BIM模型文件,基于BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型,由于本实施例对BIM模型文件进行了轻量化处理,轻量化处理后的BIM模型文件的数据量小于原始的BIM模型文件,减小了BIM模型文件的体积,因此,能够提高终端从服务器获取BIM模型文件的效率以及加载BIM模型文件的效率。
可选的,上述的S603可以通过如下方式实现:
基于所述BIM模型文件,采用网络图形库WebGL技术渲染待访问BIM模型并展示渲染后的待访问BIM模型。
传统技术中,需要在终端上安装插件,例如安装ACTIVEX插件,导致用户操作繁琐,对用户的技术门槛的要求较高。而本实施例中,采用WebGL技术渲染待访问BIM模型,无需安装客户端插件,降低了对用户的技术门槛的要求。
可选的,上述的S603也可以通过如下方式实现:
使用Navisworks开发基于Web的应用渲染待访问BIM模型并展示渲染后的待访问BIM模型。
需要说明的是,还可以采用其他渲染方式渲染待访问BIM模型,本实施例对具体的渲染方式不进行限制。
图7为本申请实施例中提供的一种待访问BIM模型展示方法的流程示意图,参照图7,本实施例涉及的是如何渲染并展示渲染后的待访问BIM模型的一种可选的实现方式。在上述实施例的基础上,上述的S603具体包括如下步骤:
S701,对BIM模型文件进行解析,得到待访问BIM模型的顶点的信息。
其中,S701可以通过如下方式实现:
解析上述S602获取到的BIM模型文件,得到BIM模型的顶点信息,将BIM模型的顶点信息数据加载至内存,并以缓冲区的形式传递给着色器。
其中,缓冲区是保存数据的WebGL的内存区域,可以用来描述和处理模型的几何形状。WebGL(Web Graphics Library)是一种3D绘图标准,通过结合JavaScript和OpenGL ES2.0,可以为HTML5的Canvas标签提供硬件3D加速渲染,从而可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型。在本申请实施例中,不同浏览器生成WebGL对象方式有所区别,所以创建WebGL对象时做一下兼容处理。
WebGL依赖一种新的称为着色器(shader)的绘图机制。着色器提供了灵活且强大的绘制二维或三维图形的方法,所有WebGL必须使用它。
更具体的,着色器语言的属性变量指向缓冲区对象,它们作为输入传递给顶点着色器(Vertex shader)。顶点着色器是一个程序代码,在每个顶点上被调用,将几何(例如:三角形)从一个位置转换(移动)到另一个位置。它处理每个顶点(每顶点数据)的数据,如顶点坐标,法线,颜色和纹理坐标。
着色器语言使用的是GLSL ES语言,所以在javascript需要将之存放在字符串中,等待调用编译。更具体的,着色器语言中涉及到vec4的数据类型,此数据类型是一个思维浮点数组,为(1.0,1.0,1.0,1.0)。其中,着色器中包含几个内置变量包括:
1、gl_Position:为一种vec4类型的变量,且必须被赋值。四维坐标矢量,也称之为齐次坐标,即(x,y,z,w)等价于三维左边(x/w,y/w,z/w),w相当于深度,默认可设置为1.0。
2、gl_PointSize:表示顶点的尺寸,也是浮点数,为非必填项,如果不填则默认显示为1.0。
3、gl_FragColor:该变量为片元着色器唯一的内置变量,表示颜色,也是一个vec4类型变量,分别代表(R,G,B,A),颜色范围是0.0-1.0,对应Javascript中的#00-#FF。
有着色器就可以绘制图像,绘制3D图形需要有对应的三维坐标系。
S702,根据顶点信息,在WebGL三维坐标系中绘制待访问BIM模型的基准图形。其中,S702可以通过如下方式实现:
WebGL的坐标系与实际页面中的坐标系不同,WebGL采用右手坐标系。普通canvas坐标系与正常的浏览器像素值相同,但WebGL中的坐标系是以整个WebGL中心点为(0.0,0.0),且坐标的精确度为小数点后一位,整个WebGL的尺寸是与canvas宽度与高度相关联的,canvas的宽度与高度如果用css来设置的话,会被默认成100×100,即需要设置坐标系和绘制缩放比例。
通过获取顶点信息后传递给OpenGL底层绘制后,会先进行光栅化,也就是把点转化成对应的像素。然后在片元着色器会逐个点进行渲染,绘制基准图形。
其中,光栅化剔除将所有在视图区域不可见的方位不正确的基准图形都被丢弃;如果基准图形部分在视图区域外部,则视图区域外的部分将被删除,最终就达到了视觉看到的效果。
其中,片元着色器(Fragment shader)是行逐片元处理过程(如光照等)的程序。片元是一个WebGL的术语,可以将其理解成像素。
S703,根据预先创建的场景对象、相机对象、光源对象以及基准图形,生成待访问BIM模型,渲染待访问BIM模型并展示渲染后的待访问BIM模型。
其中,相机对象可以通过如下方式实现:
在本申请实施例中,使用透视投影照相机,获得的结果是类似人眼在真实世界中看到的“近大远小”的效果。参照图8和图9,其中,图8为本申请实施例中提供的一种渲染BIM模型方法的结构示意图,在本申请实施例中,图8中的虚拟场景指本申请实施例创建的场景对象,图8中的虚拟相机指本申请实施例创建的相机对象,图8中的光源指本申请实施例的光源对象,图8中的投影图(渲染结果)指本申请实施例中的渲染后的待访问BIM模型。图9为本申请实施例中提供的一种透视投影照相机示意图,透视投影摄像机需要设置参数,比如:
摄像机视锥体垂直视野角度fov,即从视图的底部到顶部,以角度来表示,默认值是50。摄像机视锥体的长宽比,使用画布的宽(w)除以画布的高(h),默认值是1;远端面距离far,摄像机的远端面,默认值是2000;近端面距离near,摄像机的近端面,默认值是0.1。
其中,当物体所在的位置比摄像机的远端面远或者所在位置比近端面近的时候,该物体超出的部分将不会被渲染到场景中。
可选的,也可以使用正交投影照相机,获得的结果就为几何学上画的效果,对于在三维空间内平行的线,投影到二维空间中也一定是平行的。
由于传统技术中用户需安装ActiveX插件,利用客户端加载及渲染技术去展现三维可视化模型,因此,用户操作步骤较为繁琐。若用户由于不懂该技术知识没有在终端上安装该插件,则无法展示BIM模型,因此,传统技术对用户的技术门槛要求较高。而本实施例中通过终端解析BIM模型文件获取待访问BIM模型顶点的信息,根据顶点信息,在WebGL三维坐标系中绘制待访问BIM模型的基准图形,根据预先创建的场景对象、相机对象、光源对象以及基准图形,生成待访问BIM模型,渲染待访问BIM模型并展示渲染后的待访问BIM模型,从而终端可以无需安装使用ACTIVEX插件,采用网络图形库WebGL技术渲染待访问BIM模型并显示渲染后的待访问BIM模型,简化用户操作步骤,无需用户安装插件,降低了对用户的技术门槛的要求。
应该理解的是,虽然图1-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-7中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
参照图10,图10为本申请实施例中提供的一种BIM模型显示装置的结构示意图,该装置1000包括:接收模块1001、轻量化处理模块1002和发送模块1003,其中:
接收模块1001,用于接收终端发送的BIM模型访问请求,BIM模型访问请求包括待访问BIM模型的模型标识。
轻量化处理模块1002,用于获取模型标识对应的BIM模型文件,并对BIM模型文件进行轻量化处理。
发送模块1003,用于向终端发送轻量化处理后的BIM模型文件,以供终端基于所述轻量化处理后的BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。
本实施例提供的BIM模型显示装置,通过接收终端发送的BIM模型访问请求,BIM模型访问请求包括待访问BIM模型的模型标识,获取模型标识对应的BIM模型文件,并对BIM模型文件进行轻量化处理,向终端发送轻量化处理后的BIM模型文件,以供终端基于轻量化处理后的BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。由于本发明实施例对BIM模型文件进行了轻量化处理,轻量化处理后的BIM模型文件的数据量小于原始的BIM模型文件,减小了BIM模型文件的体积,因此,能够提高终端从服务器获取BIM模型文件的效率以及加载BIM模型文件的效率。
可选的,轻量化处理模块1002,具体用于对BIM模型文件进行数模分离,得到待访问BIM模型的几何数据和非几何数据;对几何数据进行轻量化处理,其中,轻量化处理包括参数化处理、三角化处理、相似性处理以及压缩处理中的至少一种。
可选的,轻量化处理模块1002,具体用于识别几何数据中的基准图形;确定基准图形中的相似的图形;将相似的图形的数据进行合并简化处理。
可选的,发送模块1003,具体用于接收终端发送的当前视点到待访问BIM模型的距离;从对应关系中确定距离对应的轻量化处理后的BIM模型文件,并向终端发送距离对应的轻量化处理后的BIM模型文件;其中,对应关系包括不同的距离与不同的轻量化处理后的BIM模型文件之间的对应关系。
参照图11,图11为本申请实施例中提供的另一种BIM模型显示装置的结构示意图,该装置1100包括:发送模块1101、接收模块1102以及渲染模块1103,其中:
发送模块1101,用于向服务器发送BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识。
接收模块1102,用于接收服务器发送的模型标识对应的BIM模型文件,其中,BIM文件为服务器对初始BIM模型文件进行轻量化处理后的模型文件。
渲染模块1103,用于基于BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型。
本实施例提供的BIM模型显示装置,通过向服务器发送BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识,接收服务器发送的模型标识对应的进行轻量化后的BIM模型文件,基于BIM模型文件,渲染待访问BIM模型并显示渲染后的待访问BIM模型,由于本实施例对BIM模型文件进行了轻量化处理,轻量化处理后的BIM模型文件的数据量小于原始的BIM模型文件,减小了BIM模型文件的体积,因此,能够提高终端从服务器获取BIM模型文件的效率以及加载BIM模型文件的效率。
可选的,渲染模块1103具体用于基于BIM模型文件,采用网络图形库WebGL技术渲染待访问BIM模型并展示渲染后的待访问BIM模型。
可选的,渲染模块1103,具体用于对BIM模型文件进行解析,得到待访问BIM模型的顶点的信息;根据顶点的信息,在WebGL三维坐标系中绘制待访问BIM模型的基准图形;根据预先创建的场景对象、相机对象、光源对象以及基准图形,生成待访问BIM模型,渲染待访问BIM模型并展示渲染后的待访问BIM模型。
关于BIM模型显示装置的具体限定可以参见上文中对于模型显示方法的限定,在此不再赘述。上述BIM模型显示装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在本申请的一个实施例中,提供了一种计算机设备,该计算机设备可以是终端或服务器,其内部结构图可以如图12所示,图12为一个实施例中计算机设备的内部结构图。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种BIM模型显示方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在本申请的一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述实施例提供的BIM模型显示方法的步骤。其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时上述实施例提供的BIM模型显示方法步骤。其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种BIM模型显示方法,其特征在于,所述方法包括:
接收终端发送的BIM模型访问请求,所述BIM模型访问请求包括待访问BIM模型的模型标识;
获取所述模型标识对应的BIM模型文件,并对所述BIM模型文件进行轻量化处理;
向所述终端发送轻量化处理后的BIM模型文件,以供所述终端基于所述轻量化处理后的BIM模型文件,渲染所述待访问BIM模型并显示渲染后的待访问BIM模型。
2.根据权利要求1所述的方法,其特征在于,所述对所述BIM模型文件进行轻量化处理,包括:
对所述BIM模型文件进行数模分离,得到所述待访问BIM模型的几何数据和非几何数据;
对所述几何数据进行轻量化处理,其中,所述轻量化处理包括参数化处理、三角化处理、相似性处理以及压缩处理中的至少一种。
3.根据权利要求2所述的方法,其特征在于,所述相似性处理的方法包括如下步骤:
识别所述几何数据中的基准图形;
确定所述基准图形中的相似的图形;
将所述相似的图形的数据进行合并简化处理。
4.根据权利要求1至3任一所述的方法,其特征在于,所述向所述终端发送轻量化处理后的BIM模型文件,包括:
接收所述终端发送的当前视点到所述待访问BIM模型的距离;
从对应关系中确定所述距离对应的轻量化处理后的BIM模型文件,并向所述终端发送所述距离对应的轻量化处理后的BIM模型文件;
其中,所述对应关系包括不同的距离与不同的轻量化处理后的BIM模型文件之间的对应关系。
5.一种BIM模型显示方法,其特征在于,所述方法包括:
向服务器发送BIM模型访问请求,模型访问请求包括待访问BIM模型的模型标识;
接收所述服务器发送的所述模型标识对应的BIM模型文件,其中,所述BIM模型文件为所述服务器对初始BIM模型文件进行轻量化处理后的模型文件;
基于所述BIM模型文件,渲染所述待访问BIM模型并显示渲染后的待访问BIM模型。
6.根据权利要求5所述的方法,其特征在于,所述基于所述BIM模型文件,渲染所述待访问BIM模型并展示渲染后的待访问BIM模型,包括:
基于所述BIM模型文件,采用网络图形库WebGL技术渲染所述待访问BIM模型并展示渲染后的待访问BIM模型。
7.根据权利要求6所述的方法,其特征在于,所述基于所述BIM模型文件,采用网络图形库WebGL技术渲染所述待访问BIM模型并展示渲染后的待访问BIM模型,包括:
对所述BIM模型文件进行解析,得到所述待访问BIM模型的顶点的信息;
根据所述顶点的信息,在WebGL三维坐标系中绘制所述待访问BIM模型的基准图形;
根据预先创建的场景对象、相机对象、光源对象以及所述基准图形,生成所述待访问BIM模型,渲染所述待访问BIM模型并展示渲染后的待访问BIM模型。
8.一种BIM模型显示装置,其特征在于,所述装置包括:
接收模块,用于接收终端发送的BIM模型访问请求,所述BIM模型访问请求包括待访问BIM模型的模型标识;
轻量化处理模块,用于获取所述模型标识对应的BIM模型文件,并对所述BIM模型文件进行轻量化处理;
发送模块,用于向所述终端发送轻量化处理后的BIM模型文件,以供所述终端基于所述轻量化处理后的BIM模型文件,渲染所述待访问BIM模型并显示渲染后的待访问BIM模型。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111315596.0A CN114020390A (zh) | 2021-11-08 | 2021-11-08 | Bim模型显示方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111315596.0A CN114020390A (zh) | 2021-11-08 | 2021-11-08 | Bim模型显示方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114020390A true CN114020390A (zh) | 2022-02-08 |
Family
ID=80062509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111315596.0A Pending CN114020390A (zh) | 2021-11-08 | 2021-11-08 | Bim模型显示方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020390A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116186819A (zh) * | 2022-08-20 | 2023-05-30 | 苏州智在云数据科技有限公司 | Bim模型轻量化处理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161390A (zh) * | 2019-12-31 | 2020-05-15 | 北京恒华伟业科技股份有限公司 | 一种基于BIM模型和WebGL的渲染方法及装置 |
CN111833388A (zh) * | 2020-07-12 | 2020-10-27 | 张磊 | 一种面向webgl引擎和bim应用的三维模型轻量化方法 |
CN112182700A (zh) * | 2020-09-17 | 2021-01-05 | 中北大学 | 一种基于Web端的BIM三维建筑模型展示方法 |
-
2021
- 2021-11-08 CN CN202111315596.0A patent/CN114020390A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161390A (zh) * | 2019-12-31 | 2020-05-15 | 北京恒华伟业科技股份有限公司 | 一种基于BIM模型和WebGL的渲染方法及装置 |
CN111833388A (zh) * | 2020-07-12 | 2020-10-27 | 张磊 | 一种面向webgl引擎和bim应用的三维模型轻量化方法 |
CN112182700A (zh) * | 2020-09-17 | 2021-01-05 | 中北大学 | 一种基于Web端的BIM三维建筑模型展示方法 |
Non-Patent Citations (2)
Title |
---|
刘洋: "基于WebGL的BIM模型轻量化展示应用研究", 中国优秀硕士学位论文全文数据库工程科技Ⅱ辑, no. 09, 15 September 2021 (2021-09-15), pages 038 - 67 * |
吴大江: "基于BIM技术的装配式建筑一体化集成应用", 31 December 2020, 东南大学出版社, pages: 110 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116186819A (zh) * | 2022-08-20 | 2023-05-30 | 苏州智在云数据科技有限公司 | Bim模型轻量化处理方法、装置、设备及存储介质 |
CN116186819B (zh) * | 2022-08-20 | 2024-03-12 | 苏州智在云数据科技有限公司 | Bim模型轻量化处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9024947B2 (en) | Rendering and navigating photographic panoramas with depth information in a geographic information system | |
US9519999B1 (en) | Methods and systems for providing a preloader animation for image viewers | |
US8134556B2 (en) | Method and apparatus for real-time 3D viewer with ray trace on demand | |
US10102654B1 (en) | System and method for a scalable interactive image-based visualization environment of computational model surfaces | |
KR20210151114A (ko) | 하이브리드 렌더링 | |
CN111754381B (zh) | 图形渲染方法、装置和计算机可读存储介质 | |
CN103247072B (zh) | 基于安卓系统实现三维旋转界面的方法及装置 | |
CN114494328B (zh) | 图像显示方法、装置、电子设备及存储介质 | |
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
CN110910504A (zh) | 区域的三维模型的确定方法及装置 | |
RU2680355C1 (ru) | Способ и система удаления невидимых поверхностей трёхмерной сцены | |
CN114419226A (zh) | 全景渲染方法、装置、计算机设备和存储介质 | |
US8379037B1 (en) | Multi-resolution texture aggregation | |
US11803674B2 (en) | Dual mode post processing | |
US10347034B2 (en) | Out-of-core point rendering with dynamic shapes | |
WO2022121653A1 (zh) | 确定透明度的方法、装置、电子设备和存储介质 | |
CN113724331B (zh) | 视频处理方法、视频处理装置和非瞬时性存储介质 | |
CN114020390A (zh) | Bim模型显示方法、装置、计算机设备和存储介质 | |
Baek | An emulation scheme for OpenGL SC 2.0 over OpenGL | |
US11869123B2 (en) | Anti-aliasing two-dimensional vector graphics using a compressed vertex buffer | |
US11417058B2 (en) | Anti-aliasing two-dimensional vector graphics using a multi-vertex buffer | |
CN114842127A (zh) | 地形渲染方法及装置、电子设备、介质及产品 | |
KR101227155B1 (ko) | 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법 | |
CN111599011A (zh) | 基于WebGL技术的电力系统场景快速构建方法及系统 | |
CN116109776B (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 |