arcgis api for JavaScript4.2x 在vue中白膜图层的加载、(分类、分段)渲染

这篇文章是对有webgis前端开发经验的人

1、假设之前的三维视图均已成功加载,获取到了三维视图,这里的三维视图变量定义的名字是mapView(PS:三维视图mapview在项目初始化已经设置了,本示例中会直接使用调用结果)

2、注意:白膜图层的加载使用SceneLayer,所以需要引入或者加载对应的类库,具体引入方式根据自己项目。官网示例如下:

官网传送门:SceneLayer | API Reference | ArcGIS Maps SDK for JavaScript 4.27 | ArcGIS Developers

 我这里是安装了整个arcgis到项目中,使用的是第二种方法

 3、先定义渲染方式(这里会介绍分段、分类渲染两种方式)

3-1、分段渲染(这种渲染方式针对,字段值是数值类型的。例如1-100的数值分成三段,每段显示不同颜色)

官网传送门:ClassBreaksRenderer | API Reference | ArcGIS Maps SDK for JavaScript 4.27 | ArcGIS Developers

const fieldname = "" //渲染字段名称const classbreaksrenderer = [{min: 0.0,max: 9.0,value: "0-9",color: [253, 245, 230, 1]},{min: 10.0,max: 99.0,value: "10-99",color: [142, 229, 238, 1]},{min: 100,max: 999.0,value: "100-999",color: [118, 238, 198, 1]}]const renderer = {type: "class-breaks",//分段渲染类型field: fieldname,defaultSymbol: {//默认渲染样式(当字段值不属于任一分段时使用的备用样式)type: "mesh-3d", //白膜图层是三维的,这里类型需要设置mesh-3d,具体查阅apisymbolLayers: [{type: "fill",material: {color: [220, 220, 220, 1]},edges: {type: "solid",color: "rgba(200, 200, 200, 0.6)",size: 1,},}, ],},classBreakInfos: classbreaksrenderer.map(u => {return {minValue: u.min,maxValue: u.max,symbol: {type: "mesh-3d",symbolLayers: [{type: "fill", material: {color: u.color},edges: {type: "solid",color: "rgba(200, 200, 200, 0.6)",size: 1,},}, ]}}}),};

3-2、分类渲染(这种渲染方式,字段值一般是文本类型的。例如:一级、二级、三级、四级等等,每级显示不同颜色)

官网传送门:UniqueValueRenderer | API Reference | ArcGIS Maps SDK for JavaScript 4.27 | ArcGIS Developers

const fieldname = "" //渲染字段const uniqueValueInfos = [{value: "一级",color: [253, 245, 230, 1]},{value: "二级",color: [142, 229, 238, 1]},{value: "三级",color: [118, 238, 198, 1]},{value: "四级",color: [30, 144, 255, 1]},{value: "其它",color: [221, 160, 221, 1]
}]const renderer = {type: "unique-value",//分级渲染类型field: fieldname,defaultSymbol: {type: "mesh-3d",symbolLayers: [{type: "fill", material: {color: [220, 220, 220, 1]},edges: {type: "solid",color: "rgba(200, 200, 200, 0.6)",size: 1,},}, ],},uniqueValueInfos: uniqueValueInfos.map(u => {return {value: u.value,symbol: {type: "mesh-3d",symbolLayers: [{type: "fill", material: {color: u.color},edges: {type: "solid",color: "rgba(200, 200, 200, 0.6)",size: 1,},}, ]}}}),
};

4、白膜图层的加载

let layerUrl = "" //白膜服务urllet layerBM = new SceneLayer({id: "",title: "",url: layerUrl,renderer: renderer,//renderder 的值参考步骤3中的结果//definitionExpression: "", //字段筛选显示图层数据,这里默认显示全部注释(where根据自身需求写)elevationInfo:{mode: 'on-the-ground'}})self.mapView.map.add(layerBM );

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/7600.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity 热力图效果实现 笔记

