MineCIM城市信息模型基础平台V1.0.0用户手册yy - zh_第1页
MineCIM城市信息模型基础平台V1.0.0用户手册yy - zh_第2页
MineCIM城市信息模型基础平台V1.0.0用户手册yy - zh_第3页
MineCIM城市信息模型基础平台V1.0.0用户手册yy - zh_第4页
MineCIM城市信息模型基础平台V1.0.0用户手册yy - zh_第5页
已阅读5页,还剩188页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向读者本手册详细描述了MineCIM城市信息模型基础平台V1.0.0各功能模块的操作流程,主要面向使用本平台的数据运维、开发工程师、平台运营和综合业务操作人员。MineCIM基础平台PortalMineCIM基础平台Portal是产品的门户中心。数据、运维、以及其他业务人员和开发人员可以在Portal中找到自己需要的功能模块入口。通过MineCIM基础平台Portal,不同角色用户可通过数据中心、运营中心、技术中心,以及CIM+应用,集中管理和使用自己或组织的相关资源,包括数据、地图场景、运营管理、场景功能使用等,业务开发人员还可以获取到API文档、示例代码等开发支持资源。登录/登出进入MineCIM基础平台portal;输入账号和密码;点击“登录”,即可进入平台首页;点击右上角账户名——“退出登录”,即可登出当前账号。个人中心Portal个人中心为平台用户提供个人信息的维护功能,可以查看当前用户的用户ID、角色、所属组织名称等基本信息,对账户密码进行修改重置。点击右上角用户名-个人中心,查看个人信息。点击“绑定邮箱”的修改按钮,可修改邮箱。点击“登录密码”的修改按钮,可修改密码。点击“绑定手机号”的修改按钮,可修改手机号。平台首页MineCIM基础平台首页,用户可浏览已发布的场景资源,支持二三维场景资源,以及业务专题图层的可视化展示。支持不同空间位置的分层缩放、平移、旋转等浏览方式。平台还提供了一系列的几何量算、空间分析、比对、模拟仿真工具,支撑各类业务应用场景。场景选择MineCIM基础平台支持多种自定义场景的浏览和使用,通过场景选择功能,可在已发布的场景中,选择或切换要使用的目标场景。切换到相应场景以后,地图界面将应用场景设定的中心点坐标位置和缩放级别,加载相应的场景资源。场景渲染二三维图层集成展示支持二维数据、三维数据的集成展示,实现在地图上的二三维一体化。支持通过鼠标进行地图缩放、平移、旋转等交互控制。室内空间展示支持室内外一体化展示,能够进入三维精细模型内部进行场景浏览和应用。视频GIS融合展示支持物联网监控视频与城市空间场景融合展示。场景资源展示当前场景下加载的二三维场景资源,以及业务专题图层资源。通过勾选不同的资源,控制相应图层的显示和隐藏。要素查询在要素查询页面中,选择要素图层,输入关键字,可列出包含关键字的要素列表,点击某一要素,地图视图飞行到要素所在坐标中心点。所选要素如果是矢量区域面的,则要素区域高亮显示。所选要素如具有业务属性信息的,则显示属性信息弹窗。支持空间对象与属性信息的关联展示。点击要素查询按钮,显示查询对话框;选择要查询的数据图层;输入查询关键字,显示包含关键字的要素列表;选择要查看的要素,飞行到该要素坐标,展示要素及周边空间视图;矢量面要素高亮显示;空间实体要素展示属性信息对话框;空间查询坐标拾取点击坐标拾取功能按钮,按提示,在需要拾取的底图位置点击鼠标左键,快速获取当前位置的经纬度信息。面积测量点击面积测量功能按钮,按提示,在地图视图中需要测量的区域,依次点选起点以及测量区域多边形各端点。在最后一个端点处,双击结束点选,即显示各端点围成的多边形面积。再次点击面积测量功能,清除测量结果。测距点击测距功能按钮,按提示,在地图视图中需要测量的区域,依次点选起点以及需要测量的直线段各端点。在最后一个端点处,双击结束点选,即显示每段线段之间的距离。再次点击测距功能,清除测量结果。批注添加批注点击批注工具按钮,提示“点击选择标注点”;在地图视图中点选需要添加批注的位置,弹出添加批注对话框;编辑批注名称,并保存;编辑批注名称点击地图中已添加的批注,弹出批注信息对话框;点击编辑按钮,输入新的批注名称,并保存。删除批注点击地图中已添加的批注,弹出批注信息对话框;点击删除按钮按钮,弹出确认删除对话框;点击确定,删除批注成功。查询定位关键字查询点击查询定位功能按钮,弹出查询定位对话框;选择按关键字查询方式;输入查询关键字,支持模糊查询和多关键字组合查询,显示包含关键字的位置列表;选择某位置,飞行到该位置坐标。坐标查询点击查询定位功能按钮,弹出查询定位对话框;选择按坐标查询方式;输入坐标值,点击确定,飞行到该坐标位置。卷帘比对点击卷帘比对功能按钮,弹出比对方式选择对话框;选择比对方式,支持左右卷帘和上下卷帘;卷帘每侧显示该侧的图层选择对话框,勾选图层,控制图层显隐状态;拉动卷帘,调节卷帘两侧显示区域的比例;任一侧中进行缩放、平移、旋转等操作,另外一侧支持联动;关闭卷帘方式选择对话框,退出卷帘比对状态。多屏比对点击多屏比对功能按钮,弹出分屏方式选择对话框;选择分屏方式,支持水平分屏、垂直分屏、三分屏、四分屏;每一分屏显示该分屏的图层选择对话框,勾选图层,控制图层显隐状态;任一分屏中进行缩放、平移、旋转等操作,其他分屏支持联动;关闭分屏方式选择对话框,退出多屏比对状态。模拟仿真城市生长点击模拟仿真-城市生长按钮,弹出城市生长对话框;选择城市,系统会根据数据情况列出可选城市;设置开始日期和结束日期,设置步长,即每一次生长的间隔时间;点击开始模拟,地图视图将动态模拟城市建筑物生长过程;点击结束,终止城市生长模拟。天气仿真点击模拟仿真-天气按钮,弹出天气仿真对话框;选择时间,即在一天中的光照特效;选择降雨、降雪、雾天气特效,在地图视图将自动调整到合适的视角,并模拟相应的天气特效。积水仿真点击模拟仿真-积水按钮,弹出积水仿真对话框;选择降雨特效(小雨、中雨、暴雨);选择降雨量,即最大的积水高度;设置水涨速度,单位是毫米/秒;点击开始模拟,按提示在地图视图中框选想要模拟的多边形区域,按右键结束,模拟开始;点击重置,清除积水效果,可重新设置模拟参数。空间分析缓冲区分析点击空间分析-缓冲区分析按钮,弹出缓冲区分析对话框;在底图中点选要缓冲的要素;缓冲要素为线类型的,可设置缓冲类型为圆头/平头,单边/双边;设置缓冲半径和缓冲区颜色;点击“新增缓冲区”,支持多重缓冲区分析,最多可添加3个;点击开始,进行缓冲区分析;点击重置,清除缓冲区分析效果。通视分析点击空间分析-通视分析按钮,弹出通视分析对话框;点击“开启”按钮,根据提示,在地图中点选观察点和目标点;可视范围显示为黄绿色的线,遮挡部分显示为红色的线;点击清除,清除通视分析结果。可视域分析点击空间分析-可视域分析按钮,弹出可视域分析对话框;点击“绘制可视域”按钮,根据提示,在地图中点选观察点;拖动鼠标即绘制可视域,右键结束;属性页面显示可视域属性,通过编辑方向角度、翻转角度、可视域距离、水平视场角、垂直视场角、可见区域颜色颜色、不可见区域颜色,对可视域属性进行调整;点击清除,清除可视域分析结果。日照分析点击空间分析-日照分析按钮,弹出日照分析对话框;设置分析日期、开始时间、结束时间、分析步长;点击开始模拟,地图场景将动态模拟所设时间段的日照效果;点击结束,终止模拟。BIM浏览进入BIM协同管理页面,浏览BIM模型数据。通过选择工具条中各个按钮,执行对应BIM的分析操作。支持对BIM模型的测量。支持选择添加X平面、添加Y平面、添加Z平面、添加框等方式剖切BIM模型。BIM模型查询,可以输入关键字快速查询定位,并控制显示和隐藏。MineCIM数据中心以下部分是MineData的用户手册,未修改以下部分是MineData的用户手册,未修改数据中心描述有修改MineCIM数据中心是MineCIM平台建设的核心,承载着高效使用底层平台能力进行海量数据的接入、标准化处理、精细化治理、规范化组织、全维度融合、精准可控的共享服务等关键责任。数据中心描述有修改MineCIM数据中心建设主要遵循高内聚、松耦合的设计原则和组件式开发模式,主要包括数据治理、数据采集、元数据管理、数据质量、即席查询、数据仓库、数据处理、我的数据、服务发布、场景定义、配图方案等。MineCIM数据中心主要包括数据治理、服务发布、场景发布三大模块。数据治理CIM数据库是CIM平台建设的核心,承载着高效使用底层平台能力进行海量数据的接入、标准化处理、精细化治理、规范化组织、全维度融合、精准可控的共享服务等关键责任。CIM数据库建设主要遵循高内聚、松耦合的设计原则和组件式开发模式,主要包括数据接入、数据处理、数据挖掘、数据治理、数据组织、数据服务。数据总览“总览“模块提供数据可视化展示功能,展示对象是平台预存的系统数据集。底图“总览“的可视化展示底图可以进行卫星影像切换。默认打开标准导航地图作为底图,打开卫星影像开关后,原底图关闭,卫星影像作为新底图打开。数据展示单击“总览”模块左侧的数据类型列表,可选择希望可视化展示的数据类型。照片数据以轨迹点形式在地图上进行渲染,放大后显示采集的轨迹线。视频数据以线形式渲染。鼠标在轨迹点上悬停可以看到照片预览结果,单击轨迹点可在左下角看到照片,支持按照轨迹播放照片和全屏显示照片。数据筛选支持数据筛选,数据筛选维度除城市定位和采集日期外,照片支持按照来源进行筛选,标注数据支持按照要素进行筛选。数据采集点击“新建采集”,进行数据采集任务的配置工作,包括基本配置和执行配置:首先进行源端库表配置。选择采集方式,支持全量和增量两种。全量采集将把数据源的所有数据进行全部采集,增量采集将只采集自上次采集完成后新增以及变化的增量部分。然后选择数据源,如果是关系型数据源,需要选择数据源的要采集的表。SQL语句字段中可以填写SQL语句,用于关系型数据源里根据多表关联查询的结果进行采集。在字段选择处,可以选择采集数据源的所有字段,也可以单独选择某些字段进行按需采集。在where条件字段处,可以写SQL语句的where条件,用来筛选要采集的数据的范围,按需求的要求进行有目的性的采集。填写完毕后点击“下一步”进入目标库配置页面。目标端库表配置在目标端库表配置页面,可以填写要采集到的目标库。首先,选择一个目标库数据源,如果是关系型数据库的数据源,还需要指定一个数据库的表。然后在字段选择处,可以选择全选所有字段,也可以进行单独选择需要的那些字段,支持多选。在postSQL语句填写SQL语句,用来采集完数据后,所要执行的后处理SQL。都填写完毕后,点击“下一步”即可进入“执行配置”页面。执行配置包括:任务名称、运行方式。任务名称可以填写自定义的任务名称。运行方式可以选择立即执行或定期执行。若选择定期执行,可以手动编辑执行条件,也可以点击“快捷配置”,通过点选方式自动生成执行条件。如果选择立即执行,点击“确定”按钮后会立即执行该采集任务。点击“确定”,成功执行采集任务后,即可在指标统计界面查看采集任务执行过程中的指标统计和历史日志。指标统计包含3个字段,分别是类型、总行数和存储空间。总行数是采集到的数据的条数,存储空间是采集到的数据所占用的空间大小。元数据管理除了对数据本身进行管理外,提供对元数据库进行设计管理,为数据管理建设提供便利。元数据主要是描述数据属性的信息,用来支持如指示存储位置、生产单位、生产日期等功能。数据质量数据质量管理是指通过建立数据质量评估标准和管理规范,及时发现、监测定位、跟踪解决各类数据质量问题,形成数据质量问题的闭环处理,以保证数据质量的稳定可靠。数据质量管理具备基于不同来源数据的逻辑校验和监测管理,具备对数据源头采集、传输、应用全流程的规范性、一致性、准确性、完整性检查,具备对数据质量问题检测预警,具备检测预警规则动态调整。即席查询即席查询(AdHoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。数据仓库“数据仓库”用于以平台所有预置数据为对象进行目标数据筛选。数据类型选择ES语句搜索可以直接输入ES语句进行搜索常用字段筛选以按钮形式展现,单击添加为筛选条件,显示添加条件对应的语句,支持一键清空所有筛选条件。自定义语句组合单击“添加查询条件”展开自定义筛选框,通过字段+条件+值的方式进行条件组合。字段含义见索引字段表,单击“索引字段表展开”数据转存下方数据列表显示按照筛选条件进行检索的结果,默认不显示已被转存过的数据。每条数据均支持勾选,勾选后可单击“转存选中数据”填写信息后将选中数据转存到个人数据集。单击“转存全部数据”填写信息后将所有检索结果转存到个人数据集数据处理数据处理总体流程数据处理的目的是把各种来源,各种格式的输入数据,处理为三维MineCIM平台上能够加载的切片文件格式。影像切片和传统二维GIS上的切片类似,它的切片文件格式是常规图片,比如png或者jpg,可以直接在二维引擎上浏览查看。MineCIM平台目前支持的影像切片规范有两种形式的,一种是经纬度直拉切片方式,一种是web墨卡托切片方式。主页上点击【影像切片】进入影像切片工具。输入文件添加输入点击【添加】按钮,弹出选择文件对话框,一次可以选择多个文件tif文件,多个文件会列到列表里。删除输入选择一个或者多个输入后,点击【删除】按钮,选中的tif被从输入列表删除。也可以直接点击操作栏里【X】按钮,删除对应这一条输入。设置参数选择一个或者多个输入后,点击【设置】按钮。或者点击操作栏里【*】按钮。弹出输入的属性设置面板。空间参考空间参考,零点坐标,七参数请参考本文通用功能,空间参考部分的文档。注意如果这里没有设置,那么处理程序会尝试从输入tif的元信息里读取空间参考,如果没有读取到,该tif处理失败。如果这里设置了,那么处理程序会使用设置的空间参考,但是如果此空间参考和tif元信息里的空间范围有冲突,也会导致处理失败或者出现结果异常。所以注意,这里空间参考设置要么就保留空白,要么操作者明确知道数据正确空间参考,否则不要去浪费时间尝试。最大级别最大级别默认选中【自动计算】,处理程序会根据栅格数据的分辨率来计算切片级别。因为影像切片支持两种投影的切片形式,一种是墨卡托,一种是经纬度。如果设置了【最大级别】,我们内部会判定:如果【设置的最大级别】<【自动计算的最大级别】那么按照【设置的最大级别】来切片。否则该设置值无效,依然是按照【自动计算的最大级别】来切片。这么做主要是避免无效的数据处理。无数据值栅格数据通过点位值来描述信息,但是由于一些原因(比如非矩形的裁剪),某些点位的高程值没有,但是栅格里该点位存储的就是无数据值,该信息一般是包含在tif头信息里,处理程序可以自己读取。但是也不排除有一些数据tif头信息里没有该信息,那么就需要用户设定该数值,至于设置多少,建议用arcgis打开影像数据,点击查询下无效范围的数值是多少,然后再填写。对于无数据值,处理程序会把该点位的颜色设置为纯透明色(0,0,0,0)。颜色拉伸本文数据处理基础部分也阐述了栅格数据的定义,栅格数据每个位置有一个值(或者多个波段值),这个值不一定是颜色值,但是除了地形高程栅格外,其他类型的数据如果要做三维可视化都需要转为图片切片,那么切片里就说常规颜色值。所以就需要一个栅格值到颜色值的映射算法。当然对于绝大多数非专业的栅格(尤其是下载得到的)里面的值就是RGBA,那么这个映射就很简单,每个点位最终颜色=栅格里存储的值。几种设置方法的实际意义:1,选中了【偏移缩放】如果【偏移】是0,【缩放】是0,这种表示我们根据栅格的波段数值类型来进行自动处理。如果栅格的每个波段是8bit,那么根据如下计算:切片颜色=栅格里存储的值如果栅格的每个波段是16bit,那么如下计算:切片颜色=栅格里存储的值*255/65535如果【缩放】不是0值,那么按照下述计算:切片颜色=(栅格里存储的值+偏移)*缩放3,选中了【最值】则按照下述计算:切片的像素颜色=(栅格里存储的值–最小值)*(255/(最大值–最小值))4,选中了【百分比】百分比裁剪拉伸首先根据最小百分比和最大百分比计算需要裁剪的最小像素个数和最大像素个数,然后把所有像素值进行排序,并统计每个像素值的个数,最小像素个数和最大像素个数进行裁剪,最后将剩余部分进行线性拉伸。例如最小最大百要比都设置为0.25时,影像大小为100*100像素,首先把像素值从小到大排序,然后找到正序第100*100*0.25个像素的像素值minvalue和倒序第100*100*0.25个像素的像素值maxvalue,最后进行线性拉伸(同最小最大值拉伸),如下述计算:切片的像素颜色=(栅格里存储的值–minvalue)*(255/(maxvalue–minvalue))背景透明影像切片碰到的很多问题都是,切片之后的数据有白边或者黑边。1,选中了【自动】处理程序内部自动根据栅格的波段元数据判定哪个波段是透明色。适合tif元数据信息完整的数据。2,选中了【第四波段】如果栅格的波段数大于3个,那么强制使用第四波段是透明波段。适合实际数据带第四波段,并且明确知道该波段是透明值的数据。3,选中了【透明色】无论栅格的波段数是多少,只要读取到的颜色等于设定的RGB值,认为该像素是纯透明的。适合透明信息不完整的数据。这种方式有个缺陷,比如我们在arcgis看到数据有白边,我们把透明色设置(255,255,255),处理完后,白边可以透明,但是有效范围内可能一些亮点也是该颜色,导致该点就会纯透明。【无数据值】和【背景透明】的区别我们切片的流程如下:读取原始栅格值->颜色计算->透明计算【无数据值】作用在前半部分,比如有一些索引色数据,我们读取到的原始栅格值只是一个表索引,如果该值=【无数据值】,我们直接认为该位置透明。【背景透明】作用在后半部分,颜色计算前面也讨论了,读取到的栅格值可能需要做一些额外计算,并不一定等于原始栅格值。比如这时候选择【透明色】设置,那么判定的是计算后的颜色和【透明色】来对比相等。处理参数服务类型实际两种不同的切片索引组织方式,具体如下:1,WMTSWMTS是OGC提出的一种瓦片地图服务标准,包含了很多内容和一系列接口,WMTS从0级开始,以地图左上角为原点,从左到右为横轴正方向,从上到下为纵轴正方向。发布的wmts服务切片索引为{z}/{x}/{y}。其中z为级别;x是横轴方向的索引,y是纵轴方向的索引。假设某点坐标为(x0,y0),x和y索引有如下计算公式:x=Math.floor((x0+r)/tilesize)y=Math.floor((r-y0)/tilesize)其中,r为地球半周长,tilesize为瓦片分辨率,详细参见下一节投影参数和瓦片大小。关于WMTS更详细内容可以参考:/files/?artifact_id=353262,TMSTMS也是种标准的瓦片地图服务,其定义非常灵活,但默认情况下其与WMTS非常相似,只是以地图左下角为原点,纵轴从下到上为正方向。那么对于某点坐标(x0,y0),x和y索引有如下计算公式:x=Math.floor((x0+r)/tilesize)y=Math.floor((y0+r)/tilesize)其中,r为地球半周长,tilesize为瓦片分辨率,详细参见下一节投影参数和瓦片大小。关于TMS更详细内容可以参考:/wiki/Tile_Map_Service_Specification投影参数和瓦片大小根据常规传统,瓦片大小都是256,但是事实上瓦片大小可以设置非256,比如512,这样做的目的可以在大屏上减少瓦片的请求次数。投影参数有两种。墨卡托的投影级别和精度如下表:经纬度的投影级别和精度如下表:输出文件地形切片地形是通过三角网来描述地表起伏的一类数据。一般来说地形是一个三维引擎的基础数据,很多其他数据的显示都要依赖地形来做用,比如影像数据需要贴合在地形上展示,POI点需要采样地形高程,鼠标交互需要获取鼠标交互位置点。主页上点击【地形切片】进入地形切片工具。输入文件添加输入点击【添加】按钮,弹出选择文件对话框,一次可以选择多个文件tif文件。删除输入选择一个或者多个输入后,点击【删除】按钮,选中的tif被从输入框删除。也可以直接点击操作栏里【X】按钮,删除对应这一条输入。设置输入参数选择一个或者多个输入后,点击【设置】按钮。或者点击操作栏里【*】按钮。弹出输入的属性设置面板。空间参考空间参考,零点坐标、七参数设置请参考本文【空间参考】部分。注意如果这里没有设置,那么处理程序会尝试从输入tif的元信息里读取空间参考,如果没有读取到,该tif处理失败。如果这里设置了,那么处理程序会使用设置的空间参考,但是如果此空间参考和tif元信息里的空间范围有冲突,也会导致处理失败或者出现结果异常。所以注意,这里空间参考设置要么就保留空白,要么操作者明确知道数据正确空间参考,否则不要去浪费时间尝试。最大级别最大级别默认选中【自动计算】,处理程序会根据栅格数据的分辨率来计算切片级别,具体如下表:比如30米格网精度的栅格高程数据,查表,应该是在13和14级之间,我们会向下一个级别,也就是取14做为最大级别。一般来说【自动计算】是合适的,一些情况下可能需要自定义最大级别:1,数据精度很高,比如一些倾斜软件输出的dsm,按【自动计算】都可能超过22级别,切到22级dem实际意义也不大,为了加速处理,可以设置到17左右。2,数据格网精度和高程差精度不匹配,常见在一些手动编辑过的dem数据,比如一些河道,深度也就5米左右,但是输出的dem也格网也是5米,导致到自动计算的最大级别,这个高程差体现不出来,可以设置一个更高的处理级别。无数据值栅格数据通过点位值来描述信息,但是由于一些原因(比如非矩形的裁剪),某些点位的高程值没有,但是栅格里该点位存储的就是无数据值,该信息一般是包含在tif头信息里,处理程序可以自己读取。但是也不排除有一些数据tif头信息里没有该信息,那么就需要用户设定该数值,至于设置多少,建议用arcgis打开高程数据,点击查询下无效范围的数值是多少,然后再填写。对于无数据值,处理程序会把该点位的高程设置为0。处理参数三角算法vcg是基于经典的边塌陷算法的三角网简化算法,该算法网格结构质量较好,误差更小,但是缺陷是处理速度较慢。ctb是一种基于网格的快速三角网简化算法,算法计算速度快,缺陷是误差较大。vcg的时间消耗是ctb大约60倍,所以根据您数据选择合理的构造算法。水面文件地形切片上可以附加一层水面蒙版(watermask),lab的地形切片程序可以根据水面数据来生成对应地形的watermask。Lab的水面文件支持两种形式的水面,一种是水面矢量数据,必须是面(polygon)数据,用来描述水域范围。但是当地形较大或者分辨率较高,矢量水面生成速度会变慢。另一种是水面栅格数据,该栅格数据应满足如下要求:1、水面栅格分辨率应高于dem分辨率4倍以上;2、水面栅格坐标系应是EPSG:4326;3、水面格栅数据类型应是8bitunsignedinteger;4、水面栅格中有水的地方像素值为255,无水的地方是NoData(且NoData值为0)。注地形上watermask效果比较差,仅仅是一个波浪纹理,而且这个效果会和底图混色,容易受到底图影响,水面效果不明显。更没有任何反射折射效果,做个大范围水域示意下可以,但是不要过高期待。输出文件模型切片对于MineCIM平台,模型切片就是3dtiles格式。3dtiles的切片规范如下:3dtiles=索引+内容索引是json格式的元数据定义,包括数据范围、几何误差等,索引可以嵌入引用其他索引。内容可以进一步分为3种内容格式和1个集合格式,具体如下:输入数据MineCIM平台支持输入多源异构的各类数据。多种来源,多种差异化数据结构,所以实际输入是比较复杂的,比如有常规GIS的栅格矢量,有现在流行的实景倾斜模型,有传统的手工模型,也有当下火热的BIM或者CIM模型,还有一些特殊,比如点云数据、地质数据、体数据、场数据、流数据等等。基础数据输入分为如下五大类:传统GIS数据传统GIS数据,按照组织分未两大类:栅格和矢量,栅格数据通过逐点的属性值来描述数据,比如地形高程栅格,或者遥感影像栅格,对于栅格三维中有两种方式去可视化。栅格数据第一种栅格就是地形高程数据(dem),此类数据三维可视化用来显示地形起伏高低,地形数据的常见格式有dem,tif等。其他非常见格式的高程数据可以使用arcgis进行格式转换,转到dem或者tif来进行地形切片。除了高程之外,其他的栅格数据一般都是处理成影像切片来可视化。矢量数据除了栅格之外,还有一类传统GIS数据,通过点、线、面等几何对象来描述地理实体,这就是矢量。矢量的三维可视化问题比较复杂,根据三维的渲染方式可以分为以下几种:第一种是栅格化展示和绘制,借助二维GIS服务器的矢量渲染出图能力,矢量可以在服务端生成图片,三维上加载方式就类似栅格的影像切片,二维GIS相关的标准服务,比如WMTS,WMS等可以直接接入到三维中。第二种是矢量化展示和绘制,比如通过geojson、czml等方式绘制的图标、文字、折线、多边形等。第三种是模型化展示和绘制,比如建筑物轮廓,我们可以根据建筑高度拉成白模;比如用来描述森林位置或者城市附属物(路灯,垃圾桶)等点位的可以用实例化模型去展示。这三种方式的对比分析如下:所以对于矢量数据的处理,需要根据情况来选择:一般的矢量都可以通过把shp转geojson格式去加载。建筑矢量面可以通过通用模型切片处理为白模。描述实体点的数据,比如树木点位、灯杆位置等可以用i3dm工具处理为实体化模型。人工模型人工模型数据(或者手工模型数据)是三维GIS行业发展的最早的需求来源,通过3dsmax,maya等建模工具人工建模的数据。我们这里只罗列上面四个建模工具,其实建模工具远多于四个,手工模型格式可以多达50多种。这里我给大家解释几个概念。原始格式比如3dsmax的.max格式等,这些格式存在的意义在于是各种建模工具存储自定义信息的,一般来说格式都不开放,我们无法直接去读取和处理这些格式。所以有这些格式,一定要在建模工具内导出交换格式。交换格式比如比较古老的obj格式,以前流行的3ds格式,曾经的标准collada(dae)格式,现在事实上的交换格式标准fbx格式。这些格式存在的意义是为了各个软件之间能够相互导入导出模型成果。一般这些格式是开放的。所以我们模型切片的大部分输入格式,应该是交换格式,这里我们推荐优先考虑fbx,原因是fbx是autodesk相关产品(3dsmax,revit,maya等)的官方交换格式,定义的比较完善,而且autodesk提供了官方的fbxsdk,这样更稳定。另外一个是obj,使用obj是退而求其次的选择,我们实践中发现一些大的模型,在3dsmax里导出fbx经常崩溃出错,但是导出obj反倒很稳定。虽然是obj,但是我们也推荐是使用3dsmax导出的obj,obj格式太灵活太简单,反倒对于数据标准化处理来说是缺陷,比如它没有单位信息(处理后模型大小不对),没有向上轴信息(处理后模型是垂直的),没有几何体共享(无法做实例化优化)。如果你有其他交换格式的数据(比如dae或者3ds)可以用max导出fbx再处理,如果量比较大,可以需求我们的付费服务。渲染格式很多人跟我们提过需求或者问过我们,为什么不支持gltf进行切片。虽然对于gltf我们可以说是很了解的(3dtiles的切片大部分都是构造gltf)。但是几个原因:1,gltf格式标准还比较新,目前已有的导出gltf插件或者等都多少有缺陷,并不推荐大家使用。2,gltf格式定义的目的基本不是为了在各个软件之间交换三维模型,而是为了让引擎去高效渲染。所以我们这里称之为渲染格式,所以它的结构组织相对简单,目前来说也不是很合适做为切片的输入格式。除了数据格式之外,我们做模型切片,其实应该考虑数据的“异构“,比如说建筑物或者一个机械设备,这两个都可能是3dsmax建模的,但是模型精度以及贴图方式都不同,那么切片方案上应该有区别。无论哪种”异构“的模型都可以处理,所以我们做了通用模型切片工具,可以把各种模型导出为3dtiles。BIM模型BIM模型和手工模型最大的区别在于几点:1,建模目标不同,手工模型的目的是为了可视化,就是为了看的见,看不见的东西能省则省。BIM完全是按照一些工程标准去创建的,比如路面可能有多个层代表了不同的物理层。手工模型的纹理贴图量可能很大,BIM的贴图相对简单。2,手工模型一般没有属性信息,但是BIM模型有大量属性。基于这些差异,虽然有些BIM工具可以导出fbx等模型的交换格式,但是还是推荐按照我们的流程来。第一种是导出clm格式,clm是我们自定义的中间格式,它内部存储了我们切片需要的所有可视化数据(几何体、材质纹理、属性信息、模型结构)等。目前我们做了revit2020的插件和microstationconnectediton的插件。以前的catiav5-2016插件因为我们实在难以找到更新的catia开发资料,也没有技术支持,我们无法再更新,只能暂停,并且从lab3里剔除。第二种格式ifc格式,ifc号称是bim的标准格式,但事实上ifc的标准也是古老而复杂,各家bim工具对于ifc的支持都不是尽善尽美。另外我们读取和解析ifc也是一个比较头疼的问题,容易产生构件丢失的问题,一般最好不要优先考虑ifc的方式,而应该是clm方式。对于BIM模型切片,目前也是通过我们的通用模型切片进行的。倾斜实景数据倾斜实景数据一般是来自照片进行三维重建得到的,目前能做这个格式的软件也比较多,例如contextcaptuer以及国内的smart3d,大疆等。这些软件产生的结果有很多格式,由于历史原因吧,目前大部分产生的结果依然是osgb,倾斜数据的特点是总量大,自带LOD,这类数据我们通过倾斜模型切片工具进行处理。非osgb格式的数据目前不支持处理。点云切片点云数据的格式有很多种,比如xyz,las,csv等,但是las是相对标准的一种格式。点云数据最初是来自激光扫描设备,受限于采集方式,只能用来展示一些小型数据。随着技术发展,现在倾斜摄影拍摄种也可以直接获取点云,点云的数据可以呈现大范围的。就我们实践来看,点云主要还是应用在电力领域,虽然它有行业属性,但是点云数据本身是不带行业属性的。目前仅支持las,如果其他类型的,可以尝试用cloudcompare这个开源软件转化下格式。主页上点击【点云切片】进入点云切片工具。输入文件添加输入点击【添加】按钮,弹出选择文件对话框,一次可以选择多个文件las文件。删除输入选择一个或者多个输入后,点击【删除】按钮,选中的las被从输入列表删除。也可以直接点击操作栏里【X】按钮,删除对应这一条输入。设置参数选择一个或者多个输入后,点击【设置】按钮。或者点击操作栏里【*】按钮。弹出输入的属性设置面板空间参考空间参考,零点坐标,七参数请参考本文通用功能,空间参考部分的文档。注意如果这里没有设置,那么处理程序会尝试从输入las的头信息里读取空间参考,如果没有读取到,该las处理失败。颜色计算las文件本身是可以存储颜色信息的,但是和栅格数据类似,里面可能并非直接存储的最大为255的RGB值,最常见的存储为最大值为65535的颜色,如图所示的填写方式,我们会根据此公式来计算颜色。资源库资源文件点云切片分为两大过程:数据导入,数据切片。在数据导入过程我们会把点云数据暂存。如果这里点击【添加】设置了一个本地文件路径,那么数据暂存到该文件内。如果这里没有设置,那么实际暂存在内存中。如果您切片的数据量超级大,比如几十G的点云数据,我们推荐您设置一个本地缓存路径。比如今天我们拿到了一个las文件,我们设置了本地缓存进行切片。明天我们又拿到另一个las文件,需要把两个文件合并在一起,那么可以直接选择昨天的本地缓存。这样就完成了点云切片的增量处理和局部更新。跳过导入该选项是个【调试选项】,对于大数据,导入和切片过程都是很耗时的,而且可能会出错,为了方便解决bug,如果打开了此选项,并且设置了本地缓存,那么不进行数据导入过程,直接从本地缓存进行切片过程。处理参数颜色存储如果打开了该选项,那么我们会在3dtiles存储点云的颜色。注意一点,部分激光扫描的点云一般都不带颜色值,而倾斜处理生成的点云是带颜色的,所以根据您自己的数据来开启该选项,如果不开启会减小3dtiles的量。需要注意一点,数据在cloudcompare软件下看到的颜色,不一定是点云的颜色,可能是根据某个字段值着色得到的:如果想做到这个效果,请参考本章【属性字段】。最大级别和前面提到的栅格切片不同地方,las文件信息里基本没有分辨率或者格网精度的信息。主要原因是las是一种散列空间点位结构,并没有强制约束必须均匀分布。但是对于我们切片程序和可视化需求中,我们还是需要一个最大级别,这个最大级别也必须根据点云的精度来计算。我们依据下表来计算点云的切片级别:剩下的问题就是如何估算点云精度,我们内部是根据点云的平均距离来计算点云精度,但是这个平均距离随着点的数量增加会很缓慢。所以我们把这个过程单列出来。对于同一批点云数据,其实最大级别应该是一致,没必要每次切片前都计算,可以直接选择。对于陌生的数据,我们提供了按钮【计算最大级别】,点击后,等待片刻,我们会根据当前选择第一个输入las文件去计算点云距离,然后按照上表查询得到最大级别。Draco压缩支持点云的draco压缩,可以极大减小3dtiles的数据量。Draco压缩:是否开启Draco压缩;压缩级别:分为1-10级,越大压缩率越高,压缩速度越慢;量化参数:可以是1-31中的任意值,量化参数越小压缩率越高,但数据精度损失越严重。实际处理时,如果结果有明显失真,则可以调大量化参数,相反可以调小。Draco压缩不仅仅是对顶点的压缩,颜色,属性都可以压缩。属性字段选中了一个las之后,我们会列出该las的属性字段,注意目前还不支持las的自定义字段。这里需要注意下,x,y,z字段,las并没有该属性,但是有一些需求,比如需要根据点云进行高度着色,有一些简单做法,直接在shader里根据渲染数据的顶点z值进行处理得到颜色,但是本文【空间参考】的【输出数据的空间参考】里已经讨论过,切片后的z值可能是一个相对坐标,并不直接代表高程值。为了实现准确的高度着色,我们可以在此部分勾选z字段,我们会把原始点云里的z坐标当作一个属性存入3dtiles,使用3dtilesstyle可以根据此z直接进行颜色设置即可。对于其他属性字段也是类似的,根据数据可视化的需要,选择需要的属性字段,还需要注意点,比如Intensity字段只要您选了las,我们都会列出该字段,但是对于很多数据来说,该字段里的值都是0或者一个统一值,那么即便您勾选了,存储下来了,最终也无法做到一个好的着色效果。综述,属性的选择需要根据您数据的实际情况和可视化的需求来选择。输出文件实例模型切片主页上点击【实例模型切片】进入实例模型切片工具。我们先解释下实例模型,实例模型使用GPUinstance技术来渲染的模型,通常用来绘制大量几何体一致,但是位置姿态不同的对象,比如说森林场景,大量路灯,井盖等,如下图:输入文件选择输入文件目前输入文件仅支持shp点数据,该数据用arcgis打开应该如下所示,其他格式或者shp不是点数据,将无法处理。LOD模型LOD模型是我们自定义的一组模型资源,它由一个meta.json和一些glb(或者gltf以及相关资源)来定义。在不影响对应屏幕投影像素下级别的模型画面视觉效果的条件下,通过逐次简化模型的细节与贴图的尺寸来减少模型的几何复杂性和贴图大小,从而提高效率。最大模型精度定为1024px,最小定为2px。1024px精度指的是模型在1024px屏幕像素下不影响视觉效果的精度,之所以定1024px为最大精度,因为在一般显示器的屏幕分辨率下,1024px已经近乎占满全屏或者超过全屏。最小为2px,即使在屏幕像素2px下时模型已经很小,近乎于一个像素点,但此时模型依然存在高度,所以不能使用颜色数值代替。一棵在1024、512、256、128屏幕像素下各级别的松树模型,随着投影像素的变化,模型的表面复杂程度在逐次简化,顶点与面数在大幅减少。LOD模型所有资源放在一个目录下,模型命名,直接以投影像素值命名,例如位置姿态位置x,y,z偏移默认都是0,0,表示位置没有任何偏移,位置就使用shp里的点对象位置。如果是非0值,比如表示x位置偏移会在-1~10之间随机产生。y,z类似,不再赘述。角度目前角度仅表示水平方向的旋转。默认选中【随机】,范围0~360,表示随机旋转角度。如果选中【字段】,并且选择了shp的某个字段,那么角度会根据该字段来计算。大小比例比例默认选择【随机】,范围1~1,表示默认大小,所有模型都是原始glb大小。如果如下设置:表示比例会在0.1~10之间随机。如果比例选择【字段】,并且选择了对应字段后,比例值使用该字段值。高程高程计算分为两部分:点位高程和地表高程,两者是叠加关系:最终高程=点位高程+地表高程点位高程如果这么选择,那么点位高程就是0,如果设定了非0的范围,那么高程会在最小最大之间随机。如果选择【字段】那么点位高程依据该字段值定义。地表高程地表高程我们支持从地形切片的输出数据来采样,而且支持多个地形数据。点击【添加紧凑高程切片】选择pak地形切片,会列在此表格里。点击【添加散列高程切片】选择散列地形切片,散列地形会列在此表格里。处理程序会按照列表顺序来依次采样,只要正确采样到对应点位高度,就停止采样下一个。字段列表选择输入文件后,这里会列出shp里所有字段,根据实际需要选择哪些字段要存储在3dtiles里,存储在3dtiles里的字段可以依据3dtilestyle语言进行着色和可见性控制。字段存储会增加3dtiles的量,所以按需选则。存储类型倾斜模型切片主页上点击【倾斜模型切片】进入倾斜模型切片工具。输入文件输入文件我们要求必须是带lod的osgb形式的数据,比如如下结构:单一osgb文件,或者非osgb格式的文件即便也是类似组织,也无法处理。我们需要选择的是Data目录,选择之后,如果和Data平级的有Metadata.xml文件,我们会自动从该文件解析空间参考和零点坐标填写进来:Metadata.xml里SRS即空间参考。SRSOrigin为零点坐标。重建顶层效果参数强制双面一般来说,强制双面开关无需开启,但是对一些异常数据,可能有正反面裁剪引起的漏洞之类的,可以尝试开启该选项,达到双面渲染的目的。需要具体问题分析,如果不确定可以联系我们来判定是否要开启该选项。无光照倾斜数据的来源是实景照片,无光照选项开启后,倾斜模型的渲染部分不参与引擎的默认光照计算,显示的更加真实一些。而且生成的3dtiles里不包含法向信息,节省了空间。一般来说无需关闭,但是一些引擎对于不含法向信息的模型渲染是黑色的,为了避免这个问题可以尝试关闭该选项。压缩参数顶点压缩顶点压缩采用了Draco压缩算法来减少顶点数据的存储量,Draco是比较高效的一种压缩方式,目前我们内部的配置是顶点采用14bit,纹理坐标采用10bit,总计24bit存储一个顶点。未压缩的数据顶点是96bit(3个float),纹理坐标64bit(2个float),总计160bit。那么压缩率是:24/160=3:20,大约1/7,这个压缩率很强大的,大量节省传输数据量,此部分我们建议开启。纹理格式选择【默认】使用jpg格式的纹理,也就是原始osgb里的格式。选择【Webp】使用webp格式的纹理,webp存储量大约是默认jpg的70%,可以加快网络传输,但是它只能在chrome下使用,而且不会减少显存占用。选择【ktx2】使用ktx2格式的纹理,存储量大约是默认jpg的90%,可以固定减少显存消耗5/6左右,比如一张1024*1024分辨率纹理,默认jpg在显存里实际占用是固定3MB显存,处理程ktx2只占3MB/6=512KB,这个对于显卡来说极度友好。不过目前处理过程来相对缓慢。存储类型倾斜处理时间处理过程的时间问题处理过程分两个大阶段A,原始osgb优化阶段,默认参数下,一般这个阶段15G每小时如果选了ktx2格式压缩,那么这块可能是0.5G/每小时B,顶层重建过程,这个时间消耗,是根据Tile的个数多少来定的需要重建的次数大约=Tile的个数*0.6单次重建的次数大约是0.5分钟比如一个Data下有1000块,那么重建顶层的时间消耗=1000*0.6*0.5=300分钟,也就是5个小时合并多块索引常见的需求是用户有很多块数据(一个Data算一个块),最终要求作为一个统一图层来发布,那么可以根据下述步骤来进行:第一步,使用倾斜模型切片,对一个Data使用倾斜模型切片得到一个3dtiles。第二步,使用索引合并工具对你项目里需要一次性引入的,并且是第一步得到的多个3dtiles,放在同一级目录下。点击【合并3ditles】按钮,得到一个总览的tileset.json文件,并在你项目里引用这个总览的tileset.json。第二步并没有做任何数据上的额外优化,仅仅是把多个倾斜索引合在一起,这么做也是有意义的,因为Cesium的3dtiles最大缓存(maximumScreenSpaceError)是对每个tileset设置的。这种引用一个总览tileset.json,比引用多个tileset.json来说,缓存的调度合适一些,也可以加速淘汰看不见的倾斜块。通用模型切片主页上点击【通用模型切片】进入通用模型切片工具。输入文件添加输入点击弹出选择输入文件的对话框,这里需要注意的,如果是一次选择了多个输入文件,在列表只会显示一条,但是实际这些文件都会被处理。这样是为了方便统一设置参数,和前面的地形、影像、点云的多选逻辑稍有不同。删除输入点击每条后的【X】删除该条。设置参数点击每条后的【*】设置该输入的参数,具体参数面板,根据输入类型不同而不同。Obj参数设置空间参考空间参考的概念以及基本设置方法参考本文【通用功能】里的【空间参考】部分,对于通用模型,大部分的数据都没有自带空间参考,为了便于处理,所以我们使用了一个默认值:ENU:39.90691,116.39123此位置在天安门附近模型坐标的(0,0,0)点会放置到该位置,如果你的模型坐标非常大,距离零点很远,可能漂浮在半空中。默认坐标仅仅是为了测试,需要根据你数据具体设置。属性文件通用模型处理处理的数据,都会默认带两个属性:id,name对于不同的数据id和name来源不同。Obj:name来自nodename,id是随机生成。Fbx:name来自nodename,id是根据fbxsdk的unqiueid计算md5得到。Clm:name来自构件名称,id根据导出插件,revit来自构件的uuid,microstation来自构件id。Ifc:name来自构件名称,id是随机生成。Shp:name来自name字段,如果没有来自FID,id是来自FID。除了这两个属性之外,在本章【属性字段】部分可以选择是否携带可选属性。对于obj、fbx等模型来说,由于本身不携带属性数据,我们支持通过属性文件来外挂属性字段。对于属性文件的要求:(1)必须是csv格式,utf8编码,注意csv是通过英文逗号分割的。(2)第一列必须是【唯一名称】。(3)第一列的值和模型场景里的名称关联匹配。反转YZObj没有信息存储向上轴的问题,比如gltf是y向上,但是很多三维引擎尤其地理引擎都是z向上,我们默认认为obj也是z向上。这个开关需要和你3dsmax导出时候的选项一致,向上轴就不会错。gbk编码Obj是个纯文本文件,所有文本文件都涉及到文字编码问题,如果obj内容都是纯英文,这里可以忽略。如果处理结果点查属性,发现有乱码,那么这个开关切片下再尝试。默认3dsmax导出的obj都是gbk编码的。翻转绕向Obj格式简单,但是来源多种,一般来说3dsmax导出的数据没有绕向问题,但是发现有背面裁剪情况,尝试开启此选项,重新处理。Fbx参数设置空间参考详见Obj空间参考设置。属性文件详见Obj空间参考设置。Shp参数设置空间参考一般来说shp的空间参考信息完备,这里不需要默认值。造型参数造型参数,处理程序根据shp的轮廓信息来生成三维几何体需要的。贴图设置对于shp生成的白模,我们可以依据条件来进行模型贴图。条件是一个列表,可以设置多个。地形高程地表高程我们支持从地形切片的输出数据来采样,而且支持多个地形数据。点击【添加紧凑高程切片】选择pak地形切片,会列在此表格里。点击【添加散列高程切片】选择散列地形切片,散列地形会列在此表格里。处理程序会按照列表顺序来依次采样,只要正确采样到对应点位高度,就停止采样下一个。建筑的高程,我们只采样轮廓的中心点位置。Ifc参数设置空间参考详见Obj空间参考设置。Clm参数设置空间参考详见Obj空间参考设置。资源库通用模型处理分为两个过程:数据导入和模型切片。数据导入过程会让各种格式的数据归一化,模型切片过程不再考虑格式的差异。资源文件资源文件如果没有设置,我们会在内存中创建一个资源文件。如果设置了本地一个文件,那么会创建在本地。设置本地资源路径的两种可能:1,数据量过大,内存不够用。2,为了方便进行【跳过导入】的调试。跳过导入模型切片过程是个慢过程,数据容易处理失败,为了方便调试,我们可以直接选择一个已经存在硬盘上的资源文件,并且,那么就直接跳过数据导入过程,直接进行模型切片过程。小场景处理器根据数据特点和用户可视化需求,我们把通用模型处理分为两种处理策略,一种是小场景,一种是八叉树。界面上如下选择:小场景处理器不对输入数据做任何简化和缩放,直接使用的原始精度。但是会做合并、压缩(注意简化和压缩的区别,简化是生成粗数据,顶点个数可能会改变,压缩是减少硬盘、内存、显存的消耗,顶点个数不变)、分割等。在保证显示质量不损失的前提下,最大化提升数据加载效率。大小参数小参数控制产生的最小切片数据量,比如默认是2MB,比如我们处理过程种有一些b3dm或者i3dm小于2MB,我们会进行合并生成cmpt,这么做目的是减少请求数量。大参数控制产生的最大切片数据量,比如默认是20MB,我们处理过程中如果有一些b3dm超过20MB,我们会尝试进行分割。需要注意,这个分割是在空间进行的,我们碰到过一些特例,一个肉眼不可见的小构件竟然有几十万顶点(BIM数据本身的问题),这种无法在空间上分割,导致最终产生的单个b3dm有200多MB。这两个参数判断未做顶点压缩之前的数据,所以开启了顶点压缩后,实际产生的b3dm要比设置的更小一些。I3dm优化数通用模型处理工具里已经实现了对于具有同样几何体数据的对象做实例化渲染优化。这种优化对于模型复用率较高的数据有很大优化,比如BIM中的道路附属物,建筑内部的一些小型设备等等。这里默认是50,表示如果一个几何体复用次数超过了50次,那么我们就把该几何体使用i3dm方式渲染。反之使用b3dm。模型复用率越高,i3dm优化意义越大。有人尝试把这个值设置为2,只要复用超过2次,就使用i3dm,就会发现i3dm的个数会很多,反倒导致最终的渲染效率降低。所以这个阈值最好和你的数据来匹配调整更合适一些,达到一个渲染批次和数据量的平衡。纹理合并纹理合并开关打开之后,我们会尝试对repeat方式的纹理贴图进行合并,合并之后的数据在官方Cesium版本上无法浏览,需要在EarthSDK下浏览。如果场景中repeat纹理过多,通过此参数可以提升渲染效率。八叉树处理器点击中间的按钮,切换到八叉树处理器,界面如下:LOD策略创建LOD有很多策略,比如以前做数字城市的时候根据建筑对象,每个建筑去生成lod,然后每个建筑根据远近单独调度。但是我们既然这个工具叫通用模型处理,那么其实也就表示,我们的LOD策略需要更通用一些。我们无法预先知道用户的数据是建筑还是道路或者是很精细的BIM模型,甚至是某种设备模型。所以我们采用了一种最简单最直接的处理方式:严格按照八叉树分块边界对数据分块,然后每块内尝试简化。这种LOD策略简单暴力适应性强,但是对于每一类特定数据可能不是最好方案,如果有搞不定的已知数据,可以定制LOD生成策略。最小级别级别和精度是如下计算的:默认的最小级别16级,对应的精度0.59,也就是说这种尺度下最多能看清楚半米左右的区别。最大级别是20级,对应的精度是0.037,也就是这种尺度下最多能看清4厘米左右的区别。这个尺度对于我们一般的建筑模型完全足够了。八叉树计算是个极度缓慢的过程,一个块需要的时间大约是在分钟级别。1000米*1000米范围的大约有9个16级块,可能有50或者60个17级块,500个18级块,4000个19级块,32000个20级。这一平方公里要处理需要的时间很夸张,如果数据已知,那就降低下最大级别。最小级别按照数据总范围来设定,如果还是1000米*1000米的模型数据,我们可能设置到16或者17级比较合适,保证顶层的块个数小于100即可。最大级别一般最大级别=最小级别+3这样设置的目的是为了保证数据能够处理完毕。如果等的起,可以设置的更大一些。另外也不是所有位置我们都会处理到最大级别:如果某个八叉树块内已经没有包含任何数据或者我们统计出来包含的数据量最高精度。也不超过我们的阈值,那么这个块就不再继续细分。有一类特殊数据,比如对于建筑物白模,可以设置最大级别=最小级别,因为它的几何体简单而且几乎没有纹理。三角网简化如果场景里几何体复杂密度很高,那么可以开启。但是我们见过很多模型,他的几何体其实很简单,纹理非常大,比如20MB的obj,但是纹理竟然有8000多张,这种模型就无需开启三角网进化,我们内部仅对纹理进行简化处理。效果参数强制双面由于数据制作或者转格式中的一些缺陷,一些三角面绕向是反向的。或者还有一些类似护栏、纱网等对象,虽然在3dmax里正面背面观察都可以,但是导出后可能只在一个面能观察到,为了避免此种问题。这里可以,不过该选项会导致一定的渲染性能损失。无光照对于烘焙后的3dsmax数据,光照阴影已经烘焙到贴图上了,无需通过Cesium的渲染光照计算或者说也不能通过Cesium的光照计算,那么开启此选项后,保证模型颜色和烘焙效果一致。压缩参数纹理格式选择【默认】使用jpg(非透明)或者png(透明)格式。选择【Webp】使用webp格式的纹理,webp存储量大约是默认jpg的70%,可以加快网络传输,但是它只能在chrome下使用,而且不会减少显存占用。选择【ktx2】使用ktx2格式的纹理,存储量大约是默认jpg的90%,可以固定减少显存消耗5/6左右,比如一张1024*1024分辨率纹理,默认jpg在显存里实际占用是固定3MB显存,处理程ktx2只占3MB/6=512KB,这个对于显卡来说极度友好。不过目前处理过程来相对缓慢。顶点压缩顶点压缩采用了Draco压缩算法来减少顶点数据的存储量,Draco是比较高效的一种压缩方式,目前我们内部的配置是顶点采用14bit,法向量采用10bit,纹理坐标采用10bit,总计34bit存储一个顶点。未压缩的数据顶点是96bit(3个float),法向量96bit(3个float),纹理坐标64bit(2个float),总计256bit。那么压缩率是:大约1/7.5,这个压缩率很强大的,大量节省传输数据量。如果你的模型观察视角都是较大范围,那么可以开启这个,如果你的模型包含一些细小的零件,那么最好不要开启,会导致模型扭曲变形。属性字段文件名称当开启之后,我们生成的3dtiles,会多出一个file的属性,该属性保存的是该对象的导入文件名,在3dtiles预览的时候点击可以看到该属性。主要用来区分模型对象的所属文件,方便做业务。属性存储当添加clm、shp、ifc这些自带属性字段的文件,或者添加有属性文件配置的fbx,obj的时候,属性字段列表会列出所有字段。是否存储列通过勾选来选择需要存储到3dtiles里的属性。3dtiles属性可以用来做着色分析和控制可见性,同时也会增加数据量,根据你可视化业务的需要酌情选择。数据存储原始坐标这是一个特殊需求选项,在本文的【通用功能】【空间参考】【输出数据的空间参考】部分我们讨论过3dtiles里存储的坐标和输入文件里的坐标并不一致,但是有一些需求会要求保证3dtiles里坐标和输入一致,那么可以打开这个选项。有一些限制条件,要求输入数据的空间参考必须是ENU:{纬度},{经度}形式,EPSG形式的即便勾选了此选项也没有作用。如果有多个输入文件,只能保证和第一个输入文件的原始坐标一致(除非所有文件的空间参考是一致的,那么所有文件都可以保证)。存储类型模型结构树通用模型处理的时候默认会生成一个scenetree.json文件和tileset.json同时存放:Scenetree.json文件说明scenetree.json是utf8编码的json格式文件。最根上是scenes,它是一个数组,表示json里有几个场景,此处场景的个数实际对应了处理数据时候的输入文件个数。除scenes之外,其他都是节点对象,对象有以下属性:type:如果为“node”表示节点对象是一个文件夹,node在三维数据上并没有对应的渲染内容,仅仅是为了组织这个树结构。如果为”element”表示节点对象是一个构件,element在三维数据上一定有对应的渲染内容,可以通过3dtilestyle去根据id控制可见性和着色。id:节点对象的id,具体来源参考id属性的来源。name:节点对象的名称,这个名称是为了UI上显示方便,具体来源参考name属性的来源。sphere:wgs84世界坐标系下包围球,前三个值表示x,y,z坐标,最后一个表示半径。对于“node”对象来说它的包围球是它下面所有“node”和“element“的并集包围球。children:“node“对象下包含此属性,表示在这个对象下的子对象,用来构造树状结构。Scenetreen.json生成方式Scenetree的树结构对于不同的输入文件按照如下方式组织:对于3dsmax导出的fbx格式,该场景组织是和3dmax里的结构组织是完全一致的。对于revit导出的clm,我们按照:标高(Level),类别(Category),构件(Element)三级来构造此树。对于microstation导出的clm,我们按照:层(Layer),构件(element)两级构造此树。我的数据MineCIM基础平台操作台以数据沙盒的形式对自有数据进行上传、存储管理,支持矢量和栅格两种类别的数据沙盒,支持多种格式的二、三维数据上传,文件型的包括:shp格式的矢量数据,geotiff格式的影像数据,gltf格式的模型数据等;数据库类型:支持连接postgres数据库进行数据接入。新建沙盒点击右上角“新建沙盒”按键,可建立矢量和栅格的数据沙盒到我的数据中;输入纯英文字符的沙盒名称(目前只支持英文,不支持中文和其他字符,字符长度限制不超过200,沙盒名称不能重名);选择所要创建的沙盒类型:矢量(vector)和栅格(raster);点击“确定”按键,即可新建成功,并且界面会提示新建沙盒成功;添加数据源添加栅格数据源点击右上角“添加数据源”按键,可上传栅格数据到我的数据-数据沙盒中。选择所要上传的数据类型:矢量数据源(Shapefile、PostgresDatabase)、栅格数据源(GeoTIFF)、三维数据源(GLTF),矢量数据源支持shp格式以及连接postgres数据库进行数据接入并点击“下一步”;在“添加GeoTIFF数据源”界面中选择沙盒,点击“沙盒名称”的下拉框选择某一栅格沙盒;在“数据源名称”中输入数据源名称(支持英文+数字,字符长度限制不超过50);“上传方式”支持本地文件和Server服务器文件路径上传,后者需要提前将数据文件存放在Server指定的数据库路径之下;“影像类型”支持灰度影像和彩色影像:灰度影像只能提供getvalue取值服务,不可用于渲染;*彩色影像只用于影像数据的渲染、切图展示,不提供取值服务。“本地文件”上传方式需要在文件路径框中输入本地文件路径;“Server文件的位置”上传方式会定位到用户的Server数据目录,需要在“选择文件”界面中选择数据文件,在右上角的下拉框中选择自有的数据沙盒,在表格中点击选择数据文件并点击“打开”按键完成Server文件选择;点击“确定”按键完成数据源添加步骤添加矢量数据源点击右上角“添加数据源”按键,可上传矢量数据到我的数据-数据沙盒中。选择所要上传的数据类型:矢量数据源(Shapefile、PostgresDatabase)、栅格数据源(GeoTIFF)、三维数据源(GLTF),矢量数据源支持shp格式以及连接postgres数据库进行数据接入并点击“下一步”;在“添加Shapefile数据源”界面中选择沙盒,点击“沙盒名称”的下拉框选择某一矢量沙盒;在“数据源名称”中输入数据源名称(支持英文+数字,字符长度限制不超过50);“上传方式”支持本地文件和Server服务器文件路径上传,后者需要提前将数据文件存放在Server指定的数据库路径之下;“本地文件”上传方式需要在文件路径框中输入本地文件路径,需要将shp文件打包压缩为zip格式包方可添加成功;“Server文件的位置”上传方式会定位到用户的Server数据目录,需要在“选择文件”界面中选择数据文件,在右上角的下拉框中选择自有的数据沙盒,在表格中点击选择数据文件并点击“打开”按键完成Server文件选择;点击“确定”按键完成数据源添加步骤数据管理点击“TEST”栅格数据沙盒,可进入沙盒管理数据;在“数据源”表格中点击“查看”按键,可查看数据源的数据规格和数据内容;在“数据源”表格中点击“发布”按键,可进入服务发布界面;在“数据源”表格中点击“删除”按键,可以删除该数据源;服务发布平台标准服务点击服务卡片,可查看各服务的接口详情;输入简单的参数设置获取服务样例,前端开发人员可以知道如何使用各服务接口。我的服务MineCIM提供多种rest风格的WebService接口,包括二三维数据服务、地图服务、基础LBS服务、特色位置服务等多种服务类型;支持OGC标准规范的服务发布能力(wmts、wms、wfs)。数据服务提供包括矢量mvt服务、三维数据服务、动态信息服务在内的多种基础数据服务,支持发布为OGC标准规范的wfs服务;其中,三维数据服务包括:倾斜摄影、三维模型、数字高程模型(DEM)等常见三维数据类型的服务,动态信息服务包括:以ertic为单位的精细化实时路况服务、交通事件服务、天气服务。地图服务MineCIM强大的地图服务能力,能够同时提供rest、OGC风格的WebService接口供用户调用,方便用户根据实际场景自行选择。包括矢量地图服务、栅格图服务、影像服务;支持发布OGCwmts、wms标准。位置服务MineCIM具备丰富的位置服务能力,全面满足各行业对于位置服务的使用需求。包括:搜索服务(POI搜索、沿线搜索、输入提示、行政区划面)、路径规划(驾车、货车路线规划)、地理/逆地理编码、地图匹配(多点匹配、推测、路径投影点)、道路搜索、里程桩服务。数据服务发布MineCIM基础平台集成了MineService的服务发布能力,使得平台具备发布数据服务、地图服务的能力,支持把通过Portal上传的业务数据发布成数据服务、自定义配置地图样式并发布,最终发布成地图服务供应用端调用,完整实现数据上图到应用开发的全流程支持。同时,用户能够在Portal上对自有服务进行统一的查看、管理,包括服务的参数设置、运行状态、任务调度情况等。新建服务发布栅格数据服务发布点击“新建服务”按键或者在“数据源”表格中点击“发布”按键,可进入服务发布界面;输入服务名称(目前只支持英文和数字组成,不支持中文和其他字符,字符长度限制不超过200,服务名称不能重名),以及服务描述;点击“服务类型”下拉框选择map-wmts(其余:map-wms、data-mvt、data-wfs);点击“下一步”按键,进入服务参数设置界面;在“服务来源”中选择需要的栅格沙盒和数据源,如果是通过“我的数据-数据源”表格中点击“发布”按键,可进入服务发布界面则此处服务来源自动填充;默认设置“缩放级别”为3-17,最大可设置参数为3-20;默认设置“尺寸”为256*256像素默认设置“投影坐标系”为墨卡托,可选项:墨卡托和经纬度;“缓存方式”可以选择“动态请求数据”和“使用缓存中的切片”,前者无需设置缓存,系统会自动根据浏览器地图缩放情况提供动态切图数据;“使用缓存中的切片”需要设置缓存参数;点击“发布”即完成服务发布设置,界面会有发布成功提示;矢量数据服务发布点击“新建服务”按键或者在“数据源”表格中点击“发布”按键,可进入服务发布界面;输入服务名称(目前只支持英文和数字组成,不支持中文和其他字符,字符长度限制不超过200,服务名称不能重名),以及服务描述;点击“服务类型”下拉框选择data-mvt(其余:map-wmts、map-wms、data-wfs);点击“下一步”按键,进入服务参数设置界面;在“服务来源”中选择需要的矢量沙盒和数据源,如果是通过“我的数据-数据源”表格中点击“发布”按键,可进入服务发布界面则此处服务来源自动填充;默认设置“缩放级别”为3-17,最大可设置参数为3-20;默认设置“尺寸”为512*512像素默认设置“投影坐标系”为墨卡托,可选项:墨卡托和经纬度;“缓存方式”可以选择“动态请求数据”和“使用缓存中的切片”,前者无需设置缓存,系统会自动根据浏览器地图缩放情况提供动态切图数据;“使用缓存中的切片”需要设置缓存参数;点击“下一步”进入“数据过滤”参数设置界面,可以通过数据过滤器对矢量数据进行过滤:支持zoom级别缩放结合字段条件筛选;通过字段过滤不必要的冗余字段;支持边界提取。点击“发布”即完成服务发布设置,界面会有发布成功提示;自有服务管理在“我的服务”界面中点击“自有”按键,进入自有服务管理界面;在服务列表的操作列点击“启动”按键可以开启该服务,点击“禁止”按键可以关闭该服务;点击“查看”按键可以查看自有服务的名称、服务类型、创建时间、启动时间、停止时间、状态、URL、数据源、数据沙盒、缩放级别、数据过滤条件、边界提取、缓存设置等信息;点击“更多”弹出“清除缓存”和“删除”按键,点击“清除缓存”按键可以清除该服务在Server服务器上的缓存;点击“删除”按键可以删除该服务。应用管理我的应用MineCIM操作台采用key授权的方式对服务进行精细化的权限管理控制,以更好地提升服务和系统的安全性。新建应用点击“新建应用”按钮,用户可按照业务模块在操作台自行创建应用,这能够方便区分和管理不同业务模块使用的key;输入应用名称(支持中英文字符和其他字符),点击“创建”,应用即可创建成功;点击“删除”按键,可删除已有应用;点击

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论