# 缓存

# 相关主题

在三维场景中显示各种立体数据时,若数据量较大,复位时读取显示所有数据,导致显示效率非常慢。为加快显示效率,可创建缓存。

缓存策略是把空间数据按照一定的规则划分成一个个切片文件,再通过特定的文件索引目录结构来组织这些文件的一种策略。该策略有效地提升产品性能,保证了数据在的快速加载与显示。

目前,MapGIS 10提供了Region和M3D两种缓存模型:

M3D即MapGIS三维空间数据规范,是针对海量三维数据网络应用的数据交换格式,通过对海量三维数据进行网格划分与分层组织,采用流式传输模型,实现多端一体的高效解析和渲染。M3D服务接口遵循RESTful设计规范,可通过桌面端、浏览器端调用该服务。M3D数据压缩文件,包含几何要素文件、属性记录文件和纹理图片文件三部分内容。几何要素文件描述一个空间范围内的三维数据的几何及材质信息;属性记录文件描述数据的属性结构、属性字段和属性记录;纹理图片文件是指材质信息中关联的纹理图片文件。

Region缓存与M3D类似,是MapGIS内置的缓存模型,由于其接口限制,主要用于桌面端。

缓存类型 Region缓存 M3D缓存
数据类型 模型数据 模型数据(面、体)、倾斜摄影(OSGB)、BIM(RVT、IFC、要素数据集)
索引文件后缀 *.mcx *.mcj
使用范围 C/S端 C/S端、B/S端
坐标系 与原始模型数据一致 世界坐标系
坐标系原点 ---- 模型中心点
原点坐标系 ---- 地理坐标系(WGS84)

(一)M3D数据空间参考系

M3D缓存数据内部位置采用笛卡尔直角坐标系,以数据的外包立方体的中心点为原点,M3D中各点的坐标值(xyz坐标)是相对于中心点的距离(单位为米)。

其中,中心点采用地理坐标系(WGS1984_度)。

(二)M3D数据存储

MapGIS中显示3D数据时,由相机高度来控制3D数据显示的精细程度。相机高度是视点与3D数据外包长方体的最近距离。相机高度值越大,代表视点距离3D数据越远,此时看到的数据也相对越模糊。

因此,M3D数据存储时,采用了LOD分层数据模式,对3D数据构建不同精细程度的LOD缓存,当相机高度越小,会调用显示LOD值越大的M3D数据,显示越精细。

  • 对于M3D2.0,其根目录下有:

    • 一个mcj文件(一种json文本文件),此文件的文件名可任意设置,用于描述整份M3D数据。
    • 一个根节点(RootNode)json描述文件,是对当前node的json描述文件。
    • 一个Data目录用于存放分层数据,每个节点目录下仍能拥有更下一级的节点目录,可递归。

  • 对于M3D2.1,有5种类型原始数据生成的缓存:

      1. 分层分户数据M3D文件组成示例如下图,功能模块参考人工精模生成缓存中,对分层分户数据设置结构树参数。

# 上载及导入缓存

# 上载数据库

# 功能说明

MapGIS支持将缓存上载到MongoDB或MMT存储。

# 操作说明

(一)上载至MongoDB

1. 配置注册MongoDB数据库,创建数据库表;

2. 点击菜单【数据】--【缓存文件】-【上载数据库】,在弹出的对话框中添加缓存数据,勾选MongoDB,设置MongoDB数据库路径。点击"确定",完成数据上载,如下图所示:

3. 添加单个或多个缓存文件,目前可支持M3D1.0/M3D2.0/M3D2.1/地形缓存/3DTiles等格式的三维缓存数据的上传。

提示:

此处需选择缓存数据配置文件上一级的根目录。如“C:\Program Files\MapGIS 10\Temp\DataCache3D\M3D\景观_建筑模型”的根目录示例图:

4. 设置MongoDB数据库的IP地址、端口号等信息,点击"确定",完成缓存上载。

提示:

上载后的缓存数据名称为根目录名加数据类型后缀"_M3D"、"_3DTiles"、"_Terrain",如下图所示:

(二)上载至MMT

1. 点击菜单【数据】--【缓存文件】-【上载数据库】,在弹出的对话框中添加缓存数据,勾选MMT,设置存储路径。点击"确定",完成数据上载,如下图所示:

# 导入缓存

# 功能说明

导入缓存提供各类缓存的添加、以及批量添加缓存的功能。

# 操作说明

1. 【三维建模】菜单--【缓存】-【根据索引文件导入缓存】,这里可直接添加mcx、mcj缓存文件,数据可在场景中加载显示;

2. 【三维建模】菜单--【缓存】-【从MongoDB导入缓存】,可直接添加MongoDB上存储的缓存文件,数据可在场景中加载显示;

3. 【三维建模】菜单--【缓存】-【批量导入缓存】,可直接选择文件夹,批量导入缓存,一次添加多个文件到场景中显示。

# 模型缓存

# 人工精模

# 功能说明

对于通用景观等人工精模,导入到MapGIS GDB中后,可生成三维面/体简单要素类。通过此工具,可将人工精模数据转换为M3D缓存数据。

# 操作说明

1. 启动“模型缓存”功能,弹出如下所示对话框。点击“添加”,可添加三维面/体简单要素类:

2. 设置缓存结果信息,包括缓存名称、存储类型及路径信息。目前可支持保存为本地文件和MongoDB两种存储类型。

提示:

考虑到数据类型通用性、属性等原因,目前支持生成M3D2.1和M3D2.0,不再考虑生成M3D1.0.

  • 【本地】:保存为本地文件夹,并以层级机构存储M3D;
  • 【MongoDB】:存储到MongoDB中时,需已有MongoDB数据库,并已知其IP、端口号、数据库名等信息,结果M3D名称即MongoDB中数据集名。

3. 设置转换参数信息。

  • 【分块策略】:生成M3D时,当数据量比较大时,建议采用分块策略创建LOD,保证视距较大时的高效浏览。分块策略包括四叉树和八叉树两种模式,对于城市景观等人工精模,更适用于四叉树分块策略。缓存级别则按照电子地图通用比例尺级别划分规则,具体切片尺寸及使用场景可参考下图:

  • 【纹理图集】:设置纹理图集尺寸,包括1024*1024、2048*2048、4096*4096三种尺寸。纹理图集会有效降低渲染批次,图集尺寸越大,对显存要求越高。
  • 【几何压缩】:勾选时,生产M3D时可压缩几何大小,从而可以降低数据量大小。属于有损压缩,对于规则的几何体由于压缩后精度损失可能会产生缝隙,默认不勾选。
  • 【纹理压缩】:勾选时,生产M3D时可对纹理进行压缩处理。
    • 【不压缩】:不压缩时,采用png或jpg等传统图片格式,显存占用大,慢。
    • 【ktx2】:KTX 2.0是一种纹理存储格式,大部分PC及移动端均可适配这种格式,可以有效降低设备的显存占用,提高运行效率和稳定性。采用ktx2纹理压缩时,可适配pc、安卓、苹果等不同设备的高效渲染,并可有效降低显存占用量,提升浏览效率。但会降低生产M3D缓存的速度。对于纹理数据量比较大的模型,推荐使用该模式。
    • 【webp】:WebP是Google的一种图片文件格式。相较于ktx2模式,webp模式对显存占用更高,但生产M3D缓存的速度更快。仅限项目有指定纹理压缩要求或测试生成M3D效果时使用webp模式,否则建议采用ktx2模式。
  • 【几何化简】:采用“四叉树”或“八叉树”分块策略时,可根据不同级别LOD数据精度对几何进行自动化简,降低数据量大小,提升数据绘制效率。
  • 【纹理质量】:设置纹理图片压缩质量。质量为“高”时,纹理图片采用原始分辨率,为“中”、“低”时会按照比例进行图片抽稀。当人工精模的纹理图片分辨率很高时,其纹理数据量会很大,此时该参数可以有效降低数据量,提升渲染效率。

  • 【几何分割】:开启分块策略后,会将数据划分为若干个瓦片,勾选此参数后可根据瓦片范围分割数据。对于机场、火车站等单体模型范围跨度较大的数据,按瓦片分割数据后,可有效加快显示效率。

4. 设置坐标信息。可通过“投影转换”和“定位点”两种方式设置结果M3D坐标信息。

  • 【投影转换】:当原始模型数据包含空间参照系信息时,此处会读取原始数据的空间参照系信息。结果M3D在球面上显示坐标为原始模型投影到“WGS1984_度”后的值。若原始模型数据空间参照系信息不正确,此处也可手动设置源坐标系信息。

  • 【定位点】:若原始模型没有空间参照系信息,可指定原点的经纬度坐标值,结果会将原始模型中(0,0,0)位置偏移到指定的经纬度及高程值位置。

提示:

1、坐标设置方式只是将rvt数据原点偏移到指定经纬度坐标位置,当数据模型较长时,可能会导致距离原点较远的位置z值与真实值有偏差。比如几十公里长的桥梁模型数据,“投影变换”方式,会对模型上每一个点进行投影操作,但“坐标设置”方式仅做了平移,在距离原点较远的位置,前者比后者的z更趋近于真实z值。

2、“定位点”模式是将原始模型中(0,0,0)位置偏移到指定经纬度及高程位置。若原始模型的坐标范围非常大,如xy值均为几十万米,此时用这种方式可能会导致数据偏移位置异常,此时建议用“投影转换”方式或者将先原始模型偏移到(0,0,0,)附近。

5. 设置属性信息。默认情况下不生成任何属性数据,可勾选单个或多个属性字段保留到结果M3D中。

  • 【内嵌】:将模型的属性内容内嵌到生成的.m3d文件中存储。当数据体量较小,适用于此场景。
  • 【外置】:将模型的属性内容存储在独立生成的.att文件中。当数据体量较大,独立生成.att存储属性在B/S端应用更流畅。

6. 结构树设置。用于组织和展示建筑信息的一种数据结构,以树状结构呈现,类似项目设计的目录,用于统揽模型结构状态。可以自定义多个节点级别并关联到对应的模型属性字段信息。生成缓存后在前端展示此结构树级别。

7. 其他参数设置。

  • 【统改同类型参数】:同时添加多个模型数据时,对其中一个模型数据设置参数后,可同步设置其他所有模型数据。

  • 【恢复默认参数】:点击此功能,可恢复为默认参数配置。

  • 【生成失败时,删除缓存数据】:勾选时,当生成M3D失败时,会自动删除残余的文件。

  • 【合并数据源】:输入多个数据并选中,勾选合并数据源后可将选中的数据逻辑上作为一个整体生成缓存。

    提示:

    1、选择多项数据,勾选合并数据源后,单选其中任意一项,即可对合并的数据源进行参数设置。

    2、要对合并的数据源执行非合并操作,需要选中其父项处"模型(合并)",然后取消勾选"合并数据源"。

8. 点击【生成】,即可执行生成M3D操作。

# BIM(rvt、ifc、要素数据集)

# 功能说明

BIM(Building Information Modeling)是目前常见建筑模型,可用于模拟建筑物所具有的真实信息。目前常见的BIM模型数据包括rvt、ifc、fbx等格式。

对于rvt、ifc格式,MapGIS可直接将其生成M3D缓存,并在web端发布显示。通过这种方式生成的M3D缓存,具有如下优势:

  • 适配主流的revit版本,包括revit2016、2017、2018、2019、2020、2021、2022、2023、2024版本;
  • 适配主流的ifc版本,包括ifc2x3、ifc4版本;
  • 能够自动计算几何误差、模型化简等较难易错参数,并且满足前端的高性能可视化需求;
  • 继承BIM数据的构件树及属性信息。

提示:

MapGIS在缓存Revit中的BIM数据前,需安装Autodesk Revit64位软件(与MapGIS产品架构保持一致)。

在Revit中制作BIM数据时,经常会根据BIM结构创建为多个rvt文件,并制作一个整体的rvt文件来引用这些分散的rvt文件。针对这种情况,在生产M3D时,只需对整体的rvt文件进行操作即可。

# 操作说明

1. 启动“模型缓存”功能,弹出如下所示对话框。点击“添加”,可添加本地rvt、ifc及要素数据集格式的BIM数据:

2. 设置缓存结果信息及参数信息,部分参数信息可参考“人工精模”中参数解释。

  • 【指定视图】:不勾选时,默认采用“{三维}”视图。在Revit中制作BIM时,可创建多个三维视图,此处可指定待转换的三维视图。
  • 【详细程度】:控制模型的精细程度。在rvt中构件某些圆柱模型后,转换为M3D文件时会对曲面进行离散化。详细程度值越大,精度越高,输出的曲面越光滑,视觉效果越好,但也会导致数据量越大。
  • 【输出构件树】:系统提供了专业树和楼层树两种模式。生产M3D缓存文件时,可继承原始BIM的构件树信息,若采用专业树模式,BIM构件树会按照类别等信息组织;若采用楼层树模式,则优先按照楼层级别,再按照类别信息进行组织。
  • 【视觉样式】:系统提供了纹理和纯色两种模式。
    • 【纹理】:生产M3D时可继承整体纹理样式。
    • 【纯色】:生产M3D时仅继承颜色样式,不考虑纹理。
  • 【输出属性】: 输出属性存储方式,包含内嵌和外置两种方法。
    • 【内嵌】:将模型的属性内容内嵌到生成的.m3d文件中存储。当数据体量较小,适用于此场景。
    • 【外置】:将模型的属性内容存储在独立生成的.att文件中。当数据体量较大,独立生成.att存储属性在B/S端应用更流畅。
  • 【转换器版本】:此工具生成M3D时会调用Revit软件,rvt文件版本需低于或等于客户机上Revit软件版本。
  • 【静默转换】:不勾选时,rvt生成M3D缓存时,revit软件会被启动进行数据读取解析。反之不会启动revit,进行无感操作。

提示:

建议rvt文件版本与客户机上Revit软件版本保持一致,否则可能会导致转换效率很慢。

4. 设置坐标信息。由于rvt文件不包含空间参照系信息,此处只能指定rvt文件原点(0,0,0)位置的经纬度坐标,结果3dtiles文件会偏移到指定的经纬度坐标位置。

5. 点击【生成】,即可将rvt文件转换为3dtiles缓存文件。

# 倾斜摄影

# 功能说明

系统支持对标准的倾斜摄影数据创建M3D缓存,目前支持的倾斜摄影数据格式可参考“倾斜摄影”章节。

此功能不仅可支持单客户机生成M3D,当倾斜摄影数据量比较大时,可部署多个客户机分布式生成M3D缓存。

# 操作说明

(一)单机生成M3D

1. 启动“模型缓存”功能,弹出如下所示对话框。点击“添加”,可添加倾斜摄影数据:

提示:

目前此工具仅支持标准的倾斜摄影数据处理,其文件组织结构可参考“倾斜摄影”章节。其中“metadata.xml”是元数据信息,记录空间参照系、中心点坐标等信息。添加倾斜摄影数据时是选择*.xml元数据信息文件。

2. 设置缓存结果信息,包括缓存名称、存储类型及路径信息。目前可支持保存为本地文件和MongoDB两种存储类型。MongoDB存储需输入MongoDB的IP地址、端口号、数据库名、用户名和密码(可为空)。

提示:

考虑到数据类型通用性、属性等原因,目前仅支持生成M3D2.0和M3D2.1,不再考虑生成M3D1.0.

3. 参数设置、及界面通用功能等可参考“人工精模”章节;

4. 可自动读取源倾斜摄影数据的空间参照系信息和原点坐标。

