mapbox-gl 常用Expressions表达式

2024-08-30 17:28

本文主要是介绍mapbox-gl 常用Expressions表达式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、前言
    • 1.1 概念
    • 1.2 Mapbox gl提供的表达式计算器
  • 二、所有支持的运算符
    • 2.1 颜色运算符
      • 2.1.1 rgb
      • 2.1.2 rgba
      • 2.1.3 hsl
      • 2.1.4 hsla
      • 2.1.5 to-rgba
    • 2.2 Math 数学计算运算符
      • 2.2.1 +, -, *, /, %, ^
      • 2.2.2 abs, ceil, floor, round
      • 2.2.3 sin, cos, tan, asin, acos, atan
      • 2.2.4 e, ln, ln2, log10, log2, pi
      • 2.2.5 max, min
    • 2.3 zoom、Heatmap 运算符
  • 三、示例


一、前言

1.1 概念

表达式(expressions)是Mapbox GL JS的一个高级功能,它为数据的添加和渲染展示提供了更多的灵活性。
任何layout、paint或者filter的值都可以用一个expression表达式来细化,一个expression表达式定义了用如下计算器计算属性值的公式。

1.2 Mapbox gl提供的表达式计算器

Mapbox gl提供的表达式计算器有如下:

  • Mathematical operators(数学 运算):数学计算器用于数值计算和其他数值相关的属性
  • Logical operators(逻辑 运算):逻辑计算器用于计算布尔值和做条件决策
  • String operators(字符串 运算):字符计算器用于计算字符串
  • Data operators(数据 运算):提供调用数据源要素集属性的接口
  • Camera operators(相机 运算):提供定义当前地图视角参数的接口

二、所有支持的运算符

// prettier-ignore
type ExpressionName =// Types 类型| 'array' | 'boolean' | 'collator' | 'format' | 'literal' | 'number' | 'object' | 'string'| 'to-boolean' | 'to-color' | 'to-number' | 'to-string' | 'typeof'// Feature data 空间元素数据| 'feature-state' | 'geometry-type' | 'id' | 'line-progress' | 'properties'// Lookup| 'at' | 'get' | 'has' | 'length'// Decision| '!' | '!=' | '<' | '<=' | '==' | '>' | '>=' | 'all' | 'any'| 'case' | 'match' | 'coalesce'// Ramps, scales, curves| 'interpolate' | 'interpolate-hcl' | 'interpolate-lab' | 'step'// Variable binding| 'let' | 'var'// String 字符串| 'concat' | 'downcase' | 'is-supported-script' | 'resolved-locale' | 'upcase'// Color 颜色| 'rgb' | 'rgba'// Math 数学计算| '-' | '*' | '/' | '%' | '^' | '+' | 'abs' | 'acos' | 'asin' | 'atan' | 'ceil' | 'cos' | 'e'| 'floor' | 'ln' | 'ln2' | 'log10' | 'log2' | 'max' | 'min' | 'pi' | 'round' | 'sin' | 'sqrt' | 'tan'// Zoom, Heatmap| 'zoom' | 'heatmap-density';

2.1 颜色运算符

2.1.1 rgb

["rgb", number, number, number]: color

2.1.2 rgba

["rgba", number, number, number, number]: color

2.1.3 hsl

["hsl", number, number, number]: color

2.1.4 hsla

["hsla", number, number, number, number]: color

2.1.5 to-rgba

["to-rgba", color]: array<number, 4>

2.2 Math 数学计算运算符

2.2.1 +, -, *, /, %, ^

["+", number, number, ...]: number
["-", number, number]: number
["-", number]: number
["*", number, number, ...]: number
["/", number, number]: number
["%", number, number]: number
["^", number, number]: number

2.2.2 abs, ceil, floor, round

["abs", number]: number
["ceil", number]: number
["floor", number]: number
["round", number]: number

2.2.3 sin, cos, tan, asin, acos, atan

["sin", number]: number
["cos", number]: number
["tan", number]: number
["asin", number]: number
["acos", number]: number
["atan", number]: number

2.2.4 e, ln, ln2, log10, log2, pi

["e"]: number
["ln", number]: number
["ln2"]: number
["log10", number]: number
["log2", number]: number
["pi"]: number

2.2.5 max, min

["max", number, number, ...]: number
["min", number, number, ...]: number

2.3 zoom、Heatmap 运算符

["zoom"]: number
["heatmap-density"]: number

三、示例

在这里插入图片描述

这篇关于mapbox-gl 常用Expressions表达式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1121459

相关文章

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

usb接口驱动异常问题常用解决方案

《usb接口驱动异常问题常用解决方案》当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等... usb接口驱动异常怎么办,USB接口驱动异常是常见问题,通常由驱动损坏、系统更新冲突、硬件故障或电源管理设置导致。以下是常用解决

Java中的Lambda表达式及其应用小结

《Java中的Lambda表达式及其应用小结》Java中的Lambda表达式是一项极具创新性的特性,它使得Java代码更加简洁和高效,尤其是在集合操作和并行处理方面,:本文主要介绍Java中的La... 目录前言1. 什么是Lambda表达式?2. Lambda表达式的基本语法例子1:最简单的Lambda表

Spring Boot 集成 Quartz并使用Cron 表达式实现定时任务

《SpringBoot集成Quartz并使用Cron表达式实现定时任务》本篇文章介绍了如何在SpringBoot中集成Quartz进行定时任务调度,并通过Cron表达式控制任务... 目录前言1. 添加 Quartz 依赖2. 创建 Quartz 任务3. 配置 Quartz 任务调度4. 启动 Sprin

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

Java常用注解扩展对比举例详解

《Java常用注解扩展对比举例详解》:本文主要介绍Java常用注解扩展对比的相关资料,提供了丰富的代码示例,并总结了最佳实践建议,帮助开发者更好地理解和应用这些注解,需要的朋友可以参考下... 目录一、@Controller 与 @RestController 对比二、使用 @Data 与 不使用 @Dat

Mysql中深分页的五种常用方法整理

《Mysql中深分页的五种常用方法整理》在数据量非常大的情况下,深分页查询则变得很常见,这篇文章为大家整理了5个常用的方法,文中的示例代码讲解详细,大家可以根据自己的需求进行选择... 目录方案一:延迟关联 (Deferred Join)方案二:有序唯一键分页 (Cursor-based Paginatio