Unity 热力图效果实现 笔记 参考文献连接: 1、人体热力图shader graph实现(URP) 超链接: https://www.youtube.com/watch?vKlMON4Dzq_0&t51s shader forge 翻译通用管线下 连接点实现方案: 2、碰撞热力图实现…

【python爬虫应用03】csdn个人所有文章质量分查询

🛠️ 环境准备 在开始编写代码之前,我们需要进行一些环境准备。以下是所需的环境和库: 操作系统:Windows编程语言:Python 3编辑器:VSCode(可选) 安装所需的库: reque…

php宝塔搭建EMLOG站长工具箱网站自适应PC手机端php源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套站长工具箱网站自适应PC手机端php源码。感兴趣的朋友可以自行下载学习。 技术架构 PHP5.6 nginx mysql5.6 JS CSS HTMLcnetos7以上 宝塔面板 文字搭建教程 下载源码,宝塔添…

Spring Cloud

一、微服务架构 单体架构:将业务的所有功能集中在一个项 目中开发,打成一个包部署 分布式架构:根据业务功能对系统做拆分, 每个业务功能模块作为独立项目 开发,称为一个服务 微服务架构: 特征: …

CSS样式表

CSS样式表 1、CSS介绍 CSS Cascading Style Sheet 层叠样式表,或,级联样式表 表现HTML文件样式的计算机语言 修饰静态页面 配置脚本语言动态对网页元素进行样式格式化 排序 对元素的位置进行像素级精确控制 支持所有字体字号样式 对网页对象和模型样式…

springboot集成camunda

1、相关软件下载Camunda流程引擎快速入门——Hello World示例 2、由于camunda-modeler最新版本为5.12.0.界面不太一样。 可以安装历史版本4.12.0camunda-bpm camunda-modeler等历史版本下载 3、汉化Camunda Modeler汉化添加简体中文和繁体中文支持 4、集成如何实现Springbootca…

LVS负载均衡集群

目录 1.LVS 2.集群分类 3.负载均衡集群工作模式 4.负载均衡集群架构 5.LVS作用 6.LVS与nginx比较 7.ipvsadm工具 8.实验 第一台服务器 进入第二台第三台服务器下载http服务nfs服务rpcbind服务并启动 进入第四台服务器 9.总结 1.LVS 负载均衡的结构 2.集群分类 负载均衡…

Java基础---String str=new String(“tang“)创建了几个对象

目录 典型回答 常量池基本概念 字符串常量池的结构 再看字面量和运行时常量池 intern 还是创建了几个对象 intern的正确用法 典型回答 创建的对象数应该是1个或者2个如果常量池中存在,则直接new一个对象如果常量池不存在,则在常量池中创建一个对象…

MySQL数据库——MHA高可用

MySQL数据库——MHA高可用 一、MHA概述1.什么是 MHA2.MHA 的组成3.MHA 的特点 二、搭建 MySQL MHA1.Master、Slave1、Slave2 节点上安装 mysql5.72.修改 Master、Slave1、Slave2 节点的主机名,添加主从mysql的映射关系…

select……for update 到底加的什么锁

先上结论 主键索引唯一索引普通索引普通字段等值查询行锁行锁行锁间隙锁,锁表范围查询间隙锁,锁范围行间隙锁,锁范围行间隙锁,锁范围行间隙锁,锁表 数据表准备 DROP TABLE IF EXISTS t_user_test; CREATE TABLE t_u…

七牛云下载文件(显示在浏览器上)

最近在做关于如何将七牛云的文件下载下来,且在浏览器页面展示下载文件。 首先,我们需要注册七牛云账号 七牛云官网。 选择个人账户即可,若是需要企业账户,则可以选择企业账户。 注册成功绑定邮箱后,我们可以创建存储…

Linux——统信UOS(v20-1060a)部署.net core项目

部署.net core之前,请先确定已经安装了运行环境 Linux安装.net core环境 新建一个用于测试的 .net core web 项目 直接发布到文件夹,目标运行时选择 linux-64,这里根据你自己的操作系统的运行环境选择。 先点击完成,后面再设置参…