提示:

倾斜摄影的xml文件即空间参照系及坐标信息文件,界面不提供修改功能,用户只能通过修改xml文件来修改源数据坐标信息。

5. 点击【生成】,即可执行生成M3D操作。

(二)多机生成M3D

当倾斜摄影数据量比较大时,单个客户机生成M3D缓存耗时比较久,可采用分布式模式,采用多个客户机生成M3D缓存。

提示:

多机生成需满足如下条件,该选项才可用:

1、数据源路径为可读写的共享文件夹,且已记住用户名密码信息。

2、存储路径为可读写的共享文件夹或MongoDB。

3、参数分布式操作的所有客户机都需具有上述1/2两个权限。

1. 启动“数据”面板->“缓存文件”->“模型缓存”功能后,共享目录中倾斜摄影数据,并将存储类型设置为“MongoDB”;

2. 其他参数设置可参考“单机生成M3D”。勾选“多机生成”,可设置客户机数量,如设置为3,则表示分3台客户机进行分布式生成M3D缓存;

3. 点击“生成”,即可在与倾斜摄影根目录并列位置生成一个“MultiClientTask”文件夹,文件夹中包括n个client文件,n与设置的分布式客户机个数一致;

4. 在各客户机上,启动“数据”面板->“缓存文件”->“模型缓存”功能,添加刚才生成的*.client文件;

5. 此处参数信息无法设置,直接点击“生成”,即可生成M3D缓存文件。

提示:

需保证所有*.client文件都被执行成功,此时MongoDB中M3D缓存文件才是正常的M3D缓存文件,否则可能会有缺块出现。

# 点云

# 功能说明

MapGIS支持直接将本地点云数据(*.las、*.ply格式)生成M3D缓存。

# 操作说明

1. 启动“模型缓存”功能,弹出如下所示对话框。点击“添加”,可添加点云数据:

2. 设置缓存结果信息,包括缓存名称、存储类型及路径信息。目前可支持保存为本地文件和MongoDB两种存储类型。MongoDB存储需输入MongoDB的IP地址、端口号、数据库名、用户名和密码(可为空);

提示:

考虑到数据类型通用性、属性等原因,目前仅支持生成M3D2.1和M3D2.0,不再考虑生成M3D1.0。

3. 参数设置、坐标转换、属性设置及界面通用功能等可参考“人工精模”章节;

4. 点击【生成】,即可执行生成M3D操作。

# 地质体

# 功能说明

可将复杂的地质体简单要素类生成M3D缓存。

# 操作说明

1. 启动"模型缓存"功能,弹出如下所示对话框。点击"添加",可添加地质体数据:

2. 设置缓存结果信息,包括缓存名称、存储类型及路径信息。目前可支持本地和MongoDB两种存储类型,点击存储路径后方""按钮可选择存储路径。MongoDB存储需输入MongoDB的IP地址、端口号、数据库名、用户名和密码(没有用户名和密码时可为空)。

3. 设置转换参数:

  • 提取外壳:勾选此项后,在级别较大时预览M3D仅显示外壳,内部呈现中空状态;若不勾选此项,内部则保留原有复杂结构。当地质体数据量较大时,为了浏览更快速,建议在生产M3D缓存时勾选此项。

其余参数设置、坐标转换、属性设置及界面通用功能等可参考“人工精模”章节;

4. 点击"生成",即可执行生成M3D操作。

# 地形

# 功能说明

地形缓存数据是由多层*.terrain格式的地形瓦片组织而成的缓存数据。*.terrain格式是一种用于存储和呈现地表的高程和地形信息的地形瓦片格式,‌适用于实时三维可视化和虚拟地球应用。‌MapGIS支持将栅格数据集镶嵌数据集、本地地形栅格文件(*.msi、*.tif、*.adf、*.bil、*.grd)生成地形缓存数据。

提示:

在实际应用中,往往需要使用省市级规模的地形数据,此时数据可达到成千上万幅,为了方便管理可以先将地形数据导入至MapGIS镶嵌数据集中,再进行缓存轻量化处理。镶嵌数据集相关知识及使用方法可参考栅格数据管理章节。

# 操作说明

1. 启动"模型缓存"功能,弹出如下所示对话框。点击"添加",可添加地形数据:

2. 设置缓存结果信息,包括缓存名称、存储类型及路径信息。目前可支持本地和MongoDB两种存储类型,点击存储路径后方""按钮可选择存储路径。MongoDB存储需输入MongoDB的IP地址、端口号、数据库名、用户名和密码(没有用户名和密码时可为空)。在实际应用中,地形缓存的瓦片数据较为碎小繁多,建议您使用MongoDB进行存储管理;

3. 设置地形格式、最大级数参数;

  • 【地形格式】:提供量化格网和高度图两种格式。选择量化格网格式,在生产缓存数据时会将地形瓦片格网化处理,以便在Web端的浏览更加流畅;选择高度图格式,则会在Web端浏览时将地形瓦片格网化处理。目前主要使用Cesium进行可视化,推荐生成量化格网格式的地形缓存数据。

  • 【最大级数】:输入地形数据后,会自动获取该数据的最大级数,设置的级数不得超过自动获取的最大级数。

4. 坐标转换参数不可修改,此功能会在输入地形数据后自动获取源数据的坐标系,并投影到"WGS1984_度"坐标系上,若源数据无坐标系则无法生成地形缓存;

5. 设置合并数据源等参数参考"人工精模"其他参数设置;

提示:

同一个地区有不同精度的DEM数据时,可添加后选择合并数据源进行融合生成。

7. 点击"生成",即可执行生成地形缓存操作。

# 金字塔缓存

# 功能说明

MapGIS支持将模型生成金字塔Region缓存以及M3D缓存数据。

提示:

仅对地质模型建议用此功能,对于景观模型建议使用“人工精模”功能生成M3D。

# 操作说明

1. 启动"三维建模"-"金字塔缓存"工具,弹出如下图所示的对话框:

2. 点击“添加”按钮,选择数据库中的面简单要素类或体简单要素类,作为生成金字塔缓存的对象。

  • 【数据类型】:系统提供景观模型、地质体模型和BIM模型三种数据类型。点击数据类型项右侧的下拉框,可选择生成缓存的数据类型。
  • 【源数据LOD】:点击源数据LOD项右侧的下拉框,可设置源数据的LOD级别。关于LOD级别的说明,详见前文“生成DOM”章节。

3. 选择系统库和结果保存目录,系统将依照所选系统库生成金字塔缓存,并保存到结果保存目录中。

4. 设置生成瓦片的参数。参数说明如下:

  • 【瓦片范围】:通常瓦片范围已经固定,无法进行修改。
  • 【瓦片尺寸】:瓦片的边长,单位与瓦片范围保持一致。
  • 【块数】:设置瓦片尺寸后,X、Y方向的块数将自动计算得出。

5. 设置M3D转换参数。参数说明如下:

  • 【投影转换】:勾选该复选框,用户可以设置源模型数据的坐标系。
  • 【中心点X/Y/Z】:设置生成缓存的中心点坐标。
  • 【偏移量X/Y/Z】:当设置中心点坐标后,系统自动计算出模型的偏移量。

6. 设置生成缓存的几何与纹理。

  • 【网密度阈值】:金字塔三角网的密度阈值,默认值为1。
  • 【精模纹理缩放】:缓存时对数据的纹理信息进行压缩。
  • 【简化率】:每层金字塔化简比例,值越大,化简越少,越接近于源数据。
  • 【精模纹理限制】:缓存时对数据生成纹理进行限制。

提示:

网密度阈值、简化率、精模纹理缩放、精模纹理限制推荐使用系统默认参数。

7. 设置缓存LOD层级和体过滤量。

  • 【LOD级数】:设置缓存数据的LOD级数,范围是1~6。
  • 【体过滤量】:根据所选LOD级数,设置每层LOD级模型的细节过滤程度,值越小,过滤越少,越接近源数据。

8. 点击“生成”按钮,生成金字塔Region缓存和M3D缓存。用户也可以勾选“将结果添加到场景中”,生成的模型缓存文件将自动添加至新场景中。

关于Region缓存和M3D缓存文件结构的说明,请参考前文“模型缓存”章节。

# 重建金字塔

# 功能说明

MapGIS支持对倾斜摄影数据、地质体Region缓存重建金字塔。

# 操作说明

1. 启动"三维建模"-"重建金字塔"工具,弹出如下图所示的对话框:

2. 选择“*.mcx”配置文件,此处可以是倾斜摄影数据索引文件,也可以是地质体Region缓存数据;

3. 设置重建金字塔的参数信息;

  • 【化简比例】:每层金字塔化简比例,值越大,化简越厉害,值越小,化简越少,越接近源数据,对M3D显示的压力也越大。

  • 【顶级节点数】:金字塔顶级节点的数量,默认值为8。

  • 【块缩放比例】:金字塔瓦片块的缩放比例,值越大,缩放程度越低,越接近于源数据。

  • 【纹理最小值】:金字塔纹理的最小阈值,默认值为8。

  • 【三角网最大阈值】:金字塔三角网的最大阈值,默认值为8000。

  • 【块数阈值】:金字塔瓦片块数的最大阈值,默认值为30。

提示:

化简比例、顶级节点数、块缩放比例、纹理最小值、三角网最大阈值和块数阈值推荐使用系统默认参数。

4. 点击"确定",即可重新构建金字塔信息。

# M3D合并

# 功能说明

MapGIS支持将本地的多个M3D图层合并为单个M3D图层。

# 操作说明

1. 启动"三维建模"-"合并M3D"工具,弹出M3D图层合并对话框,如下图所示:

2. 选择M3D图层目录。M3D图层目录中包含多个需要进行合并操作的M3D文件。

3. 输入合并图层的名称,选择是否勾选“将结果添加到场景中”,点击"确定"按钮,生成M3D合并图层。

M3D合并生成结果存放在M3D图层目录中,如下图所示为M3D合并结果路径的示例:

# 模型图层生成Region缓存

# 功能说明

通过本功能,可根据模型数据生成Region缓存。

提示:

模型生成Region缓存时,仅支持分块渲染的模型图层。

# 操作说明

1. 在场景视图中添加模型数据,在场景节点,右键【生成缓存】->【模型图层生成Region缓存】:

2. 可弹出如下对话框,用户可进行参数设置:

  • 【高级选项】: 高级选项中包含的参数有 几何化简、纹理压缩、要素合并、合并量。

  • 【几何化简】:MapGIS底层采用了一套化简策略对模型进行几何形态化简,主要是对要素的边界或内部进行抽稀,由此可提高模型渲染效率。

  • 【纹理压缩】:是对模型纹理符号执行尺寸压缩,确保精确的同时缩小纹理尺寸。

  • 【合并量】:表示对某个区域的一定数目的要素进行合并,可设置进行合并的要素个数,系统默认的合并量是2000;合并量的大小需要根据该模型数据纹理图片的尺寸大小进行经验预估,当纹理图片尺寸较大(分辨率较高)时,一般纹理图片长或宽的像素值达1000像素或以上的图片数量较多时,且整体偏高(500像素以上),设置合并量100-200像素为宜。纹理图片的尺寸越大,合并量越小。

  • 【纹理集】:是包含一系列较小图像的图像,通常将较小的图像拼接在一起,使用纹理集可以在使用不同纹理的几何图形之间进行批处理,极大的提升渲染流水线的工作效率。

  • 【统设高级选项】:若模型层列表中存在多个模型数据,勾选“统设高级选项”,表示可统一修改所有模型的高级选项。

  • 【缓存目录】:可设置生成缓存的存放路径。

  • 【LOD级数】:LOD级数表示生成缓存的细节层次级数,建议设置4-5级。

  • 【最小距离】:可设置每一级别LOD对应的最小距离,若设置了5级LOD,建议将0-4级LOD对应的最小距离设置为1000、800、300、100、0 。

  • 【纹理压缩比】:表示纹理的压缩程度,值越大,说明纹理的压缩程度越高,反之,则纹理的压缩程度越低。

  • 【统设LOD参数】:若模型层列表中存在多个模型数据,勾选“统设LOD参数”,表示可统一设置所有模型的LOD参数。

  • 【生成后立即关闭对话框】:勾选“生成后立即关闭对话框”,表示生成缓存后,会自动关闭生成缓存对话框。

  • 【导入参数/保存参数】:可以将界面设置的参数和高级参数设置信息保存为文件,方便下次直接导入使用。

3. 点击【生成】,可生成Region缓存数据。

# 矢量点图层生成Region缓存

# 功能说明

点云数据导入到MapGIS中后,会以矢量点的形式存储。矢量图层创建缓存功能,主要是针对导入的点云数据,通过创建缓存提高数据加载显示效率。

提示:

创建矢量图层生成缓存时,仅支持分块渲染的三维点图层。

# 操作说明

1. 在场景视图中添加模型数据,在场景节点,右键【生成缓存】->【矢量图层生成缓存】:

2. 可弹出如下对话框,用户可进行参数设置:

具体参数设置同“模型图层生成Region缓存”。

3. 点击【生成】,可在指定位置生成矢量点云数据的Region缓存。

# 3DTiles转M3D

# 功能说明

MapGIS支持将3DTiles文件转换为M3D文件。

# 操作说明

1. 在场景视图中进入"三维建模",启动"3DTiles转M3D"功能:

点击"添加"按钮,选择3DTiles数据配置文件,输入存储目的目录,点击"转换",即可将3DTiles数据转换为M3D数据。

# Region转M3D

# 功能说明

MapGIS支持将Region文件转换为M3D文件。

# 操作说明

1. 在场景视图中进入"三维建模",启动"Region转M3D"功能:

  • 【高级选项】: 高级选项中包含的参数有 几何化简、纹理压缩、要素合并、合并量。

    • 【节点合并】:MapGIS底层采用了一套化简策略对模型进行几何形态化简,主要是对要素的边界或内部进行抽稀,由此可提高模型渲染效率。
    • 【Draco压缩】:用来压缩复杂3D模型上的数据,不影响视觉效果缩小3D图形文件大小。
    • 【M3D版本】:支持1.0和2.0版本。
    • 【位置参数】:生成M3D缓存后,结果为地理坐标系,地理坐标系原点为模型的中心点,此处需设置模型中心点在地理坐标系(WGS84)下的XYZ坐标值。当原始模型数据包含空间参照系信息时,勾选【使用投影转换】,可根据原坐标系和目的坐标系信息,自动计算中心点XYZ值。用户可自定义中心点XYZ坐标值及偏移量、缩放比信息。
  • 【缓存目录】:可设置生成缓存的存放路径。

  • 【统设高级选项】:若模型层列表中存在多个模型数据,勾选“统设高级选项”,表示可统一修改所有模型的高级选项。

  • 【LOD级数】:LOD级数表示生成缓存的细节层次级数,建议设置4-5级。

  • 【统设LOD参数】:若模型层列表中存在多个模型数据,勾选“统设LOD参数”,表示可统一设置所有模型的LOD参数。

  • 【最小距离】:可设置每一级别LOD对应的最小距离,若设置了5级LOD,建议将0-4级LOD对应的最小距离设置为1000、800、300、100、0 。

  • 【导入参数/保存参数】:可以将界面设置的参数和高级参数设置信息保存为文件,方便下次直接导入使用。

  • 【生成后立即关闭对话框】:勾选“生成后立即关闭对话框”,表示生成缓存后,会自动关闭生成缓存对话框。

3. 点击"生成"按钮,可在指定位置生成M3D缓